第7回 吹っ飛ぶオブジェクトを作る

コース上においてある距離看板など、当たったら動くオブジェクトを作る。
自分の知る限りではこの作業は3Dsimedが必須だと思う。

1.モデルを作る

今回はモデリングの練習を兼ねてパイロンを作っていく。

大きさは日本寸法協会に記載の大きさを目標とした。

普通に作ると原点が(0,0,0)になっていて、それがオブジェクト中心の底面になってると思うので、そのままにしておく。

 

作ったカラーコーン

2.コースに置く

スケール1.00のFBXで書き出し、コースのモデルにインポートする。

置きたいところの地面を左クリックし、カーソル(白い丸いやつ)がクリックしたところにあることを確認する。

"オブジェクト"→"スナップ"→"選択物→カーソル"を選択する。

スナップの場所

コレクションでコーンだけ分けておけば書き出しがそれだけで済むので楽かもしれないが、ちゃんと位置を合わせるなら全部書き出したほうが良い。

エクスポートはfbxならコースと同じくスケール0.01で。

 

3.gmtの設定

3dsimed上でgmtとしての設定を加えていく。

読み込んだ後、いったん何もせずにgmtで書き出す。

書き出したところに作られている"_output.scn"をダブルクリックして開きなおす。

開きなおしたら、オブジェクトごとに"Collision Target"、"pivot point"などの設定をして、再度書き出す。

終わったら"_output.scn"のオブジェクトの部分をコースのscnにコピーする。

 

pivot pointの場所

設定を間違えるとこうなる。

youtu.be

 

4.重さをつける

gdbファイルを開いて、下の写真の位置に重さをつけたいオブジェクトの記述を足す。

パラメータも写真の通りなのでこのサイトとかで計算してもらう。
(例によってrF2とはy軸z軸が入れ替わってるので間違えないように)

gdbファイルはdev modeを起動した段階で読み込まれるようなので、再起動しないと反映されないことにも気を付ける。

インスタンス名は重さをつけたいオブジェクトごとに決める
同じにしたくない物同士は被らないように

動かないときは

Ctrl+Hを押して確認する

線が青いとき
→MoveableがTrueじゃない

線がないとき
Collision TargetがTrueじゃない(Trueならdev modeを再起動してみる)
gdbに記述がない

 

それでもだめそうなときは既存のやつの値を書き換えて使う

 

rF2公式ガイド

Collidable & Moveable Objects - Developers Guide