Keep the runtime's shaders in the repository as source only, and compile them when the game is built.

The fifteen headers of SPIR-V words under runtime/ are no longer tracked. tools/build_shaders.py builds all of them:
the GLSL with glslc, the SPIR-V assembly with spirv-as, and the two shaders assembled in Python from their scripts.
build_game.py builds the missing and the stale ones before it compiles the runtime, and the build kit, the launcher
release and the AppImage build them before they copy runtime/, so a player's PC still needs no shader compiler.
git ignores the headers and check_content.py refuses a compiled shader in a commit. The headers built this way are
byte for byte the ones removed here. vk_mvobj_fs.h is now mvobj_fs_spv.h, named like the others.

Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com>
This commit is contained in:
chrg6
2026-11-10 01:53:41 -05:00
parent 202fc247d0
commit d15d4e2fbd
29 changed files with 176 additions and 6193 deletions

5
.gitignore vendored
View File

@@ -35,6 +35,11 @@ __pycache__/
*.bnsh
*.webm
# The runtime's own shaders compiled to SPIR-V (tools/build_shaders.py builds them from runtime/shaders/ and the
# tools/make_*.py assemblers when the game is built; tools/check_content.py refuses them in a commit)
/runtime/*_spv.h
*.spv
# Build outputs
*.exe
*.dll