Rendering学習日記

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

RIB出力検証

メタセコイアPythonを使ってRIB出力ができるスクリプトができた。
視野変換では、ConcatTransformを求めた。
uvマップはきちんと出るようにした。右手系での出力になります。
men_new.jpg

以下はRIB出力。レンダリングは3Delightを使用しました。レイトレーシング設定しています。
##Renderman RIB-Structure 1.0
Display "men.tif" "file" "rgba"
Display "+men.tif" "framebuffer" "rgba"

Format 640 480 1
PixelSamples 4 4
PixelFilter "catmull-rom" 3 3
ShadingRate 1

Imager "background" "background" [0.200 0.400 0.600]

Sides 1
Orientation "rh"
Projection "perspective" "fov" [9.527]
ConcatTransform [
0.586877119816 -0.615504654203 -0.526050631489 0
0 0.649705095569 -0.760186351359 0
-0.809676013129 -0.446135976409 -0.381297055217 0
-14.6153686718 -5.38463034481 1500.00000696 1
]
Scale 1 1 -1
WorldBegin
Attribute "visibility" "trace" [1]
Attribute "visibility" "transmission" ["Os"]
Attribute "visibility" "transmission" "opaque"
Attribute "light" "shadows" "on"
Attribute "trace" "displacements" [1]
LightSource "ambientlight" 0 "intensity" [ 0.1 ] "lightcolor" [ 1 1 1 ]
LightSource "distantlight" 1 "intensity" [ 3 ] "lightcolor" [ 1 1 1 ] "from" [ -1 1 -1 ] "to" [ 0 0 0 ]
LightSource "distantlight" 2 "intensity" [ 3 ] "lightcolor" [ 1 1 1 ] "from" [ 1 1 2.5 ] "to" [ 0 0 0 ]
ReadArchive "men_uv_model2.rib"
WorldEnd


MakeTexture "grade.tif" "grade.tdl" "periodic" "periodic" "gaussian" 1 1
Surface "supertexmap" "string Csmapname" "grade.tdl"
AttributeBegin
Attribute "identifier" "name" ["obj1"]
Declare "st" "facevarying float[2]"
Scale 1 1 -1
PointsPolygons
[ 3 3 3 3 ][ 1 3 2 1 2 0 4 5 1 4 1 0 ]
"P" [-50.0 20.0 0.0
50.0 20.0 0.0
-50.0 0.0 100.0
50.0 0.0 100.0
-50.0 0.0 -100.0
50.0 0.0 -100.0
]
"N" [-0.0 1.0 0.0
-0.0 1.0 0.0
0.0 0.980580675691 0.196116135138
0.0 0.980580675691 0.196116135138
-0.0 0.980580675691 -0.196116135138
-0.0 0.980580675691 -0.196116135138
]
"st" [0.995700001717 0.494610011578
0.995700001717 0.975380003452
0.514930009842 0.975380003452
0.993009984493 0.489219993353
0.512239992619 0.96999001503
0.512239992619 0.489219993353
0.520319998264 0.000369999994291
1.00109004974 0.000369999994291
1.00109004974 0.481139987707
0.520319998264 0.00576000008732
1.00109004974 0.486530005932
0.520319998264 0.486530005932 ]
AttributeEnd
  • -
  • -

RIB出力検証その2

metasequoia pythonを使って、メタセコイアからモデルをRIB出力するプログラムを検証した。あれれ、面の向きがちょっと違いました。
モデルの部分、
AttributeBeginの後に
Scale 1 1 -1
を加えました。
mapnew.jpg

以下は、RIB出力です。レンダリングは3Delightを使用しました。
Display "maptest.tif" "file" "rgba"
Format 640 480 1
PixelSamples 2 2
PixelFilter "catmull-rom" 3 3
ShadingRate 1
MakeTexture "uvmap.tif" "uvmap.tdl" "periodic" "periodic" "gaussian" 1 1

Imager "background" "background" [0.2 0.4 0.6]

Sides 1
Orientation "rh"
Projection "perspective" "fov" [9.527]
ConcatTransform [
0.742768750199 -0.412412747762 -0.527456452431 0
0 0.787779841733 -0.615956914857 0
-0.669548044376 -0.457513547825 -0.585138248476 0
6.36650111119e-006 2.36958414916e-005 1500.00001648 1
]
Scale 1 1 -1
WorldBegin
Attribute "visibility" "trace" [1]
Attribute "visibility" "transmission" ["Os"]
Attribute "visibility" "transmission" "opaque"
Attribute "light" "shadows" "on"
LightSource "distantlight" 1
"from" [0.205154 1.226111 -0.161600]
"to" [0.000000 0.000000 0.000000]
"lightcolor" [0.800 0.800 0.800]
LightSource "ambientlight" 2
"lightcolor" [0.300 0.300 0.300]
AttributeBegin
Scale 1 1 -1
Surface "supertexmap" "string Csmapname" "uvmap.tdl"
Declare "st" "facevarying float[2]"
Attribute "identifier" "name" ["obj1"]
PointsPolygons
[ 4 ][ 0 1 3 2 ]
"P" [-100.0 0.0 -100.0
100.0 0.0 -100.0
-100.0 0.0 100.0
100.0 0.0 100.0
]
"N" [-0.0 1.0 -0.0
-0.0 1.0 -0.0
0.0 1.0 0.0
-0.0 1.0 -0.0
]
"st" [0.0 0.0 1.0 0.0 1.0 1.0 0.0 1.0 ]
AttributeEnd
WorldEnd
  • -
  • -

