DestinationDirectionの作り方として、多分間違いではないと思うのですが・・・

今ブレークポイントで値を確認してみたところ、実行前と実行後でしっかり符号が反転してます。




//目的地へのベクトル
VECTOR DestinationDirection = VSub(目的地 , 現在地);

//座標系を自分視点に回転させる行列
MATRIX Rot= MGetAxis2(キャラクターのx軸,キャラクターのy軸,キャラクターのz軸,キャラクターの座標);

//回転適用後正規化
DestinationDirection = VNorm(VTransform(DestinationDirection,Rot));