init
This commit is contained in:
commit
f5c1616018
679 changed files with 188502 additions and 0 deletions
51
Assets/Pixel3D/Scripts/IsometricCameraPivot.cs
Normal file
51
Assets/Pixel3D/Scripts/IsometricCameraPivot.cs
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class IsometricCameraPivot : MonoBehaviour
|
||||
{
|
||||
|
||||
float _targetAngleY;
|
||||
float _currentAngleY;
|
||||
float _targetAngleX;
|
||||
float _currentAngleX;
|
||||
|
||||
[SerializeField] float _mouseSensitivity = 2;
|
||||
[SerializeField] float _rotationSpeed = 5;
|
||||
|
||||
void Awake()
|
||||
{
|
||||
_targetAngleY = transform.eulerAngles.y;
|
||||
_targetAngleX = transform.eulerAngles.x;
|
||||
}
|
||||
|
||||
|
||||
void Update()
|
||||
{
|
||||
float mouseX = Input.GetAxis("Mouse X");
|
||||
float mouseY = Input.GetAxis("Mouse Y");
|
||||
|
||||
if (Input.GetMouseButton(0))
|
||||
{
|
||||
_targetAngleY += mouseX * _mouseSensitivity;
|
||||
_targetAngleX -= mouseY * _mouseSensitivity / 3;
|
||||
}
|
||||
else
|
||||
{
|
||||
_targetAngleY = Mathf.Round(_targetAngleY / 45) * 45;
|
||||
_targetAngleX = Mathf.Round(_targetAngleX / 15) * 15;
|
||||
}
|
||||
|
||||
_targetAngleY = (_targetAngleY + 360) % 360;
|
||||
_targetAngleX = Mathf.Clamp(_targetAngleX, 23, 67);
|
||||
|
||||
_currentAngleY = Mathf.LerpAngle(transform.eulerAngles.y, _targetAngleY, Time.deltaTime * _rotationSpeed);
|
||||
_currentAngleX = Mathf.LerpAngle(transform.eulerAngles.x, _targetAngleX, Time.deltaTime * _rotationSpeed);
|
||||
|
||||
if (Mathf.Abs(_currentAngleY - _targetAngleY) < 0.1f) _currentAngleY = _targetAngleY;
|
||||
if (Mathf.Abs(_currentAngleX - _targetAngleX) < 0.1f) _currentAngleX = _targetAngleX;
|
||||
|
||||
transform.rotation = Quaternion.Euler(_currentAngleX, _currentAngleY, 0);
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue