-
-
Notifications
You must be signed in to change notification settings - Fork 380
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Debug Tooling, Worldview Refactor #4941
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
CC @Gliese852 as this changes a few sectorview things and I'd like his feedback and go/no-go on it! |
- Body::GetTargetIndicatorPosition now returns local-space coordinates - CameraContext has a getter for parent frame, renamed GetCamFrame to GetTempFrame, added GetCameraOrient/Position - Implemented matrix4x4 utilities to construct from orient+pos, fast inverse transform for position vectors - Fixed bug where mouse would be locked if held while docking - Preliminary work on ShipViewController, made WorldView::shipView an unique_ptr (why didn't I do it that way in the first place?) - Cleaned up some cruft from WorldView and moved to appropriate locations - Completely changed the way WorldSpaceToScreenSpace etc. works, now no longer requires camera frame - Added WorldView::RelSpaceToScreenSpace, meant for pigui to use for displaying e.g. body:GetPositionRelTo(player) - WorldSpaceToScreenSpace now operates on frame-relative coordinates, use RelSpaceToScreenSpace for player-relative coordinates
- Move some less-used signals to PlayerShipController rather than Pi - Remove WorldView's dependency on newUI - Remove unused signal connections in WorldView
- Moved playing the 'target selected' sound to PiGui instead of C++ - Removed several unused functions/methods from SectorView - Removed the WorldView method handler previously responsible for playing the target selected sound - Better documentation and behavior for pigui.playSfx
Builds and runs with MSVC (both the solution and cmake). Didn't do any actual testing other than seeing it run... |
@Web-eWorks go on it! (regarding maps) |
Refactor DebugShipSpawn to fill the ctrl+F12 spawner tool, merge with PerfInfo window Add extension points to the PerfInfo window for lua to render in Expose a few more ImGui functions to lua Remove unnecessary INIT->init redirection function in pigui handlers
Removed the matrix4x4 changes as they need some more time to cook, but otherwise merging this now! |
3 tasks
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Most of this is described in #4908, but the bits that aren't are as follows:
Matrix4x4 refactor
This one's a bit painful, it refactors matrix construction and adds a "shortcut" symmetric projection matrix function for future work on Screen::Project. However, due to the way it's written, I had to link instd::array
to get "easy" initializer list construction with automatic double conversion.Struck this, going to rethink the implementation a bit.
Debug Tooling Improvements v2
Added extension points to the PerfInfo window, making it a general debug tool interface. Refactored the debug ship spawner to replace the old hardcoded CTRL+F12 spawner (incidentally, only CTRL+F12 works now, the rest of the F12 shortcuts are deprecated in lieu of a much easier to use interface).
Also added a Reload Shaders button to the renderer debug info to complement the F11 shortcut.
Will be merging this soon, as it's blocking on getting #4938 merged in. Would appreciate a quick sanity check review (especially from the Windows side of things, CC @The-EG @fluffyfreak ) to ensure I haven't fouled up MSVC's special heart for STL bugs.