DEV Community

Cover image for 🎨 Dynamic Texture Loading in NervForge: Async Promises in C++/WASM
The Lone Engineer
The Lone Engineer

Posted on

🎨 Dynamic Texture Loading in NervForge: Async Promises in C++/WASM

New short devlog on a neat quality-of-life improvement: textures in NervForge are now loaded on demand from a remote manifest, with a promise-based async system handling the download and material update.

Note: You can try NervForge directly in your browser: https://nervtech.org/nervforge/

The core idea: instead of bundling all textures upfront, a resource manifest lists available remote files. Selecting a new texture triggers an async download, shows a checkerboard placeholder in the meantime, then swaps in the real texture once ready — and caches it locally for future sessions.

What's covered:

  • Resource manifest pattern for remote asset discovery
  • Promise-based async texture creation API (in NervSDK)
  • Main-thread callback chaining for safe material updates
  • Local caching strategy to avoid redundant downloads
  • Bonus: horizon-level black artifact fix on planet rendering

The promise system itself is open source in NervSDK — worth a look if you need lightweight async task handling in a C++/WASM context.

You can check the full DevLog at: https://wiki.nervtech.org/doku.php?id=blog:2026:0330_nvl_dyn_texture_loading

Top comments (0)