忍者ブログ

趣味.log  趣味関係の事をつらつら垂れ流す忘備録というかlog.3DCGで映画でも作りたいと思ってる。ゲーム作成なども。機械工学系の事も書くかも。

RSS TWITTER RssTwitter

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

流体シミュレーション

 自分用のログなんで、ですます調を使わないようにしていたんですが、かえって書きづらいので今回からそっちで書きます。

 流体のシミュレーション機能を使ってみました。買った本には煙しか乗ってなかったのでネットで探したんですが、2.4バージョンのものばかりで「えっ、そんなボタンない……」の連続でした。2.4と2.6は結構違うんですね。
 結論から言えば、2.6ではシミュレーション機能を使用するのに、わざわざBlenderゲームに変更しなくても良かったみたいです。というより、ゲームの画面にすると流体のシミュレーションは出てきてくれません。いつも使っている画面で使えます。

 簡単にやり方をメモしておくと、プロパティのオブジェクトモディファイアーから流体を選ぶんです。そうどのサイトにも書いていたんですが、なんせ使い始めたばかりで用語が良く分からず、???でした。
 先ず、プロパティってどれの事?から始まりました。これは、いつも使っているレンダリング設定とかマテリアル設定とかする右側のアレのことです。それから、オブジェクトモディファイアーはスパナマークのアイコンです。そのタブをクリックして、出てきた画面で「追加」を押すと色んな機能の一覧が出てきます。こんなに豊富なんだとちょっと驚きました。この中に、「流体」があります。
 そして、流体を押すと、タブの一番右端にあるボールが跳ねたアイコンをクリック。これが「物理演算(physics)」のアイコンで、その名の通り物理演算の設定を行うタブです。この画面で流体の設定をしていく事になります。
 さて、その設定をする前に準備をしなければなりません。その準備とは「流体が流れる空間を作る事」「流体の元となる物体を作る事」です。僕は設計で使用するようなCFD(流体の圧力や流れなどを理論式に基づいてより厳密にシミュレートするソフト)も使った事があるので流体の空間を囲むのには違和感なく、理解できました。これは自分が流体を流したい空間を任意の形のモデルで覆ってしまうんですね。そして、その中に流体になる物質や障害物を入れます。
 準備ができると、物理演算のタブをクリックした後、「流体の流れる空間」の物体を選択して、タブ画面上のタイプで「ドメイン」を選択。すると色々でてきました。あまり詳しい事は分かりませんが「時間」が流体をシミュレートする時間を設定する所なので、そこだけす押し増やさないと直ぐに動画が途切れてしまいます。
 そして、流体ワールドの中の粘性のプリセットで任意の流体を選びます。ねちっこさを決めれる所なので、取り敢えず、水を選択。一応。これで今回の設定は終わり。
 次に流体そのものを設定していきます。「流体になる物体」を選択後、物理演算のタブで、いろいろ選びます。まず、そのものが流体に変形して欲しい場合は「流体」、そのものから無限に流体が噴き出して欲しければ「流入口」です。「流入口」の場合は、XYZと書いてある値を弄って、流体を噴出する速度を設定する必要があります。因みに他にも色んな選択肢がありますが、取り敢えず、一度流体シミュレートしてみれば他のも名前から、どんな機能かなんとなく分かります。
 あと、流体に干渉するのはここで設定している物だけなので、流体でなくとも、流体と干渉して欲しい物質などは「障害物」を選択しておく必要があります。
 さて、流体の設定も終われば、ここで「Alt+A」でシミュレート……ではなく。流体の場合は、「ドメイン」に指定した物体を選択し直し、「ベイク」をクリックしなければなりません。これで流体シミュレートの計算開始です。
 暫くすると、上の方に出ているゲージが満タンになって消えるので、それでシミュレート計算が完了。シミュレートの結果はフレームごとに保存されているので、下にある再生ボタンかレンダリングをする事でシミュレーションの動画を見る事が出来ます。
 あと、カクカクしているのが嫌で流体の解像度を変えたい場合は、「ドメイン」の物体を選択して、「ベイク」ボタンの下にある解像度を上げます。但し、計算に必要なメモリも増えて書きだしにも時間が掛かるので、徐々に増やしていく事をお勧めします。

 そして、作った動画がこれ。

 立方体から流体が噴き出して、下に溜まっていくだけの動画ですが、出力されたのを見て結構感動しました。フリーソフトなのに、こんなリアルなんですね。凄い。
 因みに解像度は150に設定して書き出したんですが、大学の研究室で使っているPCを使ってもかなり時間が掛かりました。ミドルエンドのPCとしてはそこそこのスペックなんですが……家のだと80とかでも厳しかったです。
