Commit Graph

29 Commits

Author SHA1 Message Date
Turánszki János f3687dbf4e DX11 removal, Surfel GI
version 0.57.0:
- DX11 removed, DX12 is default now on Windows
- graphics interfaces improved:
	- Bindless descriptor support is now assumed
	- GPU Buffers with USAGE_UPLOAD and USAGE_READBACK will be persistently mapped after creation
	- Removed Map/Unmap
	- added BindDynamicConstantBuffer helper function
	- improved AllocateGPU helper function
	- GPU Queries resolving can be done directly into GPUBuffer
	- UpdateBuffer now doesn't synchronize internally, this allows batching updates
	- removed support for bindless constant buffers (uniform buffers)
	- BindConstantBuffer will accept offset
	- RESOURCE_STATES refactor, they can be combined now in the barriers
	- many other refactors
- gbuffer normals removed, implemented visibility buffer
- bindless decals, bindless lightmaps, bindless hair particles, bindless software path tracing
- hair particles path tracing support
- path tracing eye adaption supported
- Surfel GI (experimental)
2021-09-05 18:59:03 +02:00
Turánszki János f1ced24f05 Multi swapchain support (#257)
* multi swapchain draft

* uwp fix

* swapchain resize handling

* swapchain buffercount

* vsync toggle

* tests fix

* update

* everything removed from graphicsdevice regarding global screen params, engine refactor

* added GetSwapChainTexture() function to graphics device; screenshot() now requires swapChain

* linux fix: vulkan device needs window handle for instance creation

* refactor

* removed unused includes

* shader refactor and lensflare fix

* swapchain clearcolor and other refactors

* vulkan: no vector allocation in submit

* tests fix

* refactors

* lens flare canvas size fix

* gui refactor for canvas support

* refactors

* removed global canvas state

* msaa fix

* fixes

* refactor to minimize interface changes

* gui changes

* checkbox fix

* gui fixes

* fixes

* input system will accept window handle

* editor fixes

* refactor and removed resolution related system events

* small editor update

* refactor: renderpath inherits from canvas

* fixed tests duh

* image refactor

* image fix

* removed every using namespace std

* pushconstant fix

* editor: object picking only when necessary

* removed include

* dx12: copy fence waiting performed on CPU

* dx12 copyallocator update

* vulkan: copy allocator with timeline semaphores

* missing include

* dx12 copy allocator update

* refactor

* editor update

* vulkan copy allocator fix

* dx12 update

* vulkan, dx12 fixes

* version bump

* vsync event helper

* documentation update

* updated vulkan, dx12, dxc
2021-04-22 11:36:22 +02:00
Turanszki Janos d2ae9d7e66 updated lightmap and decal packing systems 2021-04-10 20:03:02 +02:00
Turánszki János 933080a2e4 Unified Shader Compiler (#250) 2021-03-21 18:54:04 +01:00
Turánszki János 1be19b50d7 Bindless Descriptors (#244)
* bindless descriptors implementation base

* push constants

* dx11 tonemap fix

* stressing bindless descriptors

* lots of fixes

* remove some stuff and cmake update

* cmake update

* performance optimization for scene buffer updating

* documentation and shader compiler updates

* general updates improving scene gpu data updating

* softbody gpu updating improvement

* readme update: gpu based validation

* dx12: omit IA from root when there is no input layout

* vulkan: bindless sampler fix

* vulkan critical fix and renderer update

* dx12 refactor

* fixed BLAS updates and vulkan rt hangs

* object setcastshadow fix

* vulkan raytracing fixes

* vulkan fix

* object shader fix

* documentation update

* rewritten constant buffer arrays as arrays of byte address buffers

* raytraced reflection env probe

* occlusion culling using push constants

* bindless vertex fetch

* fixes
2021-03-08 00:33:40 +01:00
Turanszki Janos 783c824139 resource manager upgrade: embedded resources support 2021-03-01 00:37:55 +01:00
Turanszki Janos 3c3cfe9e9b editor paint tool: pressure sensitivity 2021-02-26 01:08:33 +01:00
Turanszki Janos 9b4a8870ac file system refactor 2021-02-25 21:52:41 +01:00
Turanszki Janos 074f89094c dx12, vulkan: improved gpu barrier batching 2021-02-06 01:37:10 +01:00
Turanszki Janos 3be76495b4 big material texture slot refactor 2021-02-02 22:07:47 +01:00
Turánszki János 5efe28fdf9 0.51.0 (#200)
* large renderer state refactor;
added subsurface scattering energy conservation;
added emitted particle subsurface scattering;
removed area lights;
optimizations;

* added layerMask support in shaders

* fixed incorrect shadow priority for directional light;
fix point light shadow disconnect;

* fix incorrect shadow assignment
2020-12-07 01:32:44 +01:00
Turanszki Janos 571f435253 refactor 2020-11-04 16:02:23 +01:00
Turánszki János 180ddc3586 0.49 (#160)
* renderer updates: material shadertype, customshaders

* custom shader updates

* hologram fix

* editor windows refactor

* major gui update:
- gui no longer lifetime manager
- window no longer needs gui to construct
- removed gui constructors/destructors
- rewritten every editor window

* renderer update

* gui hasfocus fix

* editor fix

* renderpath upgrades: hybrid forward-deferred

* fix

* water ripple refactor

* cmake fix

* cmake fix

* renderer fix

* volumetric light fix

* customshader stencilref

* cmake fix

* rtdeferred fix

* editor update

* raytraced shadows denoise

* anisotropic shader

* sss stencil greater

* added cartoon shader

* using precomputed tangents

* added unlit object shader

* importer update

* editor update

* editor fix

* vulkan envmap rendering fix

* terrain shader simplification (normal texture mapping instead of triplanar)

* added subsurface profiles, reduced gbuffer

* denoise disocclusion fallback

* editor fix

* more sorting priority for blend than instancing

* hairparticle culling

* particle updates; font update instancing instead of index buffer; vulkan/dx12 fixes;

* shader fixes

* hairparticle trianglestrip and no cross section

* editor fix

* cam wnd update

* terrain shader fix
2020-10-17 13:17:07 +02:00
Matteo De Carlo 3cd9e77889 WIP: Initial linux support using SDL (#136)
* Initial linux support using SDL

* fixed link error and gitignore

* fix in working directory initialization (windows side)

* Added README_Linux and fixed a few compilation issues in ubuntu

* Rename main to main_Windows in Tests

* Better default renderering backend selector

* Added backlog terminal output on linux

* added asserts on all missing vulkan function call results

* added portable file dialogs

also small tests update and cleanup

* Added Editor compile target

* linux ci

* linux ci

* cmake update

* cmake update?

* cmake

* Editor_Windows fix

* build test

* make

* build tools?

* update

* ubuntu 20.04

* fix?

* cmake

* build

* build?

* package linux build

* updates, bump version

* backslash to forward slash, eof newlines, add portable-file-dialogs license

* xcopy needs backslash duh; update readme;

* copy fix

* updated readme

* readme update

* updated readme

* updated readme

* fix incorrect file encoding linux

* paint tool fix

* linux: add missing shaders

* packaging update

Co-authored-by: Turánszki János <turanszkij@users.noreply.github.com>
Co-authored-by: Turanszki Janos <turanszkij@gmail.com>
2020-10-05 00:03:22 +02:00
Turanszki Janos d3b18bc504 gui updates, editor window refactors 2020-10-04 14:24:22 +02:00
Turanszki Janos c369032663 added support for clang compiler 2020-06-13 01:23:17 +01:00
Turánszki János 4a11d6a202 Dpi awareness (#109)
* dpi awareness test

* dpi scaling updates

* dpi scaling updates

* missing mouse inputs fix (I hope finally)

* finishing up the dpi branch...
2020-05-05 00:04:38 +01:00
Turanszki Janos 0330686381 capsule collision and third person character script updates 2020-04-22 23:11:53 +01:00
turanszkij ed0b3fed07 resurrected mesh wind; added wind paint tool; 2020-04-11 12:35:53 +01:00
turanszkij fb0d3c2f20 terrain and sculpt tool update #104 2020-04-07 00:07:27 +01:00
turanszkij 8cc52a171e paint tool: sculpt mode update 2020-04-05 13:51:45 +01:00
turanszkij 3db0a7e6ca paint tool: texture paint mode update 2020-03-30 22:52:24 +01:00
turanszkij e746956c64 paint tool: added texture paint mode 2020-03-29 20:43:32 +01:00
turanszkij a261dbbcda editor - paint tool updates #94; mesh updates; 2020-03-28 23:28:51 +00:00
turanszkij 364e088dd7 editor: paint tool - undo/redo #94 2020-03-28 21:59:24 +00:00
turanszkij 60ace5c871 editor: paint tool - brush spacing 2020-03-28 14:58:52 +00:00
turanszkij c1471f6bac editor: paint tool - added sculpt mode #94; font renderer word wrap; other updates; 2020-03-27 21:22:01 +00:00
turanszkij 730fcd0587 editor: paint tool - vertexpaint, hairlength #94; hairparticle update; 2020-03-26 22:43:20 +00:00
turanszkij 8b059485fe editor: paint tool (softbody, hairparticle) #94;
editor: undo fix with rotation, scale operations;
debug draw updates;
2020-03-26 00:45:12 +00:00