RIB出力検証その3

ということで、メタセコイアのサンプルモデルmekaをRIB出力。metasequoia pythonを使って視野変換してConcatTransformを求める。
エディタ使って、以下のように書きました。3Delightでレンダリングできるように設定してあります。レイトレーシング設定で影もでます。
ここまでくる道のりは長かった。できるとうれしいです。
mekanew.jpg
ありがとうございます。わくわくしてきた。楽しいね。

以下はRIBです。長すぎですので、下からダウンロードして3Delightでレンダリングしてみてください。。
Display "mekatest.tif" "file" "rgba"
Format 640 480 1
PixelSamples 2 2
PixelFilter "catmull-rom" 3 3
ShadingRate 1
MakeTexture "00tex_master.tif" "00tex_master.tdl" "periodic" "periodic" "gaussian" 1 1

Imager "background" "background" [0.2 0.4 0.6]

Sides 1
Orientation "rh"
Projection "perspective" "fov" [48.728]
ConcatTransform [
0.912762334333 -0.256856235992 -0.317631539769 0
0 0.777572864472 -0.628792843818 0
-0.408491029306 -0.573938423935 -0.709739222889 0
-14.5441391986 -308.526077317 1143.67912849 1
]
Scale 1 1 -1
WorldBegin
Attribute "visibility" "trace" [1]
Attribute "visibility" "transmission" ["Os"]
Attribute "visibility" "transmission" "opaque"
Attribute "light" "shadows" "on"
LightSource "distantlight" 1
"from" [0.205154 1.226111 -0.161600]
"to" [0.000000 0.000000 0.000000]
"lightcolor" [0.800 0.800 0.800]
LightSource "ambientlight" 2
"lightcolor" [0.300 0.300 0.300]

AttributeBegin
Scale 1 1 -1
Surface "supertexmap" "string Csmapname" "00tex_master.tdl"
Declare "st" "facevarying float[2]"
Attribute "identifier" "name" ["body01"]
PointsPolygons
[ 4 4 4 4 4 4 4 4 4 4 3 4 4 3 3 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 3 4 3
4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 3
3 4 4 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4
4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 3 3 4 4 3 3 3 3 4
4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 3
3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 3 3 4 4
4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 4 4 4 4 4 4 4 4 3 3 4 4 3 3 3 3 4 4 4 4 4 4 4 4
4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3 3 3 3 3 3 4 4 4 4 4
4 4 4 4 4 4 4 4 4 ][ 8 1 3 9 8 9 2 0 10 5 7 11 10 11 6 4 17 15 5 10 16 13 15 17
14 17 10 4 12 14 4 2 16 12 2 9 16 17 14 12 6 19 4 7 18 20 11 11 20 19 6 2 4 19
2 19 0 22 24 18 1 23 22 1 8 24 26 20 18 24 22 23 26 21 23 8 0 25 21 0 19 26 25
19 20 26 23 21 25 28 16 9 27 13 16 28 27 28 9 3 13 27 5 15 7 5 27 18 27 3 1 18
29 30 32 31 31 32 34 33 38 29 31 33 35 38 33 37 30 29 38 34 37 36 30 37 34 32
39 40 42 41 41 42 44 43 43 44 46 45 45 46 48 47 47 48 50 49 49 50 40 39 40 50
48 42 42 48 46 44 49 39 41 47 47 41 43 45 53 54 52 51 55 56 54 53 57 58 56 55
59 60 58 57 61 62 60 59 51 52 62 61 54 60 62 52 56 58 60 54 59 53 51 61 57 55
53 59 68 67 66 65 68 65 64 68 64 63 69 71 70 66 67 74 75 76 77 73 74 77 78 72
73 77 76 75 79 80 65 66 75 74 67 68 77 76 68 69 78 77 69 63 72 78 71 67 76 80
70 71 80 79 83 84 86 85 85 86 88 87 82 89 90 81 89 84 83 90 84 89 82 81 90 83
85 87 81 83 84 82 88 86 91 92 94 93 95 96 98 97 97 98 100 99 99 100 92 91 92
100 98 94 102 101 93 94 104 102 94 96 103 104 96 95 101 102 104 103 94 98 96 93
106 105 91 97 108 107 95 99 109 108 97 91 105 109 99 106 108 109 105 106 93 101
110 107 106 110 111 95 107 111 103 103 111 110 101 107 108 106 112 113 115 114
.....................................省略....................
AttributeEnd
WorldEnd


ダウンロードはこちら
mekatest.rib
  • -
  • -
1/11 >>