![](/img/trans.png)
[英]How to Mathf.Clamp one axis y in update when the rotation is determined by mouse position in unity 3D
[英]Clamp X position of object in unity 3d
這是我在 unity 3d 中的代碼
moveDirection = Vector3.forward + new Vector3(Input.acceleration.x * 0.3f, 0, 0);
// transform.position.x = Mathf.Clamp(transform.position.x, -2.0f, 2.0f);
transform.Translate(moveDirection * Time.deltaTime *9);
向前移動的物體。 我想夾住它的 x 位置。
transform.position.x = Mathf.Clamp(transform.position.x, -2.0f, 2.0f);
這給了我
錯誤 CS1612:無法修改“UnityEngine.Transform.position”的值類型返回值。 考慮將值存儲在臨時變量中
我怎樣才能夾住我的物體?
Unity 在這方面非常愚蠢,因此需要一些解決方法。 試試這個:
Vector3 tmpPos = transform.position;
tmpPos.x = Mathf.Clamp(tmpPos.x, -2.0f, 2.0f);
transform.position = tmpPos;
您無法直接訪問 x 值,這是一種解決方法:
transform.position = new Vector3(Mathf.Clamp(transform.position.x, -2.0f, 2.0f), transform.position.y, transform.position.z)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.