[back]

【雑記】
2006/2/28


仕事で扱うかもしれないのでVertex/Pixel Shader周りを調べてて、ふと年末にPCを新調して色々入れ替えた際にShader使える環境になってた事を思い出し何となくGLSL(OpenGLのShader)をいじる.

最初は何じゃこの使いにくいオモチャは(失礼、まぁあくまで静止画向けレンダラのShader言語と比較したら所詮オモチャでしかない)と思ったり、アセンブラレベルでは光源データすら持っていなかったりGLSLレベルでもシャドウマップを使うのにテクスチャチャンネルを消費してしまったり、Oren-Nayerの計算すらまともに乗っけると結構重いのでテクスチャなどを併用したりといった仕様にどうにも使い辛い上に(静止画レンダラと比較して)どうにも表現力も貧弱でだるいという印象しかなかったのだが、バンプ・ノーマルマップを実装した辺りから微妙に楽しくなってくる、やはり表現としての法線摂動は偉大なのだなぁなどと改めて実感.

という事でLWOを読み込んでLW上のBakerで作成したノーマルマップを適用したものとか(LWのCrumple)

まぁそんな具合でこれがグリグリ回る、LWのデータをキャプチャしているのでバンプに関してはLWと同じように出る. と言ってもそれで別段何をするというワケでも無いのだけど、ちょい余興として一通りの表現力のあるものを作ってみるのも悪くないかも.

# というかリアルタイム3Dのバンプって思いの他かったるい(実装が)、その割に完全とは言い難いし. そういった意味もノーマルマップが騒がれた理由ってのがあるのかなーなどと思ってみたり ;-)

---------------

年末にどこぞで3D Viewerで盛り上がってた時も思ったのだけど、現状2Dと違って3Dで安直にその持ち味を生かしながら一般に公開する手段というのは現状かなり限られているんだよねぇなどと思ってみたり、結局レンダリング品質に近いレベルで見せようとするとレンダリングするしか無く、まだまだリアルタイムShaderなどの表現を安直に遊べる環境というのは無い(※1)

Shader前提にしたらカラーと幾つかのチャンネル、バンプ辺りと組み込みの特殊なシェーダ表現、キーライトとして最低1個の影表現まであればそこそこ見せられるようにはなる気もするし、そういった意味ではその分野もそろそろ要素は出揃ってきたのかもしれない、後は対応ソフトとエンドユーザーが簡単にオーサリングできる環境があればそこそこいけるのではないだろうか、という気もする. まぁ自分が作るつもりも特に無く、ただ思ってみただけってヤツですがね、ええ ;-)

※1) まぁそれが消費者側に面白いかは作る側程の思い入れは無いと思うのだけどね、まぁでも2Dのレンダリング画像と比較して表現がそれと遜色ないレベルであれば飛び出す絵本位の感慨はあるのかもしれない、、、個人的には飛び出す絵本大好きだけど(笑)

2006/2/21


LW9のSDKのpreview版が出てたので内容を読む、、、感想は正直ふーん、というカンジ. 細かい所には気配りは感じられる(新しいレイトレース関数や屈折率のフラグ、Shadowフラグも名前が変えられているという事は多分機能するようになったんじゃないかと期待)ものの全体としては新機能を聞いた時にどういう改修をするのかという想像通りの内容だったんで余り面白みは無い.

Nodeエディタも多分だけど既存のシェーダは入れられないか、申し訳程度に入れられても、ちゃんと便利に機能させる為にはやっぱり書き直しが必要そうで余り期待はしない方が良さげ. 今回の開発で多分シェーダ周りの不完全な部分の幾つかにパッチが入ったのは分かるけど、多分これじゃ不十分で、上のShadowフラグもこれ以外にRadiosityとCausticsの計算フラグが無いのはかなり残念、またdiffuse_colorなど幾つかのパラメータが追加になっているのだけど、この部分もまた不完全、多分BRDFカスタマイズするとやっぱりreplacement_colorを使わねばならない気がする. 本当はシェーダを2種に分けて、チャンネルパラメータをいじる所とシェーディングモデルを分離するのが良いんじゃないかと思うのだけど.

また相変わらずLayoutで無条件でポリゴンは追加できない模様、これが無い限り(あるいはReplacementプラグインのアーキテクチャを変更するという手もあるけど)インスタンスの実現なんかは難しいだろうなぁ、まぁ今のPolygonHandlerの仕様はポリゴンを作ったとしてサーフェスの設定どうするのって所(Surfaceの詳細がObjectファイルに分離された設計になっている為)が解決できないせいもあるのだろうけど.

---------------

