Apr 07, 2010

Mandelbulb in Glass Case

1ヶ月ほど前からちょこちょこ弄っているマンデルブロー集合の 3D オブジェクトをガラスケースに入れて。

ch_20100407_mandelInGlassCase.jpg

Modeling & Rendering: Cheetah3D 5.3 ( + Mandelbulb.js script )

フラクタルは、なかなか奥が深い。じーっと見入ってしまう。 (Wink)


まとめ

  • Cheetah3D 5.3 64ビット化のおかげで、1000万ポリオーバーのオブジェクトでも、普通にレンダリング出来るようになった。
  • Cheetah3D + 外部プログラムとの連携は強力
    このオブジェクトはポリゴンスクリプトで生成したんですが、やはり JavaScript で計算するにはかなり荷が重い、ということで、フラクタルの計算・メッシュの計算自体は 0S::system() 関数を使って外部の Objective-C ( Foundation フレームワーク )プログラムを呼び出してます。実はフラクタルのループ計算・メッシュ計算は外部 C プログラムでもかなり重くて、プログラムの内部で GCD (Grand Central Dispatch) の仕組みを使って並列化してます。これが非常に簡単で強力でした。 (Laugh) Cheetah3D を単なる 3D インターフェースとして使えるので、Cheetah3D + bullet とか、可能性はいろいろ広がりますね。
  • フラクタルの細かい感じをレンダリングするには、計算グリッドからメッシュ化するやり方はコスト高 (Tongue) ただメッシュ化してしまえば、Cheetah3D でいろんなシーンを作れる強みはありますね。

スクリプトは整理して公開する予定です。

Comment

No Comments

Post Your Comment


(Smile) (Wink) (Laugh) (Foot in mouth) (Frown) (Gasp) (Cool) (Tongue) (Ambivalent) (Angry) (Cry) (Sealed) (Touched) (Undecided) (Yum)

You must fill all *s. e-mail won't be publicized.