Commit Graph

2908 Commits

Author SHA1 Message Date
Matteo De Carlo d38aa343e1 Added runtime shader compiler on linux (#339)
* Added runtime shader compiler on linux

* dxcapi path fix

* linux: shaderdump generation on github CI

* linux: worker thread shutdown fix

* thread safety in worker shutdown

* cmake fix?

Co-authored-by: Turánszki János <turanszkij@users.noreply.github.com>
2021-11-05 12:17:41 +01:00
Matteo De Carlo 571ac00bc0 Added compilation framework for IMGUI example on linux (#340) 2021-11-05 09:30:24 +01:00
Amer Koleci f275f4690b Examples: Initial ImGui 1.85 integration example. (#338)
* Examples: Initial ImGui 1.85 integration example.

* Attempt to load and compile shaders.

* ImGUI integration done with some workarounds.

* ImGUI integration: Cleanup example.

* refactor tests->example_imgui

Co-authored-by: Turánszki János <turanszkij@users.noreply.github.com>
2021-11-04 10:09:20 +01:00
Turánszki János e018935689 linux: added missing stringconvert functions 2021-11-03 17:40:23 +01:00
Megumumpkin 33abffa936 Linux Network Implementation (#337)
* Linux Network Implementation

* Linux Network - Faster IP Address Conversion
2021-11-03 11:20:30 +01:00
Turánszki János a7043c1a14 dx12, vulkan minor refactor 2021-10-21 16:19:35 +02:00
Turánszki János b0f9f6123b vulkan: add missing structure type 2021-10-21 09:51:48 +02:00
Turánszki János e427e733b2 vulkan: depth clip extension is no longer required 2021-10-21 00:06:27 +02:00
Turánszki János d043565a16 vulkan: extension fixes 2021-10-20 19:24:44 +02:00
Turánszki János caa981786c vulkan: fix CPU performance issue with UPLOAD type buffer 2021-10-15 17:36:01 +02:00
Turánszki János a74950dde1 dx12, vulkan fixes 2021-10-13 00:19:11 +02:00
Turánszki János 52ebc197f6 dx12, vulkan: viewport and scissor count fixes 2021-10-12 16:42:54 +02:00
Turánszki János 9a970cde4a fixes for AMD GPU #331 2021-10-12 15:44:20 +02:00
Amer Koleci b1631ae717 D3D12 improvements (#335)
* ThirdParty: Update DirectX headers and D3D12MA.

* D3D12: Replace feature detection with new CD3DX12FeatureSupport.

* D3D12: Handle tearing in correct way, can be used when vertical sync is disabled, non fullscreen and tearing is supported.
2021-10-12 11:56:49 +02:00
Turánszki János be8a947d7c vulkan: pipeline cache object will be recreated on shader reload 2021-10-11 17:27:44 +02:00
Amer Koleci 8b4cb875c7 Vulkan Pipeline Cache (#332)
* Vulkan: Implement pipeline cache support, verifies and loads cache validation.

* wiHelper: Add GetTempDirectoryPath and use it in vulkan cache lookup.
2021-10-11 16:43:04 +02:00
Turánszki János 93704a3f72 raytraced reflections: emissive fix for anyhit shader 2021-10-11 12:58:30 +02:00
Turánszki János ad47786fc9 path tracing: better handling of alpha test 2021-10-11 12:07:28 +02:00
Turánszki János e3611fba20 font renderer: use premultiplied alpha blending 2021-10-10 19:10:45 +02:00
Turánszki János d53604792f raytraced reflections, shadow, ao: always using stochastic alphatest in anyhit 2021-10-10 18:27:28 +02:00
Turánszki János 08a7c73047 gui update: slider value input field always fits text 2021-10-10 17:09:59 +02:00
Turánszki János d1cf3d7a11 raytracing: fix backface lighting on non-procedural geometry 2021-10-09 13:26:04 +02:00
Amer Koleci 12cd0f6ac1 Add: wiMath::GetNextPowerOfTwo with uint64_t (#330)
FIX: Vulkan and D3D12 backends to use uint64_t size and offet during BindIndexBuffer.
2021-10-08 14:33:05 +02:00
Turánszki János 4fbc2435de Emitter raytracing (#329)
* emitter rewrite to support raytracing, still has some problems

* added emitters to compute BVH

* sorting only for culled rasterized particles; fixes;

* emitter mesh shader update

* emitter tracing improvements

* particle traces will use simplified lighting model

* don't update particle gpu data when scene update requests are stopped

* path tracing unlit material support

* path tracing unlit material fix

* path tracing: unlit refactor
2021-10-07 17:00:17 +02:00
Turánszki János a211e7dcee vulkan: upload buffer fix 2021-10-06 14:21:45 +02:00
Turánszki János d8ad89257a Bindless RenderPath (#328)
* remove all resource bindings from renderpath, they will be descriptor indices attached to camera CB data

* fix

* big refactor: bindings removal

* minor update renderpath3d

* version bump

* fix

* big refactor: shader weather params

* refactor

* this update will increase minor version number as interface changes were made

* dx12, vulkan fix: dirty pso state was not handled correctly

* moved lot of things to camera CB, refactors

* cameracb padding fix
2021-10-05 13:23:40 +02:00
Turánszki János fcc3c3b3b0 fix: avoid reading from upload buffer memory 2021-10-03 00:22:23 +02:00
Turánszki János b55bbde7bf shader material fixes 2021-10-02 21:00:35 +02:00
Turánszki János 4a4c66fcd7 fixed hair particle system raytracing; other improvements; 2021-10-02 18:49:54 +02:00
Turánszki János cf92006292 updated credits 2021-10-02 15:43:29 +02:00
Turánszki János ffcb5c9a39 shader optimizations with hdr float packing 2021-10-02 13:15:04 +02:00
Turánszki János 93fba8e122 surfel gi: improved ray count management 2021-10-02 01:02:49 +02:00
Turánszki János 1d47dc8a4d surfel gi: recycling based on shortage, and other improvements 2021-10-01 18:39:01 +02:00
Turánszki János 179f3e9c18 vulkan fixes 2021-10-01 13:24:35 +02:00
Turánszki János 0c929078ea Surfel GI Improvements (#324)
* surfel gi: surfel recycle

* updates

* surfel variable ray count

* coverage fix

* updates

* updates

* surfel global ray budget

* revert force diffuse lighting

* refactor

* fix surfel cell limiter

* added missing comments
2021-10-01 12:03:43 +02:00
Megumumpkin 7ee042cc84 SDL Controller Support (#326)
* SDL Controller Fix

* SDL Controller Fix (Compile Fix)
2021-09-30 18:26:42 +02:00
Turánszki János e050a83422 hair particle system fix 2021-09-28 14:18:27 +02:00
Amer Koleci 818dabbac0 - FIX: baseVertexLocation being uint32_t instead of int32_t (#325)
- ENH: Draw/Dispatch indirect args_offset can be uint64_t
- FIX: Vulkan not taking care of BlendState alpha to coverage.
2021-09-28 13:06:19 +02:00
Turánszki János 7b2556d5a2 eye adaption improvements 2021-09-28 00:03:59 +02:00
Amer Koleci 48ec4703a9 Graphics: Add TEXTURE_ADDRESS_MIRROR_ONCE support to Vulkan and D3D12 (#323) 2021-09-27 16:55:00 +02:00
Turánszki János e2e6dd872b tests: added some simple animation to 65k instances demo 2021-09-27 00:01:57 +02:00
Turánszki János 72277468ec dx12: minmax sampler feature check 2021-09-26 19:46:39 +02:00
Turánszki János 9a32cf3674 render queue: distance 16bits, instanceindex 24bits;
loadmodel fix;
2021-09-26 17:08:45 +02:00
Turánszki János a49232392f vulkan: added support for sampler reduction mode 2021-09-26 16:04:55 +02:00
flipdp 9ffbad0970 Added more settings for backlog (#322)
* Added more settings for backlog

Added things like disabling lua execution, setting log levels or completely disabling the backlog

* Update wiBackLog_BindLua.cpp

I wasn't sure if adding an unblock binding for lua execution made sense, but since it should only block lua execution in the backlog and lua scripts probably use the exact same bindings I added it in so you can unblock lua execution with lua scripts.

* Changed function overload to default parameter
2021-09-26 12:44:14 +02:00
Turánszki János 71222ec839 improvements: loadmodel, gltf import, obj import 2021-09-25 00:00:53 +02:00
Turánszki János 6f858d6f6c image renderer fix: corners didn't have enough precision as float16 with some projections 2021-09-24 23:52:37 +02:00
Turánszki János 91b834fb56 occlusion culling refactors 2021-09-24 14:55:22 +02:00
Turánszki János 979ed7138d shadow occlusion culling 2021-09-23 23:47:16 +02:00
Turánszki János f0d6bb7da5 image renderer: more push constant packing 2021-09-23 19:09:30 +02:00