資源簡介
U3D對3D物體進行移動旋轉縮放的測試腳本,有待改進的地方,望多多指教
代碼片段和文件信息
using?System.Collections;
using?System.Collections.Generic;
using?UnityEngine;
///?
///?拖動、旋轉、縮放
///?
public?class?Zoom?:?MonoBehaviour?{
????float?rotationX;
????float?rotationY;
????//靈敏度
????[SerializeField]??
????float?delicacyX=5;
????[SerializeField]
????float?delicacyY=5;
????//枚舉
????public?enum?Rotation?{?MouseXAndY?MouseX?MouseY?}
????//賦值
????Rotation?axes?=?Rotation.MouseXAndY;
????void?Update()
????{
????????//啟動旋轉方法
????????MouseRotation(Rotation.MouseX);
????????//鼠標滾輪縮放效果
????????#region
????????//Camera.main.fieldOfView?攝像機的視野
????????//Camera.main.orthographicSize?攝像機的正交投影
????????//Zoom?移出
????????if?(Input.GetAxis(“Mouse?ScrollWheel“)?0)
????????{
????????????if?(Camera.main.fieldOfView?<=?100)
????????????????Camera.main.fieldOfView?+=?2;
????????????if?(Camera.main.orthographicSize?<=?20)
????????????????Camera.main.orthographicSize?+=?0.5F;
????????}
????????//Zoom?進入
????????if?(Input.GetAxis(“Mouse?ScrollWheel“)?>?0)
????????{
????????????if?(Camera.main.fieldOfView?>?2)
????????????????Camera.main.fieldOfView?-=?2;
????????????if?(Camera.main.orthographicSize?>=?1)
????????????????Camera.main.orthographicSize?-=?0.5F;
????????}
????????#endregion
????????//開起協程
????????StartCoroutine(onmousedown());
????}
????///?
????///?右鍵控制旋轉
????///?
????public?void?MouseRotation(Rotation?axes)
????{
????????//判斷是否點擊右鍵
????????if?(Input.GetMouseButton(1))
????????{
????????????////全方位旋轉
????????????//if?(axes?==?Rotation.MouseX)
????????????//{
????????????//????//獲取X軸
????????????//????rotationX?=?transform.localEulerAngles.y?+?Input.GetAxis(“Mouse?X“)?*?delica
- 上一篇:C#制作的小游戲
- 下一篇:特別全面的DbHelper
評論
共有 條評論