- Improved camera switching code to allow for more versatile camera direction.

- Added additional camera layouts for round 2 and 3.
This commit is contained in:
2025-12-20 23:19:19 -05:00
parent 08897ba99f
commit 82606881b3
29 changed files with 1294 additions and 420 deletions
@@ -116,19 +116,19 @@ MonoBehaviour:
Data:
- Name: $k
Entry: 1
Data: _SwitchToCamera
Data: _SwitchFunction
- Name: $v
Entry: 7
Data: 7|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField
Entry: 1
Data: _SwitchToCamera
Data: _SwitchFunction
- Name: <UserType>k__BackingField
Entry: 7
Data: 8|System.RuntimeType, mscorlib
- Name:
Entry: 1
Data: UnityEngine.Camera, UnityEngine.CoreModule
Data: System.String, mscorlib
- Name:
Entry: 8
Data:
@@ -10,14 +10,14 @@ using VRC.Udon.Common.Interfaces;
public class CameraSwitchTrigger : UdonSharpBehaviour
{
[SerializeField] private CameraControllerBase _CameraController;
[SerializeField] private Camera _SwitchToCamera;
[SerializeField] private string _SwitchFunction;
public override void OnPlayerTriggerEnter(VRCPlayerApi Player)
{
if (Networking.GetOwner(_CameraController.gameObject) == Networking.LocalPlayer)
{
_CameraController.SwitchToLiveCamera(_SwitchToCamera);
_CameraController.SendCustomEvent(_SwitchFunction);
}
base.OnPlayerTriggerEnter(Player);
@@ -116,19 +116,19 @@ MonoBehaviour:
Data:
- Name: $k
Entry: 1
Data: _Cameras
Data: _SwitchFunctions
- Name: $v
Entry: 7
Data: 7|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField
Entry: 1
Data: _Cameras
Data: _SwitchFunctions
- Name: <UserType>k__BackingField
Entry: 7
Data: 8|System.RuntimeType, mscorlib
- Name:
Entry: 1
Data: UnityEngine.Camera[], UnityEngine.CoreModule
Data: System.String[], mscorlib
- Name:
Entry: 8
Data:
@@ -11,7 +11,7 @@ using VRC.Udon;
public class CameraTimedSwitcher : UdonSharpBehaviour
{
[SerializeField] private CameraControllerBase _CameraController;
[SerializeField] private Camera[] _Cameras;
[SerializeField] private string[] _SwitchFunctions;
[SerializeField] private float _TimeBetweenCuts = 5.0f;
@@ -24,8 +24,8 @@ public class CameraTimedSwitcher : UdonSharpBehaviour
{
if (_Active)
{
_CameraController.SwitchToLiveCamera(_Cameras[_NextCameraIndex]);
_NextCameraIndex = (_NextCameraIndex + 1) % _Cameras.Length;
_CameraController.SendCustomEvent(_SwitchFunctions[_NextCameraIndex]);
_NextCameraIndex = (_NextCameraIndex + 1) % _SwitchFunctions.Length;
SendCustomEventDelayedSeconds(nameof(SwitchToNextCamera), _TimeBetweenCuts);
}