| 12345678910111213141516171819202122232425262728 |
- using UnityEngine;
- namespace Cinemachine.Examples
- {
- /// <summary>
- /// An add-on module for Cinemachine Virtual Camera that locks the camera's Y co-ordinate
- /// </summary>
- [ExecuteAlways]
- [SaveDuringPlay]
- [AddComponentMenu("")] // Hide in menu
- public class CustomLockCameraY : CinemachineExtension
- {
- [Tooltip("Lock the camera's Y position to this value")]
- public float m_YPosition = 10;
- protected override void PostPipelineStageCallback(
- CinemachineVirtualCameraBase vcam,
- CinemachineCore.Stage stage, ref CameraState state, float deltaTime)
- {
- if (stage == CinemachineCore.Stage.Finalize)
- {
- var pos = state.RawPosition;
- pos.y = m_YPosition;
- state.RawPosition = pos;
- }
- }
- }
- }
|