Mayaのプラグイン開発を学び始めたのは、修士論文がきっかけだった。
研究テーマは自分で決めたわけだけど、やたらと壮大な妄想を描いて、モデリング・アニメーション・レンダリング全てが実装されていないと実証できない内容だった。もちろん全て自分で実装する時間もスキルも全く持ち合わせていなかった。(当時そこで諦めなかったのはちょっとエライというか、無謀だったと思う)。
そこで、身近な統合CG制作ツールの力を借りようと思った。
この本を買った↓

サンプルコードのページ
この書籍は英語版だと第2巻も出版されている。

それまではJavaを使ってレンダラを書いていてC++も初めてだったので、まず、本に載っているサンプルコードが読めなかった。C++の入門書を買って、短いサンプルを読むところから始めた。
サンプルコードをいじって、だんだんプラグインのお作法が分かってきたところで、もともと専門だったレンダリング関係のプラグインを書こうと思い、Shaderを作ってみた。Maya標準レンダラには無い、Cook Torranceモデルを実装したShader。当時としてはまだ珍しいフルHD解像度でYouTubeにアップした↓
その時書いたコードはあんまりキレイじゃないけど、とりあえずGitHubに上げておく。
書籍はもう絶版になっちゃったけど、最近はネット上でMayaプラグイン開発に関する日本語の情報が結構手に入る。デジタルフロンティアさんのブログ記事が参考になるかも。
はじめてC++で書くMayaプラグイン
2014年6月23日追記:
この書籍にShaderの書き方は載っていません。書籍はMayaのソフトウェア構造の解説がメインで、コマンド・ノードPluginの例が載っている。ノードPluginのお作法が解ると、応用でShaderノードも書けるようになるという話。
今時Maya Rendererはあんまり使わないんで、実用目的のShaderならmentalrayとかで実装した方が良いです。
関連記事
定数
Maya には3 種類のシェーダSDKがある?
Unityの各コンポーネント間でのやり取り
OpenCVでPhotoshopのプラグイン開発
映画『ブレードランナー 2049』のVFX
OpenVDB:3Dボリュームデータ処理ライブラリ
CLO:服飾デザインツール
iOSデバイスのためのフィジカル・コンピューティングツールキ...
OpenFace:Deep Neural Networkによ...
オーバーロードとオーバーライド
ROMOハッカソンに行ってきた
Maya LTのQuick Rigを試す
SIGGRAPH ASIA 2009で学生ボランティア募集し...
Raspberry PiでIoTごっこ
ガメラ生誕50周年
立体視を試してみた
Houdiniのライセンスの種類
Autodesk Mementoでゴジラを3次元復元する
Phongの表現力パネェ 材質別のPhong Shader用...
単純に遊びに行くのはだめなのか?
Unity ARKitプラグインサンプルのドキュメントを読む
DCGAN (Deep Convolutional GAN)...
ZBrushで人型クリーチャー
MFnMeshクラスのsplit関数
Blender 2.81でIntel Open Image ...
ZBrush 4R8 リリース!
フィーリングに基づくタマムシの質感表現
オープンソースのネットワーク可視化ソフトウェアプラットフォー...
映画『シン・ウルトラマン』 メイキング記事まとめ
Konashiを買った
Mitsuba 2:オープンソースの物理ベースレンダラ
Oculus Goを購入!
Mayaのレンダリング アトリビュート
NeuralNetwork.NET:.NETで使えるTens...
ラクガキの立体化 胴体の追加
Ambient Occlusionを解析的に求める
トランスフォーマーロストエイジのメイキング
Unityで強化学習できる『Unity ML-Agents』
LuxCoreRender:オープンソースの物理ベースレンダ...
写真から3Dメッシュの生成・編集ができる無料ツール『Auto...
ZBrushでアヴァン・ガメラを作ってみる 腕の作り込み
CGレンダラ研究開発のためのフレームワーク『Lightmet...

コメント