Rendering学習日記

日々3DCGの世界は進歩しているけど、勉強して理解したことをまとめていきたい。RenderMan互換レンダラーやグローバル・イルミネーション。いろんなことに好奇心を持ち面白くなってくる。目指せShader書き!!

NVIDIA Gelatoで影表示

復習の意味で、pygをいじってみる。

# sphere_test2.pyg

PushTransform ()
Scale(1, 1, -1)
Rotate (30, 1, 0, 0)
Rotate (5, 0, 1, 0)
Translate (0, 0, -20)
Camera ("main", "int[2] resolution", (640, 480), "string projection", "perspective", "float fov", 45)
PopTransform ()

Output ("sphere_test.tif", "tiff", "rgb", "main", "float gain", 1, "float gamma", 1, "string filter", "gaussian", "float[2] filterwidth", (2, 2))


Attribute ("string geometryset", "+shadows")

Light ("light1", "ambientlight", "float intensity", 0.1)
Light ("light2", "pointlight", "point from", (10, 10, -10), "float intensity", 800, "string shadowname" ,"shadows")
#Light ("light2", "distantlight", "point from", (1, 1, -1), "point to", (0, 0, 0), "float intensity", 1.2, "string shadowname" ,"shadows")

World ()

Attribute ("color C", (1, 0, 0))
Shader ("surface", "plastic")
PushTransform ()
Translate (0, 2, 0)
Sphere (2, -2, 2, 360)
PopTransform ()

PushAttributes ()
Attribute ("color C", (1, 1, 1))
Shader ("surface", "matte")
PushTransform ()
Scale (100, 0.5, 100)
PushTransform ()
Scale (1, 1, 1)
Patch ("linear", 2, 2, "vertex point P", (0.5, 0.5, 0.5, 0.5, 0.5, -0.5, 0.5, -0.5, 0.5, 0.5, -0.5, -0.5))
Rotate (90, 0, 0, 1)
Patch ("linear", 2, 2, "vertex point P", (0.5, 0.5, 0.5, 0.5, 0.5, -0.5, 0.5, -0.5, 0.5, 0.5, -0.5, -0.5))
Rotate (90, 0, 0, 1)
Patch ("linear", 2, 2, "vertex point P", (0.5, 0.5, 0.5, 0.5, 0.5, -0.5, 0.5, -0.5, 0.5, 0.5, -0.5, -0.5))
Rotate (90, 0, 0, 1)
Patch ("linear", 2, 2, "vertex point P", (0.5, 0.5, 0.5, 0.5, 0.5, -0.5, 0.5, -0.5, 0.5, 0.5, -0.5, -0.5))
Rotate (90, 0, 1, 0)
Patch ("linear", 2, 2, "vertex point P", (0.5, 0.5, 0.5, 0.5, 0.5, -0.5, 0.5, -0.5, 0.5, 0.5, -0.5, -0.5))
Rotate (180, 0, 1, 0)
Patch ("linear", 2, 2, "vertex point P", (0.5, 0.5, 0.5, 0.5, 0.5, -0.5, 0.5, -0.5, 0.5, 0.5, -0.5, -0.5))
PopTransform ()
PopTransform ()
PopAttributes ()

Render ()



sphere_test.jpg

いろいろと試してみることが大切です。
ありがとうございます。
NVIDIA Gelato | - | -

ネットワークレンダリング Air

Airでvoluntairと、vortexを利用して試みた。

一番速いマシンをメインにして、ほかのマシンはvoluntairを起動しておく。フルに使うためにスレッド数を設定しておく。
voluntair -threads 4
共有フォルダでない場合は、各マシンに同じフォルダとファイルを設定しておくこと。当然Sitex AIRは台数分必要。

メインマシンでvortexを起動、レンダリングが始まり、速い。
C:\RIB>vortex -threads 12 Milk.rib
Vortex 1.08 - (c) 2003-9 SiTex Graphics, Inc.
Starting local worker: air -vhost hp-PC:47351 -threads 12
AIR 9.25, Windows 32-bit
Rendering "milk.tif" 640x480 rgba, 16-bit
100% complete | 0:00:12 elapsed | 83.0 M peak | 3 workers peak

それぞれのローカルは、
Starting local worker : air -vhost 192.168.0.3:47351 -threads 4
と動いていた。ネックはone passのみ。
World block1つでつくっておかなければならない。

よってcgkitだと、シャドーマップ生成でWorld blockが2つだから、ちょっと難しいか。検討します。
RenderMan | - | -

MacRenderManからSitex Airへ

シャドーマップがおかしかったのは、Perspective "orthographic"を
Python使って
Projection "perspective" "fov" 26.7003
に置き換えた。
アニメーションができた

airでの連番ファイルのレンダリングは、
air -frames 0 30 city2.#4f.RIB
で実行できた。

