- Add test_23_bgfx_sprites_visual.cpp: full visual test with SDL2 + IIO
- Fix IRHIDevice::init() to accept nativeDisplayHandle for X11/Linux
- Fix BgfxDevice::createBuffer() with proper VertexLayout for dynamic buffers
- Use double for native handle config values (preserves 64-bit pointers)
- Add debug logging in BgfxRendererModule initialization
Pipeline verified working:
- Module loads and initializes with Vulkan
- IIO messages routed correctly (sprites, camera, clear)
- SceneCollector collects and builds FramePacket
- RenderGraph executes passes
- ~500 FPS throughput
Note: Sprites not visually rendered yet (shader needs instancing support)
This will be addressed in a future phase.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add complete BgfxRenderer module structure (24 files)
- RHI abstraction layer (no bgfx:: exposed outside BgfxDevice.cpp)
- Frame system with lock-free allocator
- RenderGraph with ClearPass, SpritePass, DebugPass
- SceneCollector for IIO message parsing (render:* topics)
- ResourceCache with thread-safe texture/shader caching
- Full IModule integration (config via IDataNode, comm via IIO)
- CMake with FetchContent for bgfx
- Windows build script (build_renderer.bat)
- Documentation (README.md, USER_GUIDE.md, PLAN_BGFX_RENDERER.md)
- Updated .gitignore for Windows builds
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>