vr_build_020 #13
remileonard
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
What's Changed
This pull request introduces significant improvements to the build system, asset management, and script parsing for the project. The most important changes are grouped below by theme.
Build System & Testing Enhancements:
Added Google Test support and enabled unit testing in the CMakeLists.txt, making it easier to write and run C++ tests.
Included the tests directory in the build, integrating unit tests into the project structure.
Updated the project version and added a new executable target (vrstrike) to the build (CMakeLists.txt). [1] [2]
Features:
Added pacific strike mission, objects, and gameplay functions.
Added Wings of glory objects loading
Added Strike Commander MidGames parser and playing to GamePlay
VR support
add new VRScreen to use OpenXR for VR rendering on compatible helmet.
Camera and Rendering Enhancements (VR/Custom Matrices):
Added support for custom projection and view matrices in the Camera class, enabling direct matrix injection (useful for VR and advanced rendering scenarios). This includes new methods for setting, clearing, and querying custom matrices, and logic to use them when enabled (src/engine/Camera.h, src/engine/Camera.cpp). [1] [2] [3] [4]
Extended RSScreen with virtual methods and structures for optional VR stereo rendering, and refactored window/context management to use member variables instead of statics (src/engine/RSScreen.h, src/engine/RSScreen.cpp). [1] [2] [3] [4] [5]
Added a new drawModel overload in SCRenderer that accepts a scale parameter, improving flexibility for model rendering (src/engine/SCRenderer.cpp, src/engine/SCRenderer.h). [1] [2]
Refactored renderer viewport binding logic to support custom viewport sizes, with a helper for the default window-sized viewport (src/engine/SCRenderer.cpp). [1] [2]
Input Handling Improvements:
Added a new RADAR_MODE_TOGGLE action to the input system, with corresponding bindings for keyboard and mouse, improving control mapping flexibility (src/engine/GameEngine.h, src/engine/GameEngine.cpp). [1] [2] [3]
Math/Utility Improvements:
Made several Vector3D operators const-correct, allowing usage with const objects and improving code safety (src/commons/Matrix.h).
Loader and UI Improvements:
Improved loading screen visuals by using RGBA color fills and corrected font asset pathing. Also made minor thread and initialization fixes in the loader (src/engine/Loader.cpp). [1] [2] [3] [4] [5] [6] [7]
Included RSScreen.h in the loader header for improved encapsulation (src/engine/Loader.h).
Other Minor Fixes:
Minor code organization and bugfixes, including static-to-member refactoring in RSScreen, and a fix for the SCMouse class member ordering (src/engine/SCMouse.h). [1] [2]
This discussion was created from the release vr_build_020.
Beta Was this translation helpful? Give feedback.
All reactions