GeneralPolygon [10] "P" [-4.58333 8.33333 4.58333
    4.58333 8.33333 4.58333
    4.58333 8.33333 -4.58333
    -4.58333 8.33333 -4.58333
    -4.58333 8.33333 4.58333
    -4.16667 8.33333 4.16667
    -4.16667 8.33333 -4.16667
    4.16667 8.33333 -4.16667
    4.16667 8.33333 4.16667
    -4.16667 8.33333 4.16667]
    "st" [0 0 1 0 1 1 0 1]

この部分でレンダリングエラー。"st" [0 0 1 0 1 1 0 1]
を削除することにした。

後はPython使って整形しなおす。
無事、レンダリングできた。
city.0015.jpg
RenderMan日々勉強です。ありがとうございます。
RenderMan | - | -

MacRenderManからアニメーション出力試行

MacRenderManとPresenter3Dでアニメーション作り。RIBを出力し、WindowsでRIBを、Sitex Airでレンダリングし、MOV形式に変換した。シャドーマップがいまひとつ、再検討しなければならない。
アニメーションができた


MacRenderManだと、半透明・・・
city022.JPG

まだまだ手順を検討したいところです。課題ですね。
RenderMan | - | -

Modelの反映

3DMFを変換して、Presenter3Dのモデラーproにインポートした。
グループの階層が深いので、削除してみる。
その後、アニメータで読み込み、色を変更。なぜか透明なモデルになってしまう。
MacRenderManの問題と思われます。
red.jpg
Windowsに持って行き、Sitex Airでレンダリング。
red.0000.jpg
RenderMan | - | -

確認練習Presenter3D

MacOS8.6でPresenter3Dを触る。古いソフトだけに、画像の上書きとなるとRIB書き出しがうまく反映されないみたい。画像の保存ファイル名を変えるとRIB生成してくれる。
・モデラーproで簡単な球体と立方体と地面を配置。
・アニメータproで読み込み、RenderManでレンダリング。
・影の生成はOK
test_scene.jpg
しかしながら、シャドーマップサイズが低いのと、サーフェスに色をつけていないので、つけて、サイズをFine(512)にした。
test_scene2.jpg

test_scene3.jpg

コツコツ、少しずつですね。ありがとうございます。
RenderMan | - | -

シャドーマップのモアレ

VIDI Presenter3Dから出力したRIBをMacRenderManを使わないで、ネットワーク共有で、Windowsに持っていく。Pythonを使って文字変換してから、Airでレンダリングした。シャドーマップは4096。Airは、shadowspotを持っていなかったので、実践CGの誘い(いざない)のサンプルをRCshadowspotと名付けて、コンパイルする。

air -d model2.RIB
すると、モアレが出て困った。
model1_moare.jpg
いろいろとPrmanと比較してわかったのは、コマンドラインでのオプションとして-dとディスプレイ表示していたのが原因だった。
よって、以下のように

air model2.rib
とやれば良い。
model2.jpg
良かった。良かった。後、Windowsの改行コード(CR+LF)に変換しておかないとAirではレンダリングできません。

以下エラーでましたが、レンダリングはできました。
WARNING: "model2.RIB" (14) Incorrect parameters: CropWindow
WARNING: "model2.RIB" (37) Program limit: Bucket width increased for large image
width
Rendering "ShadowMap.zfile2" 4096x4096 z, float
WARNING: "model2.RIB" (77) Bad parameter list: st Parameter length mismatch - 8
found, 20 expected
WARNING: "model2.RIB" (88) Bad parameter list: st Parameter length mismatch - 8
found, 20 expected
WARNING: "model2.RIB" (99) Bad parameter list: st Parameter length mismatch - 8
found, 20 expected
WARNING: "model2.RIB" (110) Bad parameter list: st Parameter length mismatch - 8
found, 20 expected
WARNING: "model2.RIB" (121) Bad parameter list: st Parameter length mismatch - 8
found, 20 expected
WARNING: "model2.RIB" (132) Bad parameter list: st Parameter length mismatch - 8
found, 20 expected
99% complete | 0:00:08 elapsed | 1.69 M in use, 1.76 M peak
100% complete | 0:00:08 elapsed | 487 K in use, 1.76 M peak
Rendering "model2.tif" 320x240 rgba
WARNING: "model2.RIB" (362) Bad parameter list: st Parameter length mismatch - 8
found, 20 expected
WARNING: "model2.RIB" (373) Bad parameter list: st Parameter length mismatch - 8
found, 20 expected
WARNING: "model2.RIB" (384) Bad parameter list: st Parameter length mismatch - 8
found, 20 expected
WARNING: "model2.RIB" (395) Bad parameter list: st Parameter length mismatch - 8
found, 20 expected
WARNING: "model2.RIB" (406) Bad parameter list: st Parameter length mismatch - 8
found, 20 expected
WARNING: "model2.RIB" (417) Bad parameter list: st Parameter length mismatch - 8
found, 20 expected
100% complete | 0:00:01 elapsed | 8.59 M in use, 67.5 M peak

参考までにRIBは、
続きを読む>>
RenderMan | - | -
1/1