Added controller support
For games using the new Unity Input System, you can now use a controller to move the freecam around, pause, and more! Check out the controls in the project's readme!
Added a dropdown to select the controller to control the freecam with. Do keep in mind that, depending on the game, it might read any controller input
Added support for blocking input from the new Unity Input System
The controller support was actually a side effect of the work I have put into blocking input from the new Unity Input System. Please do take into mind that, depending on the implementation a game uses, input might still pass through for some actions.
Added Target Camera dropdown
All of the freecam methods interact with the "main camera" offered by the game. There are times that the game doesn't tag any camera as main, or because of how their rendering pipeline works, the actual camera doing the rendering might not be the one tagged as main. In these cases, we would like to manually select which camera we want our free camera methods to interact with. Therefore, I have added a "Freecam Camera Target Selection" that, when selected (and after the game gets restarted), lets you select the camera you want to target with the freecam methods.
target_camera_select.mp4
This seems to be the last missing bit needed to be able to get a proper freecam with all post-processing effects in basically any game!
Added custom component disabling
Sometimes, there are components that you always disable when entering freecam. It could be a component that is moving the camera, so you need to get rid of it, a shader effect that messes with your screenshots, a UI element that isn't toggled off with our, or the custom character controller solution the game uses, and it's also not disabled by default. Now CUE provides a system to describe all of these components so it can disable them for you every time you enter the freecam. You can find more about it on its proper section in the documentation.
custom_component_disabling.mp4
Changelog:
New
- Added controller support (for games using the new Unity Input System).
- Added support for blocking input from the new Unity Input System.
- Added target camera selection advanced option.
- Added custom component disabling support to disable objects and components when entering freecam.
Fixes and misc
- Made ForcedMatrix the default freecam type.
- Made changing the FOV faster and added a minimum value.
- Added slower camera rotation based on FOV.
- Fixed aspect ratio breaking when hotsampling in ForcedMatrix freecam mode.
- Refactored HDRP camera handling on ForcedMatrix freecam mode.
- Fixed the "Reset Camera transform on freecam disable" option.
- Made the slow-movement hotkey tilt the camera 90 degrees instead, to tilt vertically in case the game doesn't allow vertical ARs.
- Disable orthographic property on freecam by default.
- Added Adjustable ArrowSize (#101 thanks @asd9176506911298!)
- Automatically update the default freecam every time a new freecam type is selected.
- Some refactoring to the freecam panel.
- Made lights in the lights manager panel and effects in the postprocessing effects panel prioritize focusing on already opened inspector tabs when trying to inspect the corresponding object.
- Avoid processing freecam input movement when there is a focused input field.
- Fixed poses not being saved correctly for some .NET versions.
- Enhanced the camera selection logic on the world mouse inspector. Also fixed the camera coordinates not being displayed properly.
- Added an ExplorerCore log call warning when trying to play a path with fewer than 3 nodes.
- Update UniverseLib.
Full Changelog: 1.3.0...1.4.0