ツクロウヤ

Unityによるゲーム開発記

【開発記】進捗報告(2月:4回目)

ちょっと時間がかかりましたが、区切りが付いたので進捗報告。

しばらくは以下のようなことをやっていました。
・SimpleAnimatorへの移行
・武器の切り替え実装(UI、アニメ)
・移動をフローティングするように改修
・その他バグ修正

それぞれ結構学びがあり、記事にまとめておきたい内容ですが、ちょっと時間がかかりそうなので、また後日...

とりあえず簡単に

【SimpleAnimatorへの移行】
終了判定の改修、敵側の処理の移行などを行っていました。
「PlayableGraph.IsPlaying」が常にtrue状態になるようで、自前でUpdate内で再生後に時間経過で終了、フェードタイミングになったかを判定しています。

【武器の切り替え実装】
現状は攻撃ボタンをフリックすることによって、武器を切り替えるようにしています。
最初は普通にボタンを置こうとしていましたが、
・ボタンがギュウギュウになり、押しづらい
・操作性を変えることで少しでも単調さの解消
などがあったので、フリックにしました。
現状だとパッと見、フリック出来ることは分からないので、要検討。
(最初の操作説明でも良い気も...)

f:id:ArtAwA:20180228232723p:plain

【移動をフローティングするように】
以前は常にジョイパッドを表示していましたが、画面の左側をタップするとジョイパッドが出てきて、操作できるような形に変更しました。

この後の作業としては、
・銃の攻撃の実装
・メッセージなどのイベント処理実装
などを行おうと思います。

それでは今回はこの辺で
(´・ω・`*)ノシ

【開発記】進捗報告(2月:3回目)

昨日の記事でもっと良い方法があったので記載。

SimpleAnimationですが、スケールの問題があったり、昨日書いていませんでしたが、終了判定をする際にWrapModeをOnceにしないといけなかったりしていました。

解消法ないかなと調べていたら、またみんな大好きテラシュールウェアさんで以下の記事がありました。

tsubakit1.hateblo.jp

SimpleAnimationではないですが、こちらのSimpleAnimatorを用いれば、スケールのキーを消したりする必要はなさそうでした。

ただ、終了などの判定に関してはないため、自前で組む必要がありそうです。
コンボなどはクロスフェードさせるので、フェードさせる分、何フレーム前か割合とかで呼んであげる必要がありそう。
この辺りはステートマシンだと簡単だったけど...

それでは今回はこの辺で
(´・ω・`*)ノシ

【開発記】進捗報告(2月:2回目)

連休明けの進捗報告。

とりあえず前回記載していたSimpleAnimationへの移行を行いました。
ステートマシンを使わなくなったのでかなりシンプルになり、いい感じ。
RootMotionも反映されているし、処理からの呼び出しだけどアニメのクロスフェードも出来ているので、一通り問題無さそう。

1つ不満点としてはSimpleAnimationだけだとAnimationWindowでアニメが表示されず、編集するには一度Animatorにコントローラーを通さないといけない点がありました。
起動中に状態を確認するときとか面倒になりそうな。

その他、挙動として一つよく分からない現象がありました...

f:id:ArtAwA:20180213224515p:plain

何故か特定のアニメで特定の部分のみスケール値が2くらいに書き換わる状態に...
アニメを見てみても特にスケールにおかしな値は入っていませんでした。
(3dsmaxから書き出した際にベイクされるので、スケールのアニメを付けていなくても全てに「1」のキーが打たれています)

試しにUnity上でアニメのスケールのキーを消してみたら問題なさそうでした。
とはいえ、3dsmaxで書き出す際に特にスケールのアニメを付けていなくてもベイクされているので、アニメを更新したら、また消さないといけないという面倒くさいことになりそうな...
3dsmax側のエクスポーターにはキーの種類を設定するものがなさそうなので、手間ですが一旦はUnity側で対応することにしようと思います。

この後の作業としては
・敵側もSimpleAnimationに移行
・武器の切り替え、遠距離の仮アニメを改修
・武器の切り替えのUI改修
などをやっていこうと思います。

それでは今回はこの辺で
(´・ω・`*)ノシ

【開発記】進捗報告(2月:1回目)

とりあえず先週予定していた
・武器の切り替え
・遠距離攻撃の実装
については実装だけ完了(仮モーションだけど...)

といいつつも...武器の切り替えと遠距離に関しては制御だけは出来たけど、そもそものアニメの制御の仕組みが今の作りだと破綻しそう+後への影響が大きそうなので、一通りの機能を入れることを優先していましたが、先にアニメの制御の仕組みを変更しようと思います。

具体的には現状だとMecanim側でパラメータやらStateMachineBehaviorなどで制御しているのをプログラム側で制御するように修正予定。
現状だとちゃんと設計出来ていなかったので、バグの温床+拡張性がなく...

みんな大好きテラシュールさんのこの辺りとかを参考にしつつ実装していこうと思います。

tsubakit1.hateblo.jp

tsubakit1.hateblo.jp

それでは今回はこの辺で
(´・ω・`*)ノシ