プログラムを拝見しました
まず、カメラの設定が「低い位置から高い位置の方向を見る」ようなカメラになっているので、Main.cpp のこちらを
//カメラはZ軸が画面上方向になるよう第7、8、9引数のうちZ軸の第9引数を1.0にする(通常はY軸が上方向なので第8引数が1.0)
camera->CameraInit(320.0f, -450.0f, 220.0f, 320.0f, -280.0f, 240.0f, 0.0f, 0.0f, 1.0f);
このようにして、「高い位置から低い位置の方向を見る」カメラ設定にしました
//カメラはZ軸が画面上方向になるよう第7、8、9引数のうちZ軸の第9引数を1.0にする(通常はY軸が上方向なので第8引数が1.0)
camera->CameraInit(320.0f, -110.0f, 220.0f, 320.0f, -280.0f, 240.0f, 0.0f, 0.0f, 1.0f);
> ・キーがUPの時キャラが正面を向いてしまう。
> ・キーがLEFT、RIGHTの時にキャラが少し傾いてしまっている。
上記のカメラの設定を変更した上で、Model.cpp の最後の方のこちら
// 新しい向きをセット
MV1SetRotationXYZ(model, VGet(90.0f, 0.0f, tPlayerParam.Angle / 180.0f * DX_PI_F));
を、以下のように変更したら正常になりました
// 新しい向きをセット
MV1SetRotationXYZ(model, VGet(90.0f / 180.0f * DX_PI_F, 0.0f, -tPlayerParam.Angle / 180.0f * DX_PI_F));
あと、走るアニメーションが「全ての親」フレームをアニメーションを無効にしても
「センター」フレームのアニメーションの移動値によって若干原点から離れてしまっているので、
「全ての親」フレームのアニメーションの移動値を無効にしている直ぐ上にでも
int TempMoveAnimFrameIndex = MV1SearchFrame(model, "センター");
MV1SetFrameUserLocalMatrix(model, TempMoveAnimFrameIndex, MGetIdent());
という記述を増やして、「センター」フレームのアニメーションの移動値も無効にしておいた方が良さそうです