Virtual flight is a homepage which introduces FlightGear Flight Simulator.

自前の飛行機づくりに挑戦・1



   

●機体の3Dモデルの作成

【コメント】

 3Dモデリングソフトには、この間使用してきたBlenderを用いました。その使い方をほとんど理解できていないからでしょうが、不器用さを補ってはくれず、できあがった機体の3Dモデルのは完成度は、まだまだ雑で、稚拙。やはり後退翼は作りにくく、しかもミラー機能で主翼の片方からもう一方を作ってみたところ、Solidで見たその翼はなぜか真っ黒。実用には影響ないものの格好の悪いこと。やってはならないことをしたりやるべきことをやらずにいるのが、今の個人的到達なのでしょう。翼からエルロンを切り出して作ったはいいが、切り取られた後に面を作らなければならないのに忘れられていたり・・・。

 なお、三面図はLuft'46(http://www.luft46.com/)から手に入れましたが、設計図だけの存在ということもあり、コクピットの内部はよくわかりません。したがってあやしげな計器パネルは今回は本体のjuef128にはもうけませんでした。かわりに、別に改造用に用意して呼び出せるようにした機体のjuef128_customの方に、当時の他のドイツ機のものを借りてつくりました。また、一からの自作のようにいいながら、車輪やパイロット、ジェットエンジンの炎など、機体本体部分以外のところでは、他機種のものをかなり流用してしまっています(^_^!)。

 以下に、3Dモデリングの概略を記します。実際とはいうものの、もっぱら手順と操作の個人的覚書となっています。

【実際】

〔使用ソフト〕

 3Dモデリングソフト  Blender version2.49b
 画像処理ソフト    GIMP 2.6.11

〔3Dモデリングの概略〕

 Blenderを用いた3Dモデリングの概略を示します。扱うのはFlightGearにはない機体であるJunkers Ju EF128。

blender

↑blenderで3Dモデリング中のJu EF128

①Blender起動したら、まずモデリングのためにトレース用の三面図を読み込み,Top、Side、Frontごとに背景に配置します。
   ※Window Typeは特に断らない限りは3D View。テクスチュア貼り付け時はUV/Image Editor。
   用意した三面図の読み込み:[View]→[Background Image]→[load]   位置,サイズ変更可
   ビューの切り替え:[View]→[Top]or[Side]or[Front]
②機体の胴体にする円柱形のメッシュを用意し、あらかじめSubdivideを実行し変形しやすいように格子を幾分細かくします(注1参照)。
   メッシュの選択:スペースキー→[Add]→[Mesh]→[Cylinder]or[Cube]・・・
   メッシュの細分化:wキー→[Subdivide]
③下絵をトレースしてメッシュを変形させて、胴体の形に整えていきます。主翼や尾翼、キャノピーなども同様に立方体や球などのメッシュからこしらえていきます。
   削除:Xキー
   複数頂点を変える:bキー→円形カーソル→左クリック→頂点が黄色に
    同解除:右クリック
   頂点を一括選択:aキー
   変形:gキー(移動)、rキー(回転)、sキー(拡大・縮小)
   マウス:左クリックで変更確定、右クリックでキャンセル、ホイールボタンで拡大・縮小表示
④おおよそ形が整ったところで、まだ角張っている表面を滑らかな曲面を描くように、Set Smoothを実行します。
   表面を滑らかに:F9キー(or[Buttons Window]→[Editing])
          →Link and Materials→[Set Smooth]
    同解除:[Set Solid]

blender

↑blenderでテクスチュア貼り付け中のJu EF128

⑤機体の3Dモデルが完成したら、その表面に貼り付けるテクスチュアの読み込みを行います。
   テクスチュアの読み込み:Window Type→[UV/Image Editor]→[Image]→[Open]
⑥テクスチュアをうまく貼り付けるために、3次元の機体を2次元に展開できるよう、3Dモデルに切れ目を入れるMark Seamを実行、Unwrapします(注2参照)。
   切れ目を入れる:目的のメッシュの頂点選択→Ctrl+eキー→[Mark Seam]
   テクスチュアの貼り付け:切り出したい範囲の頂点をすべて選択→→uキー→[Unwrap]
⑦Unwrapで切り出された格子を、UV/Image Editorでうまくテクスチュアと合うように調整をします。
   UV/Image Editor:Window Type→[UV/Image Editor]
   <★便利>頂点を自動整列させる:wキー→[Align Auto]
⑧テクスチュアの貼り付けが終われば完成です。acファイルに書き出し保存します。
   acファイルの書き出し:[File]→[Export]→[AC3D(.ac)]→ファイル名指定→[Export AC3D]
             (注意)すべてのオブジェクトが選択状態(ピンク)であること。
       同読み込み:[File]→[Import]→[AC3D(.ac)]→ファイル名確認→[Import AC3D]

注1)円柱の格子は、胴体の形状にふさわしい粗くもなく細かくもない適当な数にすることが望まれます。Subdivideを利用する方法では、輪切の数を増やせば格子が細かくなってしまいます。あらかじめ縦切りの数の少ない角柱からはじめたのでは、Subdivideで格子が細かくなっても、角柱のままで円柱に近づける何らかの処理が必要になってしまいます。考えられる他の方法としては、Duplicateで円柱のコピーをつくり、Join Objectでひっつければ、格子が細かくならずに輪切の数が増やせます。ただし、Set Smoothにしたとき変にならないよう、VerticesからMergeを実行しておくことが必要です。
 ここでの記述は、Blenderを使い始めて日が浅かった頃のもので、内容的に不十分さが否めません。Blender自身もその後バージョンアップされていますから、全面的に書き改めてしかるべきなのですが‥・。何よりも、Blenderの「押し出し」機能はもっと多用されるべきです。eキーを押せば、その時選択されている頂点がいわばコピーされます。自在に広げたい方向に頂点を移動させれば、新たな面、メッシュが生成します。この便利な機能を「押し出し」というわけです。
 バージョンの違いがありますから、不用意なことは書けませんが、必須な機能の漏れについて補足しておきます。細部を拡大して細かい作業をする場合、画面の端にある部分が真ん中にくるように画面を移動させることができれば作業がしやすくなります。shiftキーを押しながらマウスを左クリックして画面を引っ張れば、移動することができます。また、fキーを用い、頂点を結んで面を新たに作成する必要にもしばしば直面することでしょう。

注2)Mark Seamを実行すると、実際にもその部分から3Dモデルが切り離されて分割してしまうようです。いったんUnwrapしてUV/Image Editorでテクスチュア貼り付けを実行したあと、Clear Seamしておけばよさそうな気がしますが、保証の限りではありません。いったん分割されてしまった場合は、VerticesからMergeを実行して、面倒ではありますが分離してしまった頂点同士を結合させれば元に戻せそうです。

[2011/08/01][2012/12/01更新][2013/12/27修正][2014/08/10修正][2018/04/23刷新]

「仮想飛行」(virtual flight) by virt_fly