我在實習的專案中遇到了一個問題,困擾了好久,想請教論壇上的大神。
我先來說一下功能的實施點:有一條木棒(已經可以實作按住滑鼠左鍵木棒跟隨滑鼠移動的共能了),木棒在UGUI的面板上,木棒是3D物體,用Cube做出來的簡單模型,然后現在需要實作,滑鼠單擊左右兩邊端點的其中一端,不放開,然后滑鼠上下滑動實作木棒圍繞中心點旋轉!麻煩各位大神能給予提示,或者能有代碼!小弟感激不盡!
uj5u.com熱心網友回復:
先用射線檢測選中物體,然后監聽Z軸的輸入,然后讓物體旋轉uj5u.com熱心網友回復:
非常感謝您的回答!最近公司的專案比較多,同事比較忙,今天抽空幫我解決的!uj5u.com熱心網友回復:
問題寫的有點繞判斷滑鼠是否在左右兩端,點擊滑鼠后獲取在螢屏上點擊的位置判斷就行了,給你一段參考代碼
void OnMouseDown() {
screenPosition=Camera.main.WorldToScreenPoint (transform.position);
position=transform .position -Camera.main.ScreenToWorldPoint (
new Vector3 (Input.mousePosition.x,
Input.mousePosition.y ,screenPosition.z));
StartCoroutine (ChangePosition());
}
IEnumerator ChangePosition () {
while (Input .GetMouseButton(0)) {
tempPosition = Camera.main.ScreenToWorldPoint(new Vector3 (Input.mousePosition.x,Input.mousePosition.y ,screenPosition.z));
transform.position = tempPosition + position ;
yield return null;
}
}
uj5u.com熱心網友回復:
這個問題...uj5u.com熱心網友回復:
public Camera camera;
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/64396.html
標籤:Unity3D
