[英]Unity2D: How to get object to move forward
我試圖運行一個簡單的腳本來使對象在統一內向前移動。
我的代碼是:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class MoveToHold : MonoBehaviour {
private float traveledDistance;
public int moveSpeed = 10;
private bool isMoving;
public GameObject Aircraft;
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
if (isMoving == true)
{
//Aircraft.transform.position += transform.forward * Time.deltaTime * moveSpeed;
Aircraft.transform.position += transform.forward * moveSpeed * Time.deltaTime;
}
}
public void move ()
{
isMoving = true;
Debug.Log(isMoving);
}
}
據我所知,transform.position應該起作用。
有任何想法嗎?
嘗試更改:
Aircraft.transform.position += transform.forward * moveSpeed * Time.deltaTime;
至 :
Aircraft.transform.position += transform.right * moveSpeed * Time.deltaTime;
有時,使用unity2D時,前向軸是Z,因此您將其推入Z軸內而看不到。 向右將在x軸上移動它。
我認為您需要將位置應用於RigidBody對象而不是飛機。 如果我猜對了,那應該是您飛機的父母。 嘗試:
Aircraft.parent.transform.position += transform.forward * moveSpeed * Time.deltaTime;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.