0
我正在創建一個項目,其中我有一個具有空的遊戲對象作爲孩子的球體GameObject。一個線渲染器組件被附加到這個空的遊戲對象。統一 - 不斷改變遊戲對象的前進方向?
我已經使球體看觸摸方向,以便子對象的線渲染器也面向觸摸位置。當球體在一個軸上旋轉時,它工作正常。
但是,當我對球體施加一個力並且它開始在所有軸上旋轉時就像普通球一樣旋轉。但是貼在它上面的線條渲染器粘在它的臉上,當球面朝下時,線條渲染器會進入地面。
線渲染器的代碼。
using UnityEngine;
using System.Collections;
public class LineRenderer : MonoBehaviour {
private LineRenderer lineRenderer;
private Vector3 finalTouchPosition;
// Use this for initialization
void Start() {
lineRenderer = gameObject.GetComponent<LineRenderer>();
}
// Update is called once per frame
void Update() {
Ray ray = new Ray (transform.position, transform.forward);
RaycastHit hit;
lineRenderer.SetPosition (0, ray.origin);
if (Physics.Raycast (ray, out hit)) {
lineRenderer.SetPosition (1, hit.point);
}
}
}
代碼用於與觸摸旋轉所述對象。
if(theTouch.phase == TouchPhase.Moved)
{
Vector3 tempTouch = new Vector3(theTouch.position.x ,theTouch.position.y, myCamera.position.y - targetObject.transform.position.y);
fingerPosition = Camera.main.ScreenToWorldPoint(tempTouch);
targetObject.transform.LookAt(fingerPosition);
isRotating = true;
}
我希望線渲染器始終與地面平行,但始於球體或球面。我嘗試了很多東西。但還沒有找到解決辦法。
所以請幫助。謝謝你
用你試過的東西發佈一些代碼,它會使我們更容易回答你的問題。 –
@StevenMills我編輯了我的問題。請看一下。 –