お二人ともありがとうございます。
>GUMIさん
ご教授いただいた方法で試してみました。
座標 x110、z600 にモデルデータを配置し、
座標 x110、z100 に向かった状態で
VECTOR Vect = MV1GetRotationXYZ( ModelHandle ) ;
MATRIX Matrix = MGetRotY( Vect.y + ( 180 * + PHI_F / 180 ) ) ;
VECTOR Vect2 = VNorm( VTransform( Position , Matrix ) ) ;
Position.x = MoveVec.x + Vect2.x ;
Position.z = MoveVec.z + Vect2.z ;
として実行してみました。
x500 以上で z100-300前後の間では
正常にモデルデータの向きに進みました。
ありがとうございます!
その他の状況下では予想外の動作が起こったので、もう少し研究してみます。
>埴輪さん
すみません。実は私も行列は(というか3D自体も)あまりよくわかっていませんので勉強中です。
なので違っていたら申し訳ないのですが、
MV1GetRotationXYZは回転値で、例えばモデルデータ座標 x0 、z0 にあり、
Y軸の方向が90度に向かっていた場合にMV1GetRotationXYZを使用し
回転値を取得すると、x 0.0f, y 1.5707f , z 0.0f のようになります。
私が求めているのは上の例でいえば、Y軸90度の方向に1進んだ値が欲しいのです。
質問自体があやふやで申し訳ありませんでした。
また、アドバイスを下さったお二方、本当にありがとうございました。