void Awake() { _AudioSource = GetComponent <AudioSource> (); _MainCamera = Camera.main; _CurrentEntry = _DefaultEntries[0]; // Reset position on runtime so we don't get a janky start to the game transform.position = GetWantedCameraPosition(); }
void ChangeCameraZoom() { // Increment and wrap the entry index _EntryIndex = (_EntryIndex + 1 >= _DefaultEntries.Length) ? 0 : _EntryIndex + 1; // Select the Current Entry based on the entry index _CurrentEntry = _TopView ? _TopViewEntries[_EntryIndex] : _DefaultEntries[_EntryIndex]; // Play the zoom sound _AudioSource.PlayOneShot(_ZoomSound); }
public void AdjustCameraPriority(Camera camera, int priority) { int index = GetCameraEntryIndexFromCamera(camera); CameraEntry cameraEntry = index != -1 ? cameras[index] : null; if (cameraEntry != null) { // we must remove it and re-add it to the list if we want the priority to apply cameras.RemoveAt(index); cameraEntry.Priority = priority; cameras.Add(cameraEntry); ReevaluateActiveCamera(); } else { Log.Error("Failed to adjust camera priority. It appears it was not added to the camera service (" + camera.gameObject.name + ")"); } }
void Update() { if (GameManager._IsPaused) { return; } if (Input.GetButtonDown("Right Bumper")) { ChangeCameraZoom(); } else if (Input.GetButtonDown("Left Bumper")) { _TopView = !_TopView; _CurrentEntry = _TopView ? _TopViewEntries[_EntryIndex] : _DefaultEntries[_EntryIndex]; } if (Input.GetButton("Left Trigger")) { _WantedRotationAngle += _RotationStepSpeed * Time.deltaTime; } else if (Input.GetButton("Right Trigger")) { _WantedRotationAngle -= _RotationStepSpeed * Time.deltaTime; } if (Input.GetButton("Right Stick Click")) { _WantedRotationAngle = -_Target.eulerAngles.y; } // Smoothly change values towards their intended target _RotationAngle = Mathf.Lerp(_RotationAngle, _WantedRotationAngle, _RotationSpeed * Time.deltaTime); _MainCamera.fieldOfView = Mathf.SmoothStep(_MainCamera.fieldOfView, _CurrentEntry._FOV, _FOVChangeSpeed * Time.deltaTime); transform.position = Vector3.Lerp(transform.position, GetWantedCameraPosition(), _MoveSpeed * Time.deltaTime); Vector3 delta = (_Target.position - transform.position).normalized; transform.rotation = Quaternion.Lerp(transform.rotation, Quaternion.LookRotation(delta), _RotationDampening * Time.deltaTime); }
public int CompareTo(object obj) { CameraEntry other = (CameraEntry)obj; return(Priority.CompareTo(other.Priority)); }
public void LoadCAMfile() { CameraStream.Clear(); ListBoxCameras.Items.Clear(); BinaryReader CameraReader = new BinaryReader(new FileStream(CameraFile, FileMode.Open)); CameraReader.BaseStream.Position = 0; while (CameraReader.BaseStream.Position != CameraReader.BaseStream.Length) { CameraEntry TempCam = new CameraEntry(); TempCam.Integer1 = SwitchEnd(CameraReader.ReadInt32()); TempCam.Integer2 = SwitchEnd(CameraReader.ReadInt32()); TempCam.Integer3 = SwitchEnd(CameraReader.ReadInt32()); TempCam.Integer4 = SwitchEnd(CameraReader.ReadInt32()); TempCam.Integer5 = SwitchEnd(CameraReader.ReadInt32()); TempCam.FloatX6 = SwitchEnd(CameraReader.ReadSingle()); TempCam.FloatY7 = SwitchEnd(CameraReader.ReadSingle()); TempCam.FloatZ8 = SwitchEnd(CameraReader.ReadSingle()); TempCam.Integer9 = SwitchEnd(CameraReader.ReadInt32()); TempCam.Integer10 = SwitchEnd(CameraReader.ReadInt32()); TempCam.Integer11 = SwitchEnd(CameraReader.ReadInt32()); TempCam.FloatX12 = SwitchEnd(CameraReader.ReadSingle()); TempCam.FloatY13 = SwitchEnd(CameraReader.ReadSingle()); TempCam.FloatZ14 = SwitchEnd(CameraReader.ReadSingle()); TempCam.FloatX15 = SwitchEnd(CameraReader.ReadSingle()); TempCam.FloatY16 = SwitchEnd(CameraReader.ReadSingle()); TempCam.FloatZ17 = SwitchEnd(CameraReader.ReadSingle()); TempCam.Integer18 = SwitchEnd(CameraReader.ReadInt32()); TempCam.Integer19 = SwitchEnd(CameraReader.ReadInt32()); TempCam.Integer20 = SwitchEnd(CameraReader.ReadInt32()); TempCam.FloatX21 = SwitchEnd(CameraReader.ReadSingle()); TempCam.FloatY22 = SwitchEnd(CameraReader.ReadSingle()); TempCam.FloatZ23 = SwitchEnd(CameraReader.ReadSingle()); TempCam.FloatX24 = SwitchEnd(CameraReader.ReadSingle()); TempCam.FloatY25 = SwitchEnd(CameraReader.ReadSingle()); TempCam.FloatZ26 = SwitchEnd(CameraReader.ReadSingle()); TempCam.FloatX27 = SwitchEnd(CameraReader.ReadSingle()); TempCam.FloatY28 = SwitchEnd(CameraReader.ReadSingle()); TempCam.FloatZ29 = SwitchEnd(CameraReader.ReadSingle()); TempCam.Integer30 = SwitchEnd(CameraReader.ReadInt32()); TempCam.Integer31 = SwitchEnd(CameraReader.ReadInt32()); TempCam.FloatX32 = SwitchEnd(CameraReader.ReadSingle()); TempCam.FloatY33 = SwitchEnd(CameraReader.ReadSingle()); TempCam.FloatZ34 = SwitchEnd(CameraReader.ReadSingle()); TempCam.FloatW35 = SwitchEnd(CameraReader.ReadSingle()); TempCam.Integer36 = SwitchEnd(CameraReader.ReadInt32()); TempCam.Integer37 = SwitchEnd(CameraReader.ReadInt32()); TempCam.Integer38 = SwitchEnd(CameraReader.ReadInt32()); TempCam.Integer39 = SwitchEnd(CameraReader.ReadInt32()); if (TempCam.Integer1 == 0 & TempCam.Integer2 == 0 & TempCam.Integer3 == 0 & TempCam.Integer4 == 0 & TempCam.Integer5 == 0) { continue; } CameraStream.Add(TempCam); } CameraReader.Close(); LabelCameraCount.Text = CameraStream.Count().ToString() + " cameras"; PopulateListBox(); ListBoxCameras.SelectedIndex = -1; }