資源簡介
在這個腳本里,只要將代碼里的Gameobject賦值給物體,就可以實現對模型的旋轉、縮放等
代碼片段和文件信息
using?UnityEngine;
using?System.Collections;
public?class?Radio_Operation1?:?MonoBehaviour
{
????#region//相關參數初始化
????public?Transform?target;
????public??int?MouseWheelSensitivity?=?1;
????private?int?MouseZoomMin?=?1;
????private?int?MouseZoomMax?=?5;
????private?float?normalDistance?=?3;
????private?Vector3?normalized;
????private?float?xSpeed?=?250.0f;
????private?float?ySpeed?=?120.0f;
????private?int?yMinLimit?=?-20;
????private?int?yMaxLimit?=?80;
????private?float?x?=?0.0f;
????private?float?y?=?0.0f;
????private?Vector3?screenPoint;
????private?Vector3?offset;
????private?Quaternion?rotation?=?Quaternion.Euler(new?Vector3(30f?0f?0f));
????private?Vector3?CameraTarget;
????private?GUIstyle?style_opration?=?new?GUIstyle();
????public?GUISkin?CustomSkin;
????private?GUIstyle?ziti?=?new?GUIstyle();
????//private?Rect?windowRect0?=?new?Rect(Screen.width?*?11?/?35?Screen.height?*?11?/?28?285?200);
????private?Rect?windowRect0?=?new?Rect(0?0?285?200);
????#endregion
????#region//Start-初始化函數
????void?Start?()?{
????????CameraTarget?=?target.position;
????????float?z?=?target.transform.position.z?-?normalDistance;
????????transform.position?=?rotation?*?new?Vector3(transform.position.x?transform.position.y?z);
????????transform.LookAt(target);
????????var?angles?=?transform.eulerAngles;
????????x?=?angles.y;
????????y?=?angles.x;
}
????#endregion
????#region//Updata-函數
????void?Update?()?{
????????if(Input.GetMouseButton(1))
????????????????{
????????????????????????x?+=?Input.GetAxis(“Mouse?X“)?*?xSpeed?*?0.02f;
????????????????????????y?-=?Input.GetAxis(“Mouse?Y“)?*?ySpeed?*?0.02f;
????????????????????????y?=?ClampAngle(y?yMinLimit?yMaxLimit);
?
????????????????????????var?rotation?=?Quaternion.Euler(y?x?0);
????????????????????????var?position?=?rotation?*?new?Vector3(0.0f?0.0f?-normalDistance)?+?CameraTarget;
?
????????????????????????transform.rotation?=?rotation;
????????????????????????transform.position?=?position;
?
????????????????}else?if?(Input.GetAxis(“Mouse?ScrollWheel“)?!=?0)
????????????????{
????????????????????normalized?=?(transform.position?-?CameraTarget).normalized;
?
????????????????????????if?(normalDistance?>=?MouseZoomMin?&&?normalDistance?<=?MouseZoomMax)
????????????????????????{
????????????????????????????????normalDistance?-=?Input.GetAxis(“Mouse?ScrollWheel“)?*?MouseWheelSensitivity;
????????????????????????}
????????????????????????if?(normalDistance?????????????????????????{
????????????????????????????????normalDistance?=?MouseZ
- 上一篇:C#進銷存源碼
- 下一篇:C#實驗—接口:正方形、三角形、圓形求面積
評論
共有 條評論