# wolf_3d_dart Core non-Flutter Wolfenstein 3D runtime package used by both CLI and Flutter hosts. ## What This Package Provides `wolf_3d_dart` contains the platform-neutral simulation/runtime surface: - engine and session lifecycle, - game-data loading and data types, - renderer backends and frame-buffer abstractions, - menu state/navigation models, - input/audio host abstractions, - entity and gameplay logic. ## Public Library Surfaces Primary entry libraries in `lib/`: - `wolf_3d_engine.dart` — engine exports and runtime contracts. - `wolf_3d_data.dart` / `wolf_3d_data_types.dart` — game-data discovery and DTOs. - `wolf_3d_renderer.dart` — rendering/backends integration points. - `wolf_3d_audio.dart` — audio interfaces and host backends. - `wolf_3d_input.dart` — input abstractions. - `wolf_3d_menu.dart` — menu models/managers. - `wolf_3d_host.dart` — host-level glue contracts. Implementation details live under `lib/src/`. ## Setup From this directory: ```bash dart pub get ``` ## Development Commands From this directory: ```bash dart analyze dart test ``` ## Architecture Notes - Hosts own platform concerns (windowing, lifecycle, platform input wiring). - This package owns deterministic engine/frame progression and shared game logic. - Frame-buffer sizing is controlled by hosts through engine APIs. - Rendering code is maintained under `lib/src/rendering/`. ## Non-Goals - Flutter widgets/screens are not part of this package. - Bundled app assets are handled by `wolf_3d_assets`. ## Troubleshooting - **Parity regressions**: run targeted tests under `test/engine/` and `test/entities/`. - **Host integration issues**: verify host packages/apps are using exported surfaces from `lib/` rather than private `src/` paths. ## Related Modules - Flutter integration layer: [`../wolf_3d_flutter/README.md`](../wolf_3d_flutter/README.md) - Shared packaged assets: [`../wolf_3d_assets/README.md`](../wolf_3d_assets/README.md) - CLI host app: [`../../apps/wolf_3d_cli/README.md`](../../apps/wolf_3d_cli/README.md) - GUI host app: [`../../apps/wolf_3d_gui/README.md`](../../apps/wolf_3d_gui/README.md) - Workspace overview: [`../../README.md`](../../README.md)