8cf7df0a90
Start using reverse z and row major matrices, yay
2024-12-08 21:58:58 +04:00
63171f468d
Fix build
2024-12-08 21:43:20 +04:00
2a226d8707
Use named binding constant
2024-12-08 21:42:11 +04:00
4fd797c048
Slowly building out the rendering framework
...
- Ditch VMA for per frame data
- Add basic global descriptor set and all the boilerplate to manage that
- Add global uniform buffer that only has camera matrices right now
- Implement a per frame GPU memory arena, one large buffer that wraps around holding data for all frames in flight
- Get free look camera working again
2024-12-08 21:39:09 +04:00
4b6b859f40
Pass uniform buffer via push constants, yay
2024-12-05 02:40:12 +04:00
3cab3f7946
Start adding VMA
2024-12-04 23:39:05 +04:00
c77c00cfe1
Add sync abstraction to automate memory barriers
2024-09-29 14:59:38 +04:00
fe69fa1f51
Vulkan TRIANGLE!!!
2024-09-25 10:59:06 +04:00
f0c9e04887
Proper depfile handling
2024-09-23 00:11:57 +04:00
2373a47340
Shader compilation to spir-v
2024-09-22 23:31:22 +04:00
52cdbef876
Hardcore Vulkan migration began
2024-09-21 21:09:17 +04:00
d708144dca
Add compute shader support
2024-09-10 13:05:27 +04:00
743e3293bd
Use variance shadow maps, tweak CSM splits
2024-09-08 22:16:12 +04:00
e122804766
Allow passing shader defines when resolving shader programs
2024-09-01 12:27:39 +04:00
9226b61988
Add shader preprocessor with #include support and refactor shaders to remove a bunch of duplicates
2024-09-01 11:40:25 +04:00
8e9cb3fa5b
Start implementing alpha mask instead of alpha blend for everything,
...
add debug bounds rendering
2024-08-24 23:26:01 +04:00
8031b77c8a
Bring back translucent rendering, try to optimize shaders, try figuring out which materials are masked
2024-08-24 17:25:07 +04:00
637ad85979
Async asset watch
2024-08-24 17:23:55 +04:00
bf4f6a5fc2
Fix PBR equations, add fake IBL
2024-08-03 17:41:53 +04:00
37f603dc8a
Use radix sort for sorting draw commands, add ambient light, tweak lighting
2024-08-03 09:44:09 +04:00
9a6ba0dc7f
Add readme
2024-07-28 20:34:06 +04:00
b4c3bcba94
Add tracy profiler, use multi draw indirect for shadows, use Bistro scene
2024-07-28 16:39:46 +04:00
551f92c64e
Bring back textures, add sorting by mesh
2024-07-27 21:05:50 +04:00
6a0d8348f1
Revert "Try interleaved vertex attributes" it's slower :(
...
This reverts commit f21bc2245a9629981ce9719c3c500c8614da83fa.
2024-07-26 17:04:01 +04:00
b0163b1f6b
Try to optimize for many draw calls
2024-07-26 17:03:35 +04:00
f21bc2245a
Try interleaved vertex attributes
2024-07-26 11:53:29 +04:00
3daad6b31b
Add z prepass, huge mesh shader lighting optimization (2ms vs 0.2ms)
2024-07-24 12:34:37 +04:00
c27e1cecc3
Proper multi draw indirect for all meshes!
...
Also refactoring for SSBO to more easily create them
2024-07-21 19:48:54 +04:00
a39fdad1a0
Remove unnecessary special case in BuddyAllocator.free
2024-07-20 17:53:11 +04:00
2c385c7656
Implement buddy allocator to be able to use a single buffer for all geometry on GPU
...
This will allow me to draw everything in a single CPU draw call
2024-07-20 17:50:25 +04:00
23f5c6836a
Zig 0.13.0 update
2024-07-13 20:05:53 +04:00
8033d99423
Start fixing 0.13 build
2024-07-13 11:56:31 +04:00
f92283d152
Start using SSBOs for lights
2024-03-15 18:35:09 +04:00
a41e4b64d3
Fix direct shadow shimmering when view is changed
...
- Use bounding sphere of frustum instead of bbox
- Snap directional light projection offset to texels
2024-03-15 04:44:23 +04:00
b4a2b1d728
Alpha blending!
2024-03-14 19:20:26 +04:00
a865ea4ab7
Use bounding sphere instead of AABB to calculate projection matrix for CSM split
...
This reduces flickering somewhat because shadow map resolution doesn't change so much
2024-03-12 17:05:11 +04:00
7600db3dca
Tweak cascades more
2024-03-12 16:36:05 +04:00
acbaec8e1d
Cascaded shadow maps working!
2024-03-12 16:33:24 +04:00
5748f3b27e
Slightly broken CSM, need to figure out how to choose correct split in shader
2024-03-12 02:32:29 +04:00
bb8b29263f
Use view frustum to calculate directional light projection, add a bunch of debug stuff for frustums
2024-03-11 19:57:25 +04:00
6b4fe69505
Refactor lights
2024-03-09 21:22:42 +04:00
f1123a1e15
BLOOM!
2024-03-05 19:29:27 +04:00
76603cbb3b
More complex ACES
2024-03-05 03:18:46 +04:00
a2c5366b29
Move gamma correction into post processing
2024-03-05 02:20:56 +04:00
0b6d8c392a
Basic post processing (spooky)
2024-03-05 02:19:17 +04:00
1504c9c2e6
Fix dir_light shadow acne
2024-03-05 00:07:37 +04:00
2e8ae535a8
Switch to using [0, 1] depth in NDC like DirectX and Vulkan
2024-03-04 22:39:57 +04:00
83b9d64235
Add shadowmap frustum culling. Fix too large shadow bias
2024-03-04 16:10:15 +04:00
1633957d07
Correct frustum culling, finally!
2024-03-04 15:51:23 +04:00
78eebc1e17
Broken frustum culling
2024-03-04 04:49:04 +04:00