AIプログラムとかUnityゲーム開発について

探索や学習などを活用したAI系ゲームを作りたいと思います。

真冬ですがプール作りました

f:id:yasu9780:20170214195401p:plain

アセットのプールはまだ買ってないので自作プール(キューブと非常階段と学校廊下アセットのタイルテクスチャ)
プールエリアに入ると自動的にスク水に切り替わる(LODもやっている)


NavMeshのOffLinkで飛び降りさせるとか色々と方法はあると思いますが、水面にコライダーを設置して当たっている間は、onAnimatorで高さを下げてます。
(navMeshAgentなんで勝手には上下移動できないが、onAnimatorで表示上の位置変更はできる)
泳ぐモーションがなかなか見つからず、CMUのHugeMoCapあたりのモーションも漁りましたが、泳ぐ前の水に入るモーションから収録されてて使えない(´・ω・`)
Humanoidモーションの一部を取り出すような編集できるといいんですが。

AnimationBakerって無料アセットで任意の時間でモーションを録画してanim作れるんですが、LegacyアニメができるだけでAnimatorで連携しづらい。
AssetStoreで$2で騎士が泳ぐモーションあったので買ったけど、左右斜めに動きすぎる荒々しいモーションでいまいち(´・ω・`)


f:id:yasu9780:20170214195412p:plain

セリフバルーンにステートマシンの現在のステートと、NavMeshの経路パスの何番目を歩いているか表示させてみた。これはデバッグがやりやすい。

f:id:yasu9780:20170214195418p:plain

FollowMeをとなえると周囲の生徒がついてくる。
これを使って、プールに誘導してデバッグなどができる。


キャラクターにLODを導入しました。SimpleLODで一発でmeshできるので、カメラとの距離を見て、標準、LOD1、LOD2と切り替えてます。
LOD2なんかは頂点2000しか無いのでLモデル並みです。ただし、近くで見るとかなり顔や服が壊れてますが、距離10以上で表示するので、実際には破たんに気づきません。

教室もLODやってみました。建物や物体にも使えますね。これは遠目に教室を8000頂点から800頂点ぐらいにまで減らすので、カリングされてなくても実害が減りました。
こっちはUnity標準のLODgroupを使ってます。
これで、校舎の壁側の窓も透明にしてみます。
ただSetPassCallは増えたかな。テクスチャをアトラス化するのはいろいろと難しいですね。
まだ3D関係は経験浅いので難しいです。