また多分、だけどFPrimeでは相変わらずShaderのサポートはされ無い気がする. 現状HyperVoxelだけらしいので大体の実装の想像はついているのだけど、そこからSurfaceやVolume汎用のコールバック取得が無いので、プログラマの勘ではあるものの、これでは多分実装できないんじゃないかな、CGTalkのフォーラムでNewtekの広報がFPrimeのサポートについてノーコメントを通してて、その上で「我々がサードパーティの開発スケジュールにコメントはできない」と言ってたけど、ある意味この姿勢は正しいけど、なんかSDKの中身を見るとちょっとずるいんじゃないかなぁと思ってしまう(まぁ、あくまで予測だけど)

カメラシェーダはまぁ小手先なので割とどうでも良いのだけど、確か今までLWは1次レイはスキャンラインで、それ以降をレイトレでレンダリングしてたのだけど、このアーキテクチャだとスキャンラインアルゴリズムが使えないので全てレイトレになるか、あるいはClassicカメラの場合のみスキャンラインを使うのかなぁ、とすると今までのLWのレイトレエンジンの性能はお世辞にも良いものでは無かったけど、この部分に手が入る可能性は期待しても良いのかも?

SubPixel Displacementは言及しているSDKのそれらしい情報が無かった事を考えるとやっぱりSubdivision Surfaceの分割がスクリーン適応になったからその副次効果でSubPixel対応できるようになったよってだけの話な気がする. まぁいいけど(※1)

などなど、まぁグダグダ書いてきたけど、改善されるのは良い事だと思うし、それ程画期的なものを期待しなければ細かい改善としては悪くは無い印象. 逆説的には大規模なワークフローの部分はほぼ(SDKレベルでは)改善されてないっぽいので良くも無いという話で、オブジェクトの管理やインスタンスなどのモデルを改善できない限り何処まで行ってもミドルエンドで他のソフトには並べない事も確かなんだろうけど、この辺はある程度は使い方次第って気もするしね :-)

# そういった意味ではMotionプラグインも今の形式じゃなくてタイムラインレベルで無いといかんのだよなぁ、んでモーション評価の順序なども安定してプラグインから取れない事には、、、:-<

※1) この部分、丁度Cutmull-Clark曲面の適応分割に関する論説がちょっと前にコンシューマレベルの読み物(not 論文)に発表された経緯があって、自分が知る限りそれ以外では一般レベルの書籍でこの内容について言及した物が無かったと思うのだけど、時期的にもそれを乗っけたんじゃないかなぁという気もしなくも無かったりするんだけど、どうなんだろう?(^ ^;;

---------------

DHMさんがノードベースと専用シェーダについて書いているけど、個人的にはそこまで悲観したものじゃないと思うのだけど(^ ^;;

一応ほぼ1年前ノードシェーダを出して、ユーザーの質問や他の人の作ったシェーダツリーなんかも見てきたけど、そこでの感想はやっぱりノードベースは難しいのだと思う. 時に思いがけないエフェクトを組んでいる人がいて感心する事はあるのだけど、そういったエフェクトは概ね全ての種類のライティングで一貫性を持ったエフェクトを提供するかというと必ずしもそうでは無く、やはりこの辺はプログラマとデザイナーの知識の乖離なんじゃないかなぁと.

所詮ノードエディタの主眼とする所はテクスチャ単位で質感を割り当てて、それぞれにコントロールし易いシェーディングが割り当てられるなら何でも良いのではという気もするのだよねぇ、確かに質感設定にある程度リソースを割けるような大手プロダクションには便利なのだけど、必ずしもそれだけが解では無いというか.より複雑なアルゴリズムに関してはもっとこの限界が顕著で、例えばRenderManシェーダをNodeに乗っけるような事やるとホラーにしかならんし、よくノードベースでカスタムシェーダが作れるというような説明があるけど、それはそのソフトの標準よりも優れたエフェクトを手間をかければ実現できるという程度で、細かいBRDFや反射エフェクトをコードを書いて実装するという所から見るとオモチャのような話、目で見て簡単だからって誰でもシェーダが書けるようなものじゃない、そういった意味では(LW9にノードのSDKが用意されているように)あくまでエフェクトを組み合わせるレベルのもので、それ以上のものでは無いんじゃないかなぁというのが、ここ1年見てきての感想.

LW9とユーザーコミュニティの使い方が今後上手くこの見通しを裏切ってくれるような状況になれば、それはそれで面白いのだけど;-)

# LW9が発表されたらLW9のチャンネルモデル(diffuse_color)とかエミュレーションするヤツをShaderTreeに乗っけてみるのも手かなぁなどと、多分LW7/8でも動かせるものは作れるだろうし(笑) まぁNodeプラグインなんかは無理だけど(あるいはエミュレーションレイヤとプラグインDLLのローダを作って自前でActivationすればある程度は可能な事は分かってるけど、そりゃやりたく無いし(^^;;

---------------

先日買ったムーミン童話読んでいるけど、特に後半の話は全然子供向けの「童話」じゃないなぁ. 「ムーミンパパ海へ行く」「ムーミン谷の11月」後短編集「ムーミン谷の仲間たち」辺りは結構えげつない(笑)

気に入ったのが短編集に入っている「ニョロニョロのひみつ」という話、ムーミンパパが平穏な生活に疲れてニョロニョロについていってしまう話なのだけど、ブラッドベリの短編小説のような乾いた空間と何処までも広大で無機的な雰囲気. そこでニョロニョロがびっしり充電されていてもその向かう先が無い為何も感じる事無く、ただ夕立の中でだけ感じる事ができる為、ひたすら地平線を目指すうちにパパも段々ニョロニョロに似てきてというお話.

何か現実世界と似ているなぁという所、ふと我に返った時周囲の人間や構造物がプラスチックの塊のように見える現実感と価値観の喪失、そこにある存在そのものの虚無感、あるいは世界そのもの、逆説的には己自身が立つ位置に何も存在しないという虚無感か. そういった意味ではおよそ人間というのはこのお話のニョロニョロにそっくりだと思ったり;-)

