public class Test : MonoBehaviour
{
public GameObject PrefabObj; //預設
public Transform Cube1; //加載後眼睛面向的方向和位置
Transform m_head; //頭部相機
GameObject m_CmaeraRig; //加載後的對象
void Start()
{
m_CmaeraRig = Instantiate(PrefabObj) as GameObject;
m_head = m_CmaeraRig.transform.FindChild("Camera (head)");
StartCoroutine(SetTransform());
}
float f;
void Update()
{
if (Input.GetKeyDown(KeyCode.Space))
{
SetCameraRigTransform();
}
}
IEnumerator SetTransform()
{
//加載進來之後需要給一段時間讓它初始化
yield return new WaitForSeconds(0.03f);
SetCameraRigTransform();
}
/// <summary>
/// 設置CameraRig的變換
/// </summary>
void SetCameraRigTransform()
{
m_CmaeraRig.transform.position = Cube1.position;
f = Cube1.eulerAngles.y - m_head.localEulerAngles.y;
if (f > 360) f -= 360;
if (f < 0) f += 360;
m_CmaeraRig.transform.rotation = Quaternion.Euler(new Vector3(Cube1.eulerAngles.x, f, Cube1.eulerAngles.z));
}
}
SteamVR動態加載後固定視角
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.