亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

transform.position 在 Unity 中沒有設置正確的位置?

transform.position 在 Unity 中沒有設置正確的位置?

C#
瀟湘沐 2021-11-21 10:51:00
我遇到了這個我不知道如何解決的問題,如果條件得到驗證,我有一個移動的物體會返回到一個位置,但它似乎有時在工作,但有時卻不是..這是我的腳本:using System.Collections;using System.Collections.Generic;using UnityEngine;public class MovingDes : MonoBehaviour {    private float speed = 5f;    Transform trn;    //-37.6914    //62.32123    // Use this for initialization    void Start() {        trn = GetComponent<Transform>();    }    // Update is called once per frame    void Update() {        transform.Translate(Vector3.back * (speed * Time.deltaTime));        if(transform.position.z <= -37.6914){            Vector3 newPosition = new Vector3(17.5f,125.7f,165.32123f);            trn.position = newPosition;        }    }}問題是我可以在我的 Unity 編輯器中看到位置與我設置的不同,而且我不明白這些值來自哪里,我沒有肯定地寫它們。
查看完整描述

2 回答

?
湖上湖

TA貢獻2003條經驗 獲得超2個贊

您正在使用 transform.Translate 每幀移動對象,因此在設置新位置后,您的對象會立即再次移動。請注意,在您的情況下,trn 和 transform 指的是同一個 Transform 組件。


查看完整回答
反對 回復 2021-11-21
?
冉冉說

TA貢獻1877條經驗 獲得超1個贊

你為什么不把你的trn.position=改為transform.position=我認為你不需要GetComponent<>當前游戲對象的變換組件。或者可能與方法的relativeTo參數有關.Translate。


查看完整回答
反對 回復 2021-11-21
  • 2 回答
  • 0 關注
  • 846 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號