No description
- Add WindowsPlatformApp and INativeWindowProvider for Win32 window creation - Add PlatformAppFactory for platform-specific app instantiation - Implement BgfxRenderer2D with native library probing and fallback logic - Update Game.Sample2D to use dynamic platform/renderer selection - Update documentation reflecting Milestone A progress |
||
|---|---|---|
| docs | ||
| src | ||
| .gitignore | ||
| Bgfx2DLearning.slnx | ||
| bgfx_2d_boundary_contract.md | ||
| bgfx_2d_learning_plan.md | ||
| README.md | ||
bgfx C# 2D Learning Workspace
This repo is organized to keep gameplay renderer-agnostic while learning graphics internals with bgfx.
Key docs
bgfx_2d_learning_plan.mdbgfx_2d_boundary_contract.mddocs/milestone_a_checklist.mddocs/platform-notes.md
Starter layout
src/Engine.Coresrc/Engine.Platformsrc/Engine.Rendering2Dsrc/Engine.Assetssrc/Game.Sample2D
Current status
.slnxand project scaffolding are in place.- Headless platform + null renderer loop is running for boundary validation.
- Windows adapter (
WindowsPlatformApp) is implemented with native window/message pump. BgfxRenderer2Dnow probes and loads bgfx shared libraries, then falls back to null renderer when unavailable.- Milestone A now focuses on validating Windows runtime path and wiring actual bgfx init/clear/shutdown calls.
Immediate next steps
- Implement first real OS platform adapter (Windows recommended).
- Integrate bgfx init/clear/shutdown behind
IRenderer2D. - Keep gameplay and engine-core contracts unchanged while adapters evolve.