Rendering学習日記

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

NVIDIA GelatoへのReadArchive

Ribelato-1.0.0.24.win.zipをダウンロードし、
libフォルダにrib.generator.dllを入れておくと、

たとえば、立方体
Patch "bilinear" "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]
Patch "bilinear" "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]
Patch "bilinear" "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]
Patch "bilinear" "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]
Patch "bilinear" "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]
Patch "bilinear" "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]

以上をたとえばBoxGeom.ribという名前で保存しておく。
呼び出し方は、同じディレクトリに置いて、
Input ("BoxGeom.rib")
で良い。

同じく、平面は
Patch "bilinear" "P" [-5.0 -5.0 0.0 5.0 -5.0 0.0 -5.0 5.0 0.0 5.0 5.0 0.0]

以上をたとえばPlaneGeom.ribで保存しておく。
呼び出し方は、同じディレクトリに置いて、
Input("PlaneGeom.rib")
で良い。
  • -
  • -

BOXを表示する。その1

RIBを呼び出す形で、以下のように記述する。
なお、カメラ位置は、placecam.exeを使って算出。10,5,-10から原点を見ている。
#box0.pyg
Output ("box01.tif", "tiff", "rgb", "camera", "float gain", 1, "float gamma",
1, "string filter", "gaussian", "float[2] filterwidth", (2, 2))
Attribute ("string projection", "perspective")
Attribute ("float fov", 20)
Attribute ("int[2] resolution", (640, 480))
#placecam 10 5 -10 0 0 0
Rotate (-19.47, 1.00, 0.00, 0.00)
Rotate (45.00, 0.00, 1.00, 0.00)
Translate (-10.00, -5.00, 10.00)
World ()
Light ("light1", "pointlight", "float intensity", 350, "point from", (-10, 10, -10))
Light ("light2", "pointlight", "float intensity", 350, "point from", (10, 10, -10))

PushTransform ()
Attribute ("color C", (1, 1, 0))
Shader ("surface", "plastic")
Translate ( 0, 0.5, 0)
Input ("BoxGeom.rib")
PopTransform ()

Attribute ("color C", (1, 1, 1))
Shader ("surface", "plastic")
Rotate (90.00, 1.00, 0.00, 0.00)
Input("PlaneGeom.rib")
Render()

box0.jpg
  • -
  • -

Pythonのインデント

エラーメッセージ
IndentationError: unindent does not match any outer indentation level
調べてみると・・・
インデントがきちんとしていると思っていたら、矢印キーでうろうろしてみると、2ヶ所、タブになっているところがありました。

  • 半角スペースタブかどちらかに統一して記述する。
    • -
    • -
    << 2/10 >>