# などと普段の日記と毛色を変えたネタもたまには良いでしょうという所にて.

2006/2/18

友人の結婚式があったので出席、といっても2次会以降.

結婚というものについて個人的には何ら特別な感情は無く、人生における一つの通過点でありここから更に続くものの一部という認識でしかないが、それを受け止める側にとって何か意義を見出すのならば、それはその人にとって記念すべき事なのだろう. そしてその友人にとっても然り、彼と彼女がそれの意義を考えそれを人生において特別なものにせんと望むのなら、その思いに対し素直に祝福したいと思う心からおめでとう!!

そしてその席での興味深い出来事、前の会社の友人の結婚式という事で、辞める前に関係のあった会社の人間と話す機会があったのだけど、そのうちの幾分かについては働いている当時あんなに嫌っていた (表現的に「嫌い」というのは適切では無いかもしれない、むしろ「怒り」に近い感情か) 筈なのが、話してみて何の苛立ちも無く、むしろ自分が過去に関わった人間という事でのある意味自我の自己満足という事では、彼らの前途が幸せであれば良いと思う気持ちになっている事に気付く. まぁそれと仲良くなれるかという話は別問題ではある、人間特に老いてくると共通の話が無い事には交友関係というのは維持できないものだからで、話題や興味の偏っている自分としては他人と共通の話題を見出す事は難しい、まぁでも別段彼らが退屈だとかいう話では無くそこはお互い様という所の微々たる話だろう(※1)

全く人間というのは実に面白い、普段はある種の皮肉めいた含みを(少なくとも)幾分かは含みながら思うのだけど、今回はある意味非常に気持ちよくそう実感した気がするし、何よりその感情が自分にとってすごく楽しかったのだから、これは面白いという他無い.

※1) これまたある意味不思議な話、子供の頃はもっと誰とでも仲良くなれた気がするのだが、年月を経る事で興味の範疇が限定されて行くのか、あるいは過去の知識からの無意識が取り込む意義を取捨選別するのか、自我は記憶により形成されるがその情報の蓄積は何をもたらさんとするのか等々、考えてみると興味は尽きない.

# 年老いて更に饒舌により多くの言葉を以って何かを表せるようになるのだが、それに反しこの根元にあるものの危うさと脆弱さは一体どのようなものだろうか、などと考えてみたり.

2006/2/15

確定申告の季節、もう数日探しているのだけど領収書の一部と公共料金の一部が見つからない、、、orz

つーことでゴタゴタ、まだ暫く続きます.

2006/2/9

Vue5のアプリケーションCDが届いたので暇をみてはLWとの合成の可能性を模索、現状この程度までは何とか


【Vue5 InfiniteとLWの合成結果】

上の絵では球体のみLWでレンダリング、背景及び草はVue5のEcosystemで生成しレンダリングした画像をLW上でPixelFilterで合成.

厳密なDepth合成やVueのレンダリング画像に落ちるLWObjの影は独自に合成用プラグインを書いて対応. なお単純にDepthといってもLWのDepthはカメラ投影面からの垂直距離が出力されているのに対し、VueのDepthは各ピクセル座標のカメラ位置への距離が入っている為、LWのDepthチャンネル情報は使いものにならずVueと一致させる為にLWのシェーダで情報を収集してVueと同じ方式のDepthを使用(※1) Vue側ではそのままだとDepthがグレイスケール変換されて正確なDepthが取得できない為スクリプトで生のDepthをダンプしている、、、ちょっとめんどくさい:-< 影の合成はVue側のDepthから求められる座標をLW上で実際にシェーディングしている、現状法線は考慮していないので、この辺を工夫すればもう少しシェーディング輝度分布に正確な影を表現できるかも.

