階段を実際のサイズで作ると、FPSキャラクターなどで階段をのぼるときなどに、段差が高すぎて画面がガタついてしまいました。
FPSキャラのアセットによっては、高い段差の端で引っかかることもあります。そこで、Blenderでコライダー用のメッシュを作って、スムーズに登れるようにしてみました。
コライダー用のメッシュを作る
階段のメッシュの装飾的な部分はコライダー用のメッシュでは不要なので、まずは形をシンプルにしました。
この階段は蹴上の部分が奥に引っ込んでいるので、凹部分の辺の頂点を踏面の端にスナップしました。頂点へのスナップをオンにして、頂点を選択し、G > シフトキー + Z と入力すると、高さを変えずに他の頂点と位置を揃えられます。
両側の頂点を移動したら、角の辺との間にある辺を選択します。
Ctrl + Xで溶解すると、階段がシンプルな形になりました。
段数を増やす
次に階段を細かくして段数を増やしました。そのためには、Ctrl + R で階段の縦横の面に一つずつ辺を入れます。
これらの間にある角の辺をXキーから削除します。
スナップをオンにして、追加した上側の辺を選択し、E > Z で縦方向に押し出しながら、追加したもう一方の辺にスナップします。
この隙間を挟んだ2つの辺を選択して、Fキーで面を作ると、階段が1段増えて、段差が低くなります。作った面が裏返っているときは、その面を選択して、Ctrl + N から「Flip」を選択し、面の向きを逆にします。
これをすべての段で行うと、階段が細かくなりました。
周りのメッシュも表示して、階段の端を近くのメッシュの面などにスナップさせると隙間がなくなって良いかもしれません。
メッシュコライダーに適用する
2つの階段メッシュをUnityにインポートします。元の階段をシーンに配置し、メッシュコライダーを付けました。
インポート設定の「Model」タブで、「Generate Colliders」のチェックを入れて「Apply」を押すと、メッシュコライダーは自動で追加されます。
このメッシュコライダーの「Mesh」の欄に、今作ったコライダー用のメッシュをドラッグアンドドロップします。メッシュは、ProjectウィンドウのFBXファイルの中にあります。
これで、見た目を変えずにコライダーだけがスムーズになりました。