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
0bd5985d07
Fix rotation, improve shadow bias
2024-03-03 00:21:11 +04:00
95d30aacda
Point light shadow maps with filtering, improve bias with normal offset
2024-03-02 23:23:46 +04:00
daf85fc614
Proper (but unoptimized) PCF
2024-03-02 17:32:36 +04:00
73501f7991
Basic directional shadow map
2024-03-02 15:41:49 +04:00
aec4a4a882
Ignore case when checking texture naming convention
2024-02-28 17:26:14 +04:00
8fa5c63039
Load external textures for scenes
2024-02-28 17:16:44 +04:00
7b15f55173
Support odd sized textures, fix segfault in AssetManager
2024-02-28 16:43:44 +04:00
35ff95e694
Make it easier to define materials in code
2024-02-28 00:34:40 +04:00
eebc26e7fb
Load normal maps
2024-02-27 21:13:26 +04:00
d33d6b2454
Load gltf with embedded albedo, metallic and roughness maps
2024-02-27 00:01:58 +04:00
2067a133f8
Extract textures from assimp too!
2024-02-26 04:27:58 +04:00
e0e951c46b
Loading of complex scene graphs is now working well!
...
Managed to load a huge glb file, not included in commit cause I don't want to use
lots of storage in git lfs
2024-02-25 03:32:53 +04:00
892c2c643a
Add GL debug logging (didn't help though), turns out my fences were in the wrong place, whoops
2024-02-25 00:32:04 +04:00
5f426c61de
First scene loaded, discovered an issue with ubo's, weird stuff in fullscreen
2024-02-24 23:57:31 +04:00
96449b65d7
Remove some unused code, unify how files are output from assetc
2024-02-24 16:34:34 +04:00
59ccd86a5d
Basic scene graph with inherited transforms
2024-02-23 22:04:46 +04:00
756f4fa6f9
Simplify build.zig, support installing multiple asset outputs
2024-02-23 21:27:08 +04:00
672bce7fe6
Revamp asset build process, split asset manifest generation into own step
...
This is a framework for outputting arbitrary number of cooked assets from a single
source asset. For example multiple meshes, textures, animations, etc. from a single gltf file.
2024-02-22 23:50:54 +04:00
e32387ca72
PBR!!!
2024-02-21 05:25:33 +04:00
73733776d8
Do lighting calculations in view space
2024-02-21 02:58:53 +04:00
1c5b0357a8
Fix mipmap gen for normal maps
2024-02-19 08:18:12 +04:00
8f40efc6a2
Working normal maps!
2024-02-19 08:05:00 +04:00
6e75910bef
Add tangents
2024-02-19 04:12:19 +04:00
e764879f17
Fix incorrect double srgb conversion (stb already handles srgb->linear conversion)
2024-02-19 00:48:30 +04:00
d3370cc559
Custom mipmap gen, output linear textures from assetc
2024-02-19 00:38:04 +04:00