17/05/09 21:26:34.63pBw3qVGD.net
>>741>>746>>748>>752
返信が遅れてしまい申し訳ありません。ありがとうございました。
少ししか出来てませんが助言通りに座標関連を見直して色々スクリプトを弄ったところキー方向を向いて移動させることができるようになりました。
修正後(centerPositionの移動を分けました)
void Update () {
Zoom ();//省略
Move ();
Center ();
}
void Move (){
moveFB = Input.GetAxis ("Vertical") * mouseSpeed; //①
moveLR = Input.GetAxis ("Horizontal") * mouseSpeed;//①
move = playerCamera.transform.TransformDirection(move);//②
move = player.transform.InverseTransformDirection(move);//②
move = new Vector3 (moveLR, 0, moveFB); //③
if (move != Vector3.zero) { //
player.transform.rotation = Quaternion.LookRotation(move);//キー方向を向く
}
}
void Center(){
player.GetComponent<CharacterController> ().Move (move * moveSpeed * Time.deltaTime);
centerPosition.position = new Vector3 (player.position.x, player.position.y + mouseYPosition, player.position.z);
}
カメラの正面=プレイヤーの正面は出来ておらず、実行するとワールド座標をベースに動いています。
まだ途中ですが、結果的に②で座標変換しても③が影響を受けていない①のみで動いているのでそこを上手く②と合わせるようにスクリプトを書くつもりです。ありがとうございました。