9f3651b122
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com>
2.2 KiB
2.2 KiB
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 and sharedWolfMenuPalettecolor accessors for hosts.wolf_3d_host.dart— host-level glue contracts.
Implementation details live under lib/src/.
Setup
From this directory:
dart pub get
Development Commands
From this directory:
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/andtest/entities/. - Host integration issues: verify host packages/apps are using exported surfaces from
lib/rather than privatesrc/paths.
Related Modules
- Flutter integration layer:
../wolf_3d_flutter/README.md - Shared packaged assets:
../wolf_3d_assets/README.md - CLI host app:
../../apps/wolf_3d_cli/README.md - GUI host app:
../../apps/wolf_3d_gui/README.md - Workspace overview:
../../README.md