カメラ移動による自機移動

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
ホヅミ
記事: 110
登録日時: 14年前

カメラ移動による自機移動

#1

投稿記事 by ホヅミ » 14年前

[1] 質問文
現在私は三人称視点シューティングゲームを作っています。
カメラを自機の頭の後ろに置いているのですが、
カメラの位置を回転させたときに右移動ボタンを押したら自機が真逆の方向へ移動してしまいます。
カメラの向きを変えたとき、それに応じたキャラクター移動をさせるためにはどうすればよいでしょうか。
何をどうすれば良いのかまったくわからない状態です。

[2] 環境  
 [2.1] OS : Win7
 [2.2] コンパイラ名 : VS 2010 DxLib

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: カメラ移動による自機移動

#2

投稿記事 by softya(ソフト屋) » 14年前

カメラから自機へのXZ平面上(平面が違っていたらごめんなさい)のベクトルを正規化して、回転マトリクスで右に90度回せば右への移動の単位ベクトルが出来ます。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

ホヅミ
記事: 110
登録日時: 14年前

Re: カメラ移動による自機移動

#3

投稿記事 by ホヅミ » 14年前

返信ありがとうございます
回転マトリクスや正規化は確か線形代数でしたよね?
線形代数がまったくわからない状態なので
参考にできるサイトを教えてくれると嬉しいです

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: カメラ移動による自機移動

#4

投稿記事 by softya(ソフト屋) » 14年前

いえ、全てDXライブラリの3D関係の関数にありますので、勉強しなくても使えますよ。
VNorm
VTransform
などを調べてみてください。

一応参考サイトをご紹介します。

「1-2 ベクトル其の弐」
http://homepage2.nifty.com/skimp-studio ... ector2.htm
「3D基礎知識」
http://www.ceres.dti.ne.jp/~ykuroda/oya ... sic3d.html

何にしても3Dゲームを作るなら基礎知識は必須なので何か本を買われたほうが良いのでは?
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

ホヅミ
記事: 110
登録日時: 14年前

Re: カメラ移動による自機移動

#5

投稿記事 by ホヅミ » 14年前

なるほど!
うまく動きました
ありがとうございます!

閉鎖

“C言語何でも質問掲示板” へ戻る