そういや、まだCOFFEEが存命な頃C4Dでもできてたよな、、、と思ってソースをPython用に書きなおしてみました。
といってもきっかけもなく唐突に懐古主義でつくってしまったというわけではありません。
まだ、C4Dを使い始めてそんなに経っていない2014か2015の頃だったと思います。
COFFEEのコードは自分で書いたものではなく、多分ドイツの数学関係の研究か何かをされている方の
ページにアップされていたモノでした。
話を戻して今なぜパラメトリカルといいますかマスマティカルなオブジェクトを作りはじめたのかといいますと
以前から興味のある工業用3Dプリント分野のベンチャー企業がスタッフ募集をかけており
(副業、アルバイトも可。未経験者考慮します。みたいな文言あり)
映像仕事も薄々で知りたい欲をどうしようもなくくすぐられたので駄目元で問い合わせたところに端を発します。
結果は、、、というか結果はありません 笑
応答がありませんでしたから 汗
まー未経験だししょうがないよな、でも、自分が同じ立場なら返答ぐらいはするな、一企業として。
飛び込みの問い合わせというわけでもないしと思いつつも
諸条件の優遇されるスキルを見返してみるとRhinoでGrasshopperが使えるってのがあったのです。
もちろんRhinoの存在自体は知っていました。映像関係の仕事をやっている中で
自ら使う機会はもちろん、使用者に出会うこともなかったので興味を持つことがありませんでした。
3D-CADの一種なのだろうという程度の認識です。
今回webページやyoutube、チュートリアルなどをあたってみたところ、
RhinoはNURBSを中心としたモデリングツールでGrasshopperは最新版では実装されている
ノードシステムの操作ツールなんですね。
サンプルの中に今回作成したクラインの壷などもありました。確かに色々できそうです、モデリングに関しては。
しかし、RhinoとGrasshopperが使えれば偉いという印象はなくHoudiniほどの唯一無二感、迫力は全くありません。
それなりにC4Dを使ってきた人間としては
このくらい、いや、にたようなことはC4Dでもできるんじゃないだろうかと思ったんです。
MoGraphやFieldにしても手続き型でパラメトリックな操作ですし、
GrasshopperのノードシステムでのプログラミングってことでいうとXPressoはまさにそれですよね。
てことで今回やってみたわけです。
Cinema4DR20でとりかかる
ツールの進化として過去にできていたことが、できなくなるってのはできれば避けたいことだろうと思うので
COFFEEでできていたことはPythonでもできるはずという思い込み、希望的観測を拠り所に始めました。
最初GrasshopperにならってXPressoのノードを中心に構築しようかと思ったのですが面倒くさくなりすぐにやめました。
興味のある方はどなたかチャレンジしてみてください、多分複雑にはなるでしょうけど。
Pythonに変換していくにあたってオブジェクトをインタラクティブに操作できるようユーザーデータを実装しました。
元々のCOFFEEスクリプトは実行するとダイアログがでて、パラメーターを設定し
決定するとポリゴンオブジェクトが出力されるという仕様でしたが
オブジェクト出力したり、消去したりするのも面倒ですしね。
パラメータ操作でアニメーションできるのは一つのめざす形・機能でした。
今回関係ないことをやっておいて宣言するのは変ですが
RhinoとGrasshopperがその方面で有利にはたらくスキルなら準備が整ったところで90日間のトライアル版をインストールし
評価もかてねつかってみようとおもっています。
映像仕事もいくつか入ってきてますし、採用されることを目指すことはありませんが
自分でも3Dプリンターを購入するなりCNCを購入するなりしてGコードってやつを出したりしつつ使ってみようかなと。
今の所そっち方面のモデリングはFusion360を使ってますが、比較対象にもなると思うので。