46 Commits

Author SHA1 Message Date
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
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
d708144dca Add compute shader support 2024-09-10 13:05:27 +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
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
f21bc2245a Try interleaved vertex attributes 2024-07-26 11:53:29 +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
b4a2b1d728 Alpha blending! 2024-03-14 19:20:26 +04:00
78eebc1e17 Broken frustum culling 2024-03-04 04:49:04 +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
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
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
03c1d181e1 Fix texture compression bug, remove basisu 2024-02-16 04:07:38 +04:00
4b4ff4e176 Cleanup, start replacing basisu with ispc texture compressor
ISPC texcomp is so, so much faster and supports bc6 (hdr) as well as bc5 and others down to bc1.
2024-02-16 03:30:02 +04:00
c20834dbce Refactor renderer into separate file 2024-02-15 21:44:58 +04:00
9c441c067a Fancy bunny texture, use color if texture is not bound 2024-02-15 16:56:50 +04:00
406c40280c Working mipmaps 2024-02-15 16:38:16 +04:00
d3f0664da6 Almost working compressed textures 2024-02-15 04:23:18 +04:00
ad3210a08f Add basisu texture compressor to assetc, improve build process for asset manifest, should cache faster now 2024-02-13 03:19:10 +04:00
d21d128633 Got uvs 2024-02-12 19:39:14 +04:00
9277c010c8 Unified shaders, now vertex and fragment live in the same file 2024-02-12 17:58:50 +04:00
a837984d55 Rewrite how all assets are loaded to make it easier to use 2024-02-09 01:34:33 +04:00
0a1d17cf9c Mesh loading and rendering 2024-02-07 02:28:43 +04:00