ある程度は上手く行くものの一番奥の球体と地面の交差部分など、方式の違いからdepthチャンネルが完全には一致しない為、使い方としては背景をVueで作成し、細かく動くObjectをLWで作って合成するのが妥当かもしれない.

Vue側を2倍解像度でレンダリングすればLWのObjとの交差部分もアンチの対象にできるかもしれない、等々.

※1) テスト過程でこのような形式を取っているけど、実際には(精度が許せば)Vueの位置座標をLWのDepthに変換する方が妥当、そうすればShaderも必要ないし、Volumeや他のPixel系のエフェクトとも(それがDepthを修正していれば)合成可能な筈.

# というかこの所少々忙しいので余りまとまった時間が取れないのが悩みorz

追記)
何とか法線も取れた(Vueがバグっているのか実際のイメージの高さ-1までしか取れないので少々誤魔化しorz)のでLW上でdepthと法線の情報から再照明を試みる.

この例では球体のみLW上のジオメトリで草と四角形はVue上のジオメトリになっている、ってまー見ても何やっているのやらという所かもしれないけど(苦笑)

VueのスクリプトがPythonになっているので少々Pythonを勉強中、メタセコでも今度スクリプトで使えるようになるらしいし. それなりに面白い、しかしユーザーコミュニティの規模が大きいせいか、やたらと機能てんこ盛り(笑) まぁそれなりにそれなり、でもGC周りが少々頂けない気がする(勘違いの可能性もあるが(苦笑)

---------------

「マダガスカル プレミアム・エディション」DVDを購入、レンタルで既に観たモノなのだが特典の「ペンギン大作戦ディスク」が欲しかったので、特典ディスクの内容は本編でも登場していたペンギンが活躍するショートフィルム、10分程度の内容なのだが(だからこそ)素晴らしいの一言に尽きる、10分という短時間でここまで面白く話として詰め込まれたものが作れるというのは実に素晴らしく、期待以上の買い物で、個人的には傑作と呼べるレベル.

マダガスカル本編もそうだが、動きの見せ方やカットの配分がCGというよりはパペットアニメーションに近い気がする. 一見シュレックやシャークティルよりもショボく見えるモデリングも実は結構細かく作られていて表現手法の一環だったのかなぁといった所. 話自体は大したこと無いのだけど、通常のコマのテンポとキレが素晴らしく良く出来ているのでむしろそちらを楽しむものなのかもしれない.

# 同じCG系統でもディズニー(というかPixar)のは観る気がしないのだよねぇ、食わず嫌いは良くないのだけど、技術はともかくディズニーの映画は観ていて退屈という印象が強くて、、、ナルニア物語なんかも映画化の話を聞いた時は面白そうと思ったのだけど配給がデイズニーと聞いて萎えまくり. DreamPicturesの映画もアンチディズニーからもう一歩欲しいとは思うけど、現状こちらの方が自分の好みに合っているカンジ.

# メイキングを観ているとnoboyamaさんの作られている伸び縮みするリグと同じようなリグを使用しているらしい、本編ではそれ程伸び縮みしている所は目立たないのだけど、全体としての動きの硬さを軽減して勢いを出すには随分貢献していると思う、モーションは動きの「止め」がかなり細かく設定されているようでCG独特のキレの悪い動きは殆ど無いカンジ. フェイシャルなどの部分はメイキングを見ているとスプリングモデルを採用しているような気がする、、、等々.

---------------

講談社のムーミンの小説を全作購入、、、なんか登場人物がみんな病的、グループセラピーっぽいというか、良く言えば哲学的なのだけど(笑)

まぁ好きなんだけどね、しかし子供の頃読んだ記憶の中の話(確か青い鳥文庫)と微妙に欠けているエピソードがあるから加筆されているのかも、ちょっと本屋に確認に行く予定.

んでコレを読んで「ムーミン パペットアニメーション DVD BOX」が欲しくなる. 値段的にもお手ごろだし、試しに買ってみるのも良いかも、、、しかし7枚組630分となると全部見れるかどうか不明(そんなにTVばっかり見てたらもたない、映画の2時間ですら(面白い映画以外は)イライラして途中で別な事をしながら観ているのであります(苦笑)

 



過去の雑記
2006年 1月
2005年 12月
2005年 11月
2005年 10月
2005年 9月
2005年 8月
2005年 7月
2005年 6月
2005年 5月
2005年 4月
2005年 3月
2005年 2月
2005年 1月
2004年度


メールアドレス収集ロボット対策の為メールアドレスはHP上に記載しておりません、
ソフト内のドキュメントには記載しておりますので、御用の方はそちらまでお願いします.
since 2003/10/04, Y.Ume/Tabo