26 Commits

Author SHA1 Message Date
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
9226b61988 Add shader preprocessor with #include support and refactor shaders to remove a bunch of duplicates 2024-09-01 11:40:25 +04:00
b4c3bcba94 Add tracy profiler, use multi draw indirect for shadows, use Bistro scene 2024-07-28 16:39:46 +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
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
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
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
9c441c067a Fancy bunny texture, use color if texture is not bound 2024-02-15 16:56:50 +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
9277c010c8 Unified shaders, now vertex and fragment live in the same file 2024-02-12 17:58:50 +04:00
b749d43415 Multiple meshes + 1 point light
almost went crazy debuggging issue with multiple UBOs block bindings :)))))

Turns out if you specify layout(binding=X) in shader and later call glUniformBlockBinding (cause you don't know what you're doing)
it will mess up all your bindings, and your camera UBO will be fed to a lights array ubo and good luck debugging that.
2024-02-12 03:56:36 +04:00
a4d78d36f6 Replace zlm with zalgebra, fix culling to be backface 2024-02-11 02:50:51 +04:00
9f60d48ae2 Add basic camera controls, try to fix terrible lag 2024-02-10 01:05:25 +04:00
a837984d55 Rewrite how all assets are loaded to make it easier to use 2024-02-09 01:34:33 +04:00
d91484e992 Redo how assets are loaded, remove explicit load/unload calls
This will make code simpler because game code will never explicitly
unload assets or retain runtime asset handles!
2024-02-08 21:48:18 +04:00
0a1d17cf9c Mesh loading and rendering 2024-02-07 02:28:43 +04:00
9945fa5b40 Remove glad, fix windows build, finally a good base 2024-02-03 04:27:10 +04:00
8d397f3941
Initial commit 2024-01-30 16:46:50 +04:00