俺がフリーのRenderMan互換レンダラーを作るスレ
■ このスレッドは過去ログ倉庫に格納されています
開発用Webサイト
http://www.karlsland.org/
目標(ミッション)
* プロフェッショナル利用に耐えうる完全なRenderMan互換レンダラーを作成する
* リアルタイム(たぶんLarrabee)
∧_∧
( ・ω・)=つ≡つ Pixar? ボコボコにしてやんよ
(っ ≡つ=つ
/ ) ババババ
( / ̄∪
まだまだ使い物にならないのです念のため。修正BSDライセンス。
アップローダー - http://loda.jp/3dcgjoy/
* 画像はそのまま、RIBファイルはtar.gzに圧縮する。
* URLを張るときは拡張子を追加すると2chビュアーによってはプレビューできるので幸せになれる人がいる
Trude以外のRenderMan系レンダラーの話題もどうぞ。 = 公式仕様書 =
RISpec3.2 - http://renderman.pixar.com/products/rispec/
= 書籍 =
Advanced RenderMan 日本語版―映画とアニメーションのための実践テクニック
Production Rendering: Design and Implementation
Essential RenderMan
Rendering for Beginners: Image synthesis using RenderMan
The Renderman Shading Language Guide
= その他のWeb上の情報 =
Pixar's Application Notes - http://graphics.stanford.edu/lab/soft/purgatory/prman/Toolkit/AppNotes/index.html
Pixar社のアプリケーションノート
RenderMan Wiki - http://www.writing-renderer.org/renderman-wiki/
RenderMan関係のチュートリアル・RIBサンプル
RenderMan Ropository - http://www.renderman.org/
SIGGRAPHのRenderMan関係のコースノートがダウンロードできる(右上の「PUBS」から)
ティーポットのモデルなど
RenderSan - http://www.rendersan.org/
日本のRenderManコミュニティー
= 最低限知っておくこと =
手っ取り早く試してみるならPixieかAqsisをインストールして上のRenderMan Wikiからサンプルをダウンロードして実行。
シーン記述ファイルの拡張子は.rib。 テキストファイルなので見れば何となくわかる。
シェーダーの(コンパイル前の)拡張子は.sl. シェーダーは事前にコンパイルしておく。
RISpecで定義されている標準サーフェスシェーダー("constant", "matte", "metal", "hinymetal", "plastic", "paintedplastic"はいきなり使える。
指定しないとデフォルトのシェーダーが使われ、カメラ位置にライトがあると仮定して拡散面でシェーディングされる。
同様に標準ライトシェーダー("distantlight", "poointlight", "spotlight")もいきなり使える。
Advanced RenderMan 日本語版は必読
= Trudeの現在のステータス =
実装済みのRenderManインターフェース
RiFrameBegin, RiFrameEnd, RiWorldBegin, RiWorldEnd, RiFormat, RiProjection,
RiClipping, RiPixelSamples, RiDisplay, RiColor, RiOpacity, RiLightSource,
RiSurface, RiShadingRate, RiTranslate, RiRotate, RiScale, RiAttributeBegin,
RiAttributeEnd, RiPatch, RiSphere
シェーダーは"constant"と"matte"のみ。ライトは"pointlight"と"ambientlight"のみ。
プリミティブは球とパッチのみ。
確認が取れている一番複雑なシーンはティーポット。
RIBファイル - http://loda.jp/3dcgjoy/?id=455.gz
レンダリング結果 - http://loda.jp/3dcgjoy/?id=456.png
以上. テンプレ終わり メタセコイアのRIBエクスポーターのテスト
モデルはSaYaka Projectさんの所のマキシマ・サクヤ
##RenderMan RIB-Structure 1.0
version 3.03
Option "searchpath" "shader" [".:&"]
Display "Char001.tif" "file" "rgba"
Projection "perspective" "fov" 45
Translate 0 -200 300
Rotate 0 0 0 0
WorldBegin
LightSource "ambientlight" 1 "intensity" 0.08
Declare "shadows" "string"
Attribute "light" "shadows" "on"
LightSource "distantlight" 1 "from" [0 1 -4] "to" [0 0 0] "intensity" 0.8
AttributeBegin
# Head
Color [ 1.000 1.000 1.000 ]
Polygon "P" [ 0.000 229.143 1.181 -5.088 234.226 3.891 ]
Polygon "P" [ 0.000 229.143 1.181 0.000 240.217 2.492 ]
ジオメトリーは3頂点もしくは4頂点のRiPolygon.
ライトの指定もあるがサーフェスを指定していないので意味はない。
(デフォルトのシェーダーはライト無視)
法線とテクスチャーは出力されない。頂点位置のみ。
というわけで、まずRiPolygonに対応させてマキシマ・サクヤ嬢をレンダリングできるようにします。
本当は法線とテクスチャー座標も出力してほしかったのですが、まあそのうち何とかします。
mqo2rib(Ruby/MetaRed)使えば法線もテクスチャ座標も出力できますよ。
ただ、形状出力にはPointsPolygonsを使ってますけど。(分割曲面にはSubdivisionMeshを使用) makisimasakuyaはサイズ的にまだ厳しかったので、
とりあえずスタンフォードバニーをレンダリングしてみた。
http://loda.jp/3dcgjoy/?id=485.png
これでやっとスタート地点に立てたかな?
>>11
PointsPolygons実装したら、そちらも試してみます。
あと今週の木曜日にRenderManのユーザーコミュニティの集まりがあります。
興味がある人がいたらどうぞ。
Pixar's RenderMan User Meeting with RenderSan #5
http://indyzone.jp/blog/archives/2009/09/pixars_renderma_1.html
平行光源("distantlight")と"plastic"シェーダーの実装
組み込みの"plastic"シェーダーはBlinn-Phongのシェーディングモデルで
OpenGLやDirectXとほぼ同じ。
http://loda.jp/3dcgjoy/?id=500.png
次はテクスチャーの実装 テクスチャーを実装(ただし完成にはまだ遠い)
テクスチャーはPixieのtexmakeコマンドで作成した
http://loda.jp/3dcgjoy/?id=510.png
一応ミップマップも実装したけどフィルター幅の計算がよく分からなかったので1.0固定にしてある。
つまりレベル0をいつも使う。あと現状ポイントサンプリングのみ。
あとメタセコイアからテクスチャー座標付きで出力できれば、それなりの画像が出力できるはず。
次mqo2ribの調査 mqo2rib(metared)の調査
うちでは動かなかったです。
$ ./mqo2rib ball.mqo
"ball.mqo" is now loading and converting... Format Error at line 13, column 1 in
"ball.mqo".
complete! (Elapsed time: 0.015s)
さっきメタセコイアのプラグインSDKをダウンロードして読んでましたが、
どうってことなさそうなので自分でプラグインを開発してしまった方が良いのかもしれません。
ちょっとどうするか考え中。 RenderManだと1つのオブジェクトには1つのマテリアルしか使えないみたいですが、
メタセコでは1つのオブジェクトが複数のマテリアルを含んでるので
mqo2ribではオブジェクト内の面をマテリアルごとにまとめ直し、
オブジェクトを分割して出力するようにしています。 >>17
ball.mqoをテキストエディタで開いて13行目の前後数行をここに貼り付けて下さい。
読み込みエラーの原因を調べます。 おそらくball.mqoにはマテリアルが1個もないんだと思われます。
mqo2ribではマテリアルは必ずあることを前提にしてるので、
存在するはずのマテリアル定義が見つからなくて読み込みエラーを起こしています。
手っ取り早いのはball.mqoをメタセコイアで開いてマテリアルを1個作って保存することです。 一旦ポリゴン部を切り出して別ファイルにするフィルタかけてからそれをrib解析するような仕組みにしたほうがいいような。 diffuseの見栄えが良くなるような工夫があってもいいよね >>20
それでした。マテリアルを設定したら正常にコンバートできました。
念のためcube.mqoをアップロードしました。
http://rapidshare.com/files/287646785/ball.mqo.html
ありがとうございました。
当面metaredを使わせていただきます。
次の予定。
PointsPolygonの実装(と頂点単位の法線の取得)
メタセコイアのRIBエクスポーターの作成。
RIBエクスポーターはmetaredあれば要らないような気がするのですが、
やっぱり1つぐらいRIBエクスポーターがあった方がいいだろうという事で。
ロダのウサギはここのだったのか
これからwktkしながら応援させてもらいまする。 頂点単位の法線とカラーの実装した。
http://loda.jp/3dcgjoy/?id=548.png
(左側の本来暗い所が一部明るくなってるが多分バグ.原因は不明)
ちょっと間が開いてしまったのは実装に苦労していたから。
思ったより変更点が多くて苦労した。 あれトリップ間違えた。今渡こそ。
メタセコのRIBエクスポーターはとりあえず自分で使う分には満足いくレベルで実装しました。
上の球はメタセコで作ってRIBにエクスポートしたものです(その後ちょっとだけ手で修正)
来週は頂点データまわりのバグを修正しつつひたすらテストして
RIBエクスポーターをもう少し公開できるレベルにブラッシュアップ。
こういうのってどうやって何に使うのか分からん。
例えば3DSMax持ってるとして、Maxで作ったキャラアニメだのパーティクルアニメだのを
レンダして必要なパス(マスクとかモデルIDとか)を書き出したりして
実用的に使えんの? プロフェッショナル利用に耐えうる、か。期待してるぞ。
開発には参加できないが、ディープなRenderManプロフェッショナルとして
助言くらいはできるかな。
あとこういうのって絶対途中で終わるから付き合うだけ損なんだよね。
>>34
じゃスルーしときなよ。わざわざけち付けて作者のやる気を削ぎたいの? 応援してるっていうよりも
あわよくば自分がタダで遊び道具を手に入れたいとか
他人がなんか作り上げていくさまを横から見て祭り気分を楽しみたいとか
単なるそういった自分の欲求でしょ。
乞食根性といってもいいけど。 マジで使い物になるんだったら仕事で使う位期待してる いろいろと挫折するのを見てきたから応援したい。
きちんと完成したら、金取ってもいいと思うぞ。
無理にフリーと言い張る必要な無いかと。
でないと、フリーソフトの解説書を有料で販売する出版社のカモにされるw 個人的にはレンダーマンの仕様そのものがちと古い気がするけどな MMDみたいに成功しているCGツールもあるからね。
ガンガレ! >MMDみたいに成功しているCGツールもあるからね。
これ笑うところ?
お前らのせまーいせまーい世界の中だけだろ。 あの使用人数で狭いとかいったら
3DCG業界なんてもう滅びたも同然だろ MMDの作品は、ベクセシルみたいな出来損ない2.5次元映画より
遙かにおもしろいと思うぞ。
日本のVFXや2.5次元映画なんて、「金返せバカヤロー!」程度のものしか無い。
恥を知れ
MMDとか恥ずかしいから日本から出て行って欲しい。 出ていけって、それ海外で広めろってことじゃねぇのw 誰もいない孤島にでもいってキモヲタ同士死ぬまでそこにいてほしい >>54
お前が無人島に引き篭もる方が良いんじゃないか?w ネトウヨ=キモヲタって、なぜか自分が大多数だと思い込む傾向があるんだよな。 >tueda ◆LE9zpD0EgY
生きてるかー?
ちょっと期待してるぞー ほんと、すぐ飽きてほっぽりだすくせに人を巻き込もうとする糞開発者もむかつくし、
タダでおこぼれ頂戴したいがために応援してるとか抜かす信者もキモイし、
マジ全員市ねばいいのに。
本当に応援してるなら開発資金の寄付でもしてあげれば?
しないんでしょ?
口だけなんでしょ?
タダで玩具もらいたいだけなんでしょ? 誰かが何か、前向きなことをやろうとすると、
決まってそのやる気や勇気をくじこうとする ID:a8wgi1amみたいなのが涌いてくるね。
そうして、目論見がうまくいくと、それ見たことかと勝ったと言わんばかりにせせら笑うんだ。
でもそれは、ダメなキミ自身の立ち位置を後ろ向きに確認しているのにすぎないんだ。
さっさと気が付いて、そんな暗い場所からは出て行くことをお薦めするね。 こういうの作ってほしいな…
ttp://www.kunzhou.net/#renderants 俺は同じCG系プログラマとして陰ながら応援してるよ〜。
>>7の言うとおりマ板やム板でやったほうがよかったかもね。
ここはツールを利用する側の観点でしか物事を見ない輩が多いから。 な、こういう気持ちの悪い信者>>65が必ず発生するんだよ。
生まれながらにしてスネオ的な性質の奴ってのは一定数いるんだよな。
不思議なことに。
でも大抵頭が悪いから、味方になっても全く役には立たないんだなw
むしろ邪魔w 応援してるとか言ってるけど、人の行いを自分の物のように便乗して
自分が気持ちよくなりたいだけなんだよね。
スポーツ観戦みたいなもん。
単に自分が祭り気分を味わいたいだけ。
本当に応援してるとか言うなら責任もってプロジェクト完遂するまで世話してやれよ。
何にもできないし、する気もないくせに。ほんと気持ち悪い。 そしてしまいにはそういう信者が開発の邪魔になっていく。
ユーザーからの要望やクレームがあると
その声を封じようとしたり跳ね除けたりしようとし、
せっかくのツールの進歩を逆に阻害したりするようになる。 何にもできないし、する気もないくせに。ほんと気持ち悪い。 こういうのは生暖かく見守るもんだろ?実況板じゃないんだから。 もう散々見てきたからね。
こういう、最初の勢いだけでぶち上げてみたものの、すぐに終わるやつ。 アンチレスばかりじゃ主も書きにくくなるし、やる気無くすじゃん。
ここはひとつ主が現れてるまで待とう。 この程度でやる気なくすなら、所詮その程度のやる気だったってことだよ。 そうだな
アホばっかりな2chの中でも、CG板はわりと悪い方だ
さらにツール系の、しかも3DCGともなるとどうしようもない
>>1はなんかwikiでも立てて、軌道に乗るまではこっそりやったら良いんじゃないか
ここでネガってるようなのは、有名かどうかってだけで反応変わるような連中だし >>80
>>1に規制中で書き込みできないってかいてあるじゃん。
メタセコイアからエクスポートしてレンダリングできるようになったってさ。 「タダ乗り」も何も
開発者さんが「フリーの」って言ってるしなぁ
ネガさんにそこをどうこう言われても…としか思えんわな ひろゆきの悪口は俺が許さない!
応援してるよひろゆきがんばって!
ひろゆきマンセー! 今実装見てる・・・すこしソースをいじりたいんだけど。どうしたらいいのかな? あれ?
お前ら応援してるんじゃなかったの?www
もっと応援してあげたら?www
せめて動作テストしてあげるとかさーwww
タダ弁にありつけなさそうな空気察したらさっさと見放すの?ww
プッw
だからお前らはカスなんだよ。
「応援してる」なんて大嘘ww ■ このスレッドは過去ログ倉庫に格納されています