Rendering学習日記

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

面法線と頂点法線 その2 RIB出力

ということで、変換したRIBは以下のとおり、
ちょっとだけ、3Delightでエラー表示が出ますが、レンダリングはできます。
##RenderMan RIB-Structure 1.0
version 3.03
Format 512 300 1
PixelSamples 3 3
ShadingRate 1
Display "image.tif" "file" "rgb"
Projection "perspective" "fov" 5.963
ConcatTransform [
0.423401210556 -0.592993260602 -0.684901750458 0
0 0.756010361246 -0.654559648686 0
-0.905942280115 -0.277141347635 -0.320095702145 0
-4.13227435274e-005 5.57033550876e-005 1499.99997798 1
]

WorldBegin
LightSource "ambientlight" 0 "intensity" [ 0.10 ] "lightcolor" [ 1 1 1 ]
LightSource "distantlight" 1 "intensity" [ 0.80 ] "lightcolor" [ 1 1 1 ] "from" [ -1 1 -1 ] "to" [ 0 0 0 ]
LightSource "distantlight" 2 "intensity" [ 0.45 ] "lightcolor" [ 1 1 1 ] "from" [ 1 1 2.5 ] "to" [ 0 0 0 ]
LightSource "distantlight" 3 "intensity" [ 0.35 ] "lightcolor" [ 1 1 1 ] "from" [ 1 -1 -1 ] "to" [ 0 0 0 ]

AttributeBegin
Attribute "identifier" "name" ["obj1"]
Color [1 0 0]
Surface "plastic"
PointsPolygons [ 3 3 3 3 ] [ 0 1 2 0 2 3 4 5 0 4 0 3 ]
"P" [
50 20 0
50 0 -100
-50 0 -100
-50 20 -0
-50 0 100
50 0 100
]
"N" [ 0 1 0
0 0.980581 -0.196116
0 0.980581 -0.196116
0 1 0
0 0.980581 0.196116
0 0.980581 0.196116 ] "st" [ 1 0 1 1 0 1 1 0 0 1 0 0 0 0 1 0 1 0 0 0 1 0 0 0 ]
AttributeEnd

WorldEnd



image_tif.jpg
  • -
  • -

面法線と頂点法線 その3

Sitex Airでレンダリングしたら、
WARNING: "cnv_men_test2.rib" (24) Bad parameter list: st Parameter length mismatch - 24 found, 12 expected

stが長すぎたのでした。
"st" [ 1 0 1 1 0 1 1 0 0 1 0 0 ]
としました。

「RenderManを使いこなしていくためには、先駆者の経験を学び、
決まりごとを覚え、そして理屈で攻める。のが一番の早道です。」
              CTC RenderManの基礎より(2002)
コツコツと勉強していくことでわかってくるし、続けることですね。面白くなってきました。ありがとうございます。
  • -
  • -

Metasequoia Python 面インデックスと座標

メタセコイア Pythonを使って、面をきめるインデックス番号と頂点座標位置を表示する。
metasequoia pythonスクリプトとしては、基本となる。
あらかじめ、物体を作っておき、オブジェクトパネルで選択されていること。

以下のスクリプトまだきれいではありませんが、確認できます。ありがとうございます。
#face_index.py
doc=MQSystem.getDocument()
out=MQSystem.println

obj=doc.object[doc.currentObjectIndex]
out(str(obj.name))


for face in obj.face:
for aIndex in face.index:
out(str(aIndex))

for vert in obj.vertex:
pos=vert.getPos()
out(str(pos.x)+","+str(pos.y)+","+str(pos.z))
続きを読む>>
  • -
  • -
<< 7/17 >>