PR

Blender導入とセット作り

 3DCGでアニメーションを作る為のフリーソフトと言えばBlenderが有名らしい。色々と調べた所、有料のソフトと比べるとややレンダリングが劣るものの、そこそこ綺麗な映像が出力できる模様。しかも、このソフト一つでアニメーションの作製だけでなく、モデリングも出来る。さらに布や流体の動きから、軟体の変型や剛体の衝突まで再現できるシミュレータも備えている。これが無料であるのだから、良い時代になったものだと二十代ながら思う。(Blenderについてはこちら

 ただ、いくらモデリングが可能といっても背景となる建造物等を全部一人で作るのは不可能に近い。別に建造物や小物のCGが作りたい訳ではなく、映像作品が作りたいのだ。逐一小物などのセットを作っていては映像に行く前に心が折れる。そこで、素材を探した所「Shadeアンロックデータ集」に行きついた。これを変換してBlenderで使えば十分な量の素材がそろっている。試しに、このシリーズの「エクステリア・セレクション」を購入。

 これをShadeの体験版を使って変換し、取りあえずBlenderの操作に慣れる為、試しにちまちまと街を構成していく事に。アンロックデータ集なので、ファイル変換も自由で他ソフトでの使用も許可されているのはありがたい。

 Blenderがインポート出来て尚且つShadeがエクスポートできるファイル形式は[.obj]と[.3ds]で、それぞれ書き出して見たけれど、それほど差はないように感じる。ただ、もしかしたらテクスチャ関係で何か有るかもしれないので、この辺りは後日きちんと調べる必要がありそう。

 この変換工程で先ず失敗したのが、「取りあえず」と思って複数ファイルを同一フォルダに保存した事。テクスチャが被って標識などに店の看板用テクスチャが張られたりと初回の書き出しは散々な事に。結局、一つ一つファイル分けして変換のし直し。今後もこれは気をつけたい。
 また、本来透過処理されている筈の素材が背景白になっていて、柵などは上手く出力出来なかった。これは地道に自分で透過処理してそれをBlender内で反映するしかなさそうだ。因みに、3ds形式の場合は何故かwindows向けのテクスチャ書き出し設定では上手くいかず、png書き出しに直すと上手くいった。しかし、この場合も背景白で透過は反映されないよう。
 あとは、描きだしたデータは一塊ではなくいくつものパーツに分かれているので、そのまま扱うと場合によっては面倒な事になる。そこで、一度適当な場所を右クリックで選んだ後、Bを押して短冊上で素材全体を選択。その後、Ctrl+Jで結合できる。ただ、このせいでテクスチャが狂ったかもしれないので色々試して見る必要がありそう。

 試しにシーン素材を基に他の建築物や看板の素材を追加して街角を作ってみたが、この時、自分の古いPCではフリーズが多発。調べてみた所、一つ一つのファイルが大きい。どうも分割して面を作る時のメッシュが細かすぎるよう。分割なしにして書き出すと、多少荒くなるもののPCの動作はなんとか使えるレベルになった。ただし、車類はある程度細かくしないとタイヤが四角形になったりと散々、純正品じゃないから仕方ないけど。また、取り込んでからエディットモードで削除→限定的溶解で影響がない程度にメッシュを減らすのもデータの軽量化には有効そう。

 まあ、そんなこんなで作った街角のセットがこちら。


 車やらが倒れているのは、街中をテクニカルなドライビングをする車の映像を作ってみようと思った為。その為の障害物として看板やら車やらがある。看板や柵などは絵エディットツールのナイフで曲げたい所を切り、地道に曲げていった。ナイフのショートカットはKで、点の選択のためのツールのショートカットはC。ただ、このセットを開くとメモリーが3GB程食われてCPUも苦しそう。ちょっと当初予定していたドライビングの動画は厳しい。
 しかし、このまま終わりではもったいないので、一応、町並みをめぐる動画を書き出し。照明を太陽光にして、ワールドで環境光を適当に水色に設定した。フレームレート24fpsでpngファイルを書きだしたものの、早すぎて何が何やら分からなかったのでムービージェネレータを使い、12fpsでまとめ直したので少しカクカクしてる。



 これだけでも大分書き出しに時間がかかった。まあ、暫くは使い方やモデリングの勉強をするので今のPCで事足りるが本気でアニメーションを出力するとなると、CPUを買ってメモリも増設する必要がありそうだ。GPUレンダリングも使えたら使いたいが、さすがにお値段が跳ね上がるのでぼちぼち……CPUを買う余裕すら苦学生の自分には今は無いので。

 今週はこのぐらい。来週はモデリングかシミュレーションの勉強かなぁ。
| HOME |
Clear