diff options
| author | skal <pascal.massimino@gmail.com> | 2026-03-08 10:13:01 +0100 |
|---|---|---|
| committer | skal <pascal.massimino@gmail.com> | 2026-03-08 10:13:01 +0100 |
| commit | 1438cfe727adc7b6a5d84c76b0878ed77ef254a8 (patch) | |
| tree | a0493499f5281413b57f677979365fc98e96bac0 /src/util | |
| parent | fa7d2d7f3aa40d581ca2ad97e39fe944769ee5a3 (diff) | |
feat: WGSL asset load-from-disk in dev mode
- asset_packer: include WGSL in --disk_load path storage (alongside SPEC/MP3)
- asset_manager: disk-load WGSL assets at runtime when !DEMO_STRIP_ALL
- DemoCodegen: pass ASSET_PACKER_FLAGS to pack_test_assets so test assets
also use disk-load paths in dev mode (fixes pre-existing SPEC/WGSL test failures)
- test_shader_composer: fix stale assertions (fn test_wgsl → fn snippet_a,
correct ordering check)
35/35 tests passing.
handoff(Claude): WGSL disk-loading implemented. Shaders now loaded from disk
in dev mode, enabling hot-reload without rebuild. Tests fixed.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Diffstat (limited to 'src/util')
| -rw-r--r-- | src/util/asset_manager.cc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/util/asset_manager.cc b/src/util/asset_manager.cc index 6cad083..1c02626 100644 --- a/src/util/asset_manager.cc +++ b/src/util/asset_manager.cc @@ -78,7 +78,8 @@ const uint8_t* GetAsset(AssetId asset_id, size_t* out_size) { #if !defined(DEMO_STRIP_ALL) if (source_record.type == AssetType::SPEC || - source_record.type == AssetType::MP3) { + source_record.type == AssetType::MP3 || + source_record.type == AssetType::WGSL) { const char* path = (const char*)source_record.data; FILE* f = fopen(path, "rb"); if (!f) { @@ -224,7 +225,8 @@ void DropAsset(AssetId asset_id, const uint8_t* asset) { #if !defined(DEMO_STRIP_ALL) if (g_asset_cache[index].data == asset && (g_asset_cache[index].type == AssetType::SPEC || - g_asset_cache[index].type == AssetType::MP3)) { + g_asset_cache[index].type == AssetType::MP3 || + g_asset_cache[index].type == AssetType::WGSL)) { delete[] g_asset_cache[index].data; g_asset_cache[index] = {}; } |
