下記に示すコードで実行してみたところ,R,Lキーではx座標上のみで移動するのですが,→,←キーを一度でも使うとy座標が15.6,z座標が3.646769となってしまいます.(動かす物体の元々の座標は(0, 1, 0))
理由を教えていただきたいです.
C#
1using System.Collections; 2using System.Collections.Generic; 3using UnityEngine; 4 5 6 7 8public class Player : MonoBehaviour 9{ 10 // Start is called before the first frame update 11 void Start(){ 12 Debug.Log("tmr"); 13 14 } 15 16 // Update is called once per frame 17 void Update(){ 18 if(Input.GetKey(KeyCode.L)){ 19 transform.Translate(-1, 0, 0); 20 } 21 if(Input.GetKey(KeyCode.R)){ 22 transform.Translate(1, 0, 0); 23 } 24 25 if (Input.GetKey(KeyCode.RightArrow)){ 26 transform.position = new Vector3(transform.position.x + 0.1f, 0, 0); 27 } 28 else if(Input.GetKey(KeyCode.LeftArrow)){ 29 transform.position = new Vector3(transform.position.x - 0.1f, 0, 0); 30 } 31 } 32} 33
playerオブジェクトの親となっている、GameObjectのTransform値が分かる情報も追記頂けませんでしょうか。
(GameObjectのTransform値が影響しているのではないかと思い、追記頂きたいです)
回答1件
あなたの回答
tips
プレビュー