<< 3/15 >>
Air Rendererのシャドーマップ その1
Air, SiTex Graphics' advanced 3D rendering software
Airで悩んでしまう。シャドーマップを生成しないからどうして?
原因:コマンドで
>air -d hoge.rib
とオプションの-dをつけたまま、ディスプレイ表示させていたのでshadowmapが出力されなかった。
>air hoge.rib
で解決した。くりかえしくりかえしですね。
MacintoshからPresenter3Dを立ち上げてRIB出力。
Windowsに持ってきて、改行コードを変換。
Airでレンダリングしてみた。
Shadowdistantがなかったので、
RC本のサンプルを
http://web.engr.oregonstate.edu/~mjb/prman/shaders/利用しました。ありがとうございます。
VIDI Presenter3Dでdisplacement
既にVIDIはクローズしていますが、昨日から触っているといろいろとわかって面白いところです。
MacRenderManを使って、ディスプレイスメントのアニメーションも14年前にできていた訳ですから、ちょっと驚きです。
clothシェーダを割り当ててみました。
ドラッグ&ドロップでできてしまう。簡単です。RIB出力していじってみるのも勉強になります。ありがとうございます。
MacからDisplacement設定
MacOS8.6で動いているPresenter3DからMacRenderManを使ってdisplacementboundの設定をするがうまく反映がされない。以下のようなアーティファクトを回避したいのだが、Presenter3Dでは設定がきいていない。
RIB書き出してみると、
Attribute "displacementbound" "sphere" [0.2] "coordinatesystem" ["shader"]
のような一行が見当たらない。
Attribute "dice" "binary" [1]←これを挿入
WorldBegin
Sides 2
AttributeBegin
Attribute "identifier" "name" "Design"
Surface "plastic" "Ka" [1] "Kd" [1] "Ks" [0] "roughness" [0.0999999] "specularcolor" [1 1 1]
AttributeBegin
Attribute "identifier" "shadinggroup" "disp2"
TransformBegin
Transform [1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1]
Attribute "displacementbound" "sphere" [0.2] "coordinatesystem" ["shader"]←これを挿入
Displacement "LGBrickBump"
"jagged" [0.006]
"brickwidth" [0.25]
"brickheight" [0.08]
"mortarthickness" [0.01]
"rowvary" [0.25]
"pitting" [0.01]
"pockfrequency" [10]
"groovedepth" [0.01]
と書き込んでみた。
レンダリング時間はかかるけど、きれいにできました。なかなか勉強になります。
ありがとうございます。
MacRenderManのシャドーマップ
Presenter3Dでは、レイトレーシングもできるが、ここはあえてMacRenderManを使っていろいろ実験中。
ずっと、やってて床面にモアレ模様が気になっていた。
通常は、
Hider "hidden" "string depthfilter" ["midpoint"]
と一行加えるところだが、MacRenderManはバージョン古いんで対応していない。
Presenter3DのRenderManのDefault Setting部分に
Shadow Qualityの設定があった。
デフォルトはStandardになっている。
ここをFineに設定してレンダリングしたら、モアレ模様は消えてくれました。ありがたい。
RIB出力するとシャドーマップのサイズが小さいからですね。
ChunkyはFormat 128 128
StandardはFormat 256 256
FineはFormat 512 512
ということで、以下の画像をつくってみました。
ちなみにShaderは、BMRTのシェーダをMacの改行コードに変換。大文字ファイル名を小文字に一括変換し、PixarShaderAppで変換した。
多少、コンパイルエラーがありますが、大体使えて面白いです。
Chunky
Standard
Fine
Air Rendererのシャドーマップ その2
SiTexのAirを使ってシャドーマップのサイズを大きくとってみた。
Format 4096 4096
ライトはshadowdistant
●シャドーマップ生成
# Shadow file frame for distant light.
Display "shadow.z" "zfile" "z"
Format 4096 4096 1
Projection "orthographic"
●シャドーマップの変換
MakeShadow "shadow.z" "shadow.map"
●ライト部分
LightSource "shadowdistant" 2 "string shadowname" "shadow.map"
"intensity" [1] "lightcolor" [0.933348 0.933348 0.933348] "from" [-1.05777 0.477282 -0.279391] "to" [-0.0482423 -0.0485686 -0.156434]
シャドーマップの出力サイズは約64MB
変換後2MBになった。
レンダリング時間はペンティアム4の2.4GHzで7秒
きれいに出ました。ありがとうございます。
MacRenderManの練習
MacRenderManのバージョンはPowerPC版で、
PhotoRealistic RenderMan 3.5(1.3.5)-(C)1988-92 Pixar.だった。
clothシェーダーはディスプレイスメントシェーダーであり
freq(波数)、depth(深度)の調整をしました。
freq 20, depth 0.04
・Shadowmapを512にし、640×480でMacRenderManで出力してみたら、
画像に亀裂が入るアーティファクトが発生した。Presenter3Dのカメラからバックグラウンド設定として画像を貼り付ける。
レンダリング時間3分45秒
・Attribute "dice" "binary" [1]←これをPresenter3D MacRenderMan DefaultSettingのヘッダ部分に挿入
レンダリング時間4分56秒。まだ亀裂あり。
・Attribute "displacementbound" "sphere" [0.2] "coordinatesystem" ["shader"]←これをヘッダ部分に挿入
H06001 MpCreate:Can not allocate micropolygonでレンダリング中止
・Presenter3D MacRenderMan DefaultSettingでRIB出力。
Attribute "dice" "binary" [1]と
clothシェーダーにAttribute "displacementbound" "sphere" [0.2] "coordinatesystem" ["shader"]追加。
Pixar RenderAppでレンダリング。
レンダリング時間2分21秒
バックグラウンド設定は出力されないので、ImagerシェーダがMacRenderManで使えるかどうか・・・
フォトショップでレイヤー合成するのがベストかも。
About RenderMan
MacRenderManのことについて書かれた記事にリンク貼ります。
RibFilterの使い方がまだ把握できていないところ。
「RenderManについて」です。
http://fukuma.milkcafe.to/CG/RenderMan.html
MacOS8.6で動くG3 500MHzのカード購入どうしましょう。検討。
RenderMan,レンダーマン、レンダマン
モデルデータの変換をあれこれやってみる。
やはりパッチで変換できるソフトが良いだろうか。いろいろと試してみるところ。opacityがちょっとゆるく変換されていたり、出力したRIBをのぞいてみなければわからない。
MacのPresenter3Dで変換した3DMFモデルデータがなぜか半透明。シェーダもPlasticで変更がきかない。力技でやるには、エディタだろうか。
地道にいろいろと調べてみるところです。
MacRenderManと比較する
MacOS8.6で動かしてるPresenter3DからRIB出力し、Win側でPRManとSitex Airで比較してみた。
使っているシェーダのパラメータ値は同じ、コンパイルしただけだ。MacRenderManはバージョン3.5の頃だから、比較してみるとレンダラーによって結果は異なってくる。このあたりの違いを調整するのは職人としてコツコツやる他ないようだ。
PRMan
AIR
PRManのImager "background"はシェーダとしては存在しないけど、レンダラーの中に実装されているようだ。
Imager "background" "color background" [0.2 0.4 0.6]
と記述した。
俄然、面白くなりますね。
ありがとうございます。
Imager "background"
MacRenderManにも
Imager "background" "color background" [0.2 0.4 0.6]
と記述したらレンダリングできましたね。PRManの中に実装されているようです。うれしいです。ありがとうございます。
下のと比べると一番きれいかな。レンダリング時間は2分19秒。
PowerMac G3 300MHzです。
MacRenderMan
<< 3/15 >>