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とかで実装した方が良いです。
関連記事
『ハン・ソロ/スター・ウォーズ・ストーリー』のVFXブレイク...
ZBrushの作業環境を見直す
ZBrush 4R8 リリース!
Konashiを買った
UnityでShaderの入力パラメータとして行列を渡す
WordPressのサーバ引っ越し方法を考える
3DCG Meetup #4に行ってきた
UnityでARKit2.0
OpenCV 3.1から追加されたSfMモジュール
OpenCVでPhotoshopのプラグイン開発
PeopleSansPeople:機械学習用の人物データをU...
今年もSSII
html5のcanvasの可能性
MFnMeshクラスのsplit関数
WordPress on Google App Engine...
IronPythonを使ってUnity上でPythonのコー...
openMVG:複数視点画像から3次元形状を復元するライブラ...
映画『ジュラシック・ワールド/炎の王国』のVFXブレイクダウ...
ガメラ生誕50周年
ZBrushで仮面ライダー3号を造る 仮面編 横顔のシルエッ...
Polyscope:3Dデータ操作用GUIライブラリ
OpenCVの超解像(SuperResolution)モジュ...
ZBrushでゴジラ2001を作ってみる 身体のシルエット出...
iPhoneアプリ開発 Xcode 5のお作法
WordPressの表示を高速化する
ZBrushでアヴァン・ガメラを作ってみる 甲羅の修正・脚の...
ZBrushでアヴァン・ガメラを作ってみる 首回りの修正・脚...
第20回 文化庁メディア芸術祭『3DCG表現と特撮の時代』
Maya には3 種類のシェーダSDKがある?
Google App Engineのデプロイ失敗
定数
仮想関数
トランスフォーマーの変形パターンを覚えるのは楽しいと思うんだ
オープンソースのテクスチャマッピングシステム『Ptex』
OpenCVでiPhone6sのカメラをキャリブレーションす...
ZBrushのTranspose Masterでポーズを付け...
Amazon EC2ログイン用の秘密鍵を無くした場合の対処方...
Unity Scriptコーディング→Unreal Engi...
PGGAN:段階的に解像度を上げて学習を進めるGAN
OpenCV 3.1のsfmモジュールのビルド再び
WinSCP
After Effects全エフェクトの解説(6.5)

コメント