PrMan中的RIB001

来源:互联网 发布:求和的数据怎么复制 编辑:程序博客网 时间:2024/06/09 01:18
Option "searchpath" "shader"  "@:C:/Program Files/Pixar/fox541/shaders"
Option "searchpath" "texture" "@:C:/Program Files/Pixar/fox541/textures"
Option "searchpath" "archive" "C:/Program Files/Pixar/fox541/archives:Cutter_Help/templates/Rib:custom_templates/Rib"
# polygon(PointsPolygons_Tetrahedron_houdini10).rib
# PointsPolygons用于创建convex polygons Meshs,包括3个面与四边面(triangles、quadrilaterals)Meshs
# Author:Fox541
# 代码来源:
下面的代码中几何体部分来自于houdini10,主要是比手动写代码方便
# Date: 20130102

Display "polygon(PointsPolygons_Tetrahedron_houdini10).tiff" "framebuffer" "rgb"
Format 360 360 1.0
PixelSamples 2 2
# Correct for monitor gamma of 2.2
Exposure 1.0 2.2

Projection "perspective" "fov" 40

Translate 0 0 3
Rotate 0 45 0 0
Scale 1 1 1

WorldBegin

     LightSource "ambientlight" 1 "intensity" .4 "lightcolor" [.4 0 1]
     LightSource "distantlight" 2 "intensity" 1.0
            "from" [-50 300 200] "to" [0 0 0] "lightcolor" [1 .8 .7]
     LightSource "distantlight" 2 "intensity" 0.2
            "from" [-50 -300 200] "to" [0 0 0]
     LightSource "distantlight" 2 "intensity" 0.1
            "from" [50 -200 10] "to" [0 0 0] "lightcolor" [.4 .3 1]


AttributeBegin
# Tetrahedron 4面体
PointsGeneralPolygons    
     [1 1 1 1] # 4个面(032 013 021 123)
     [3 3 3 3]
     [0 3 2  0 1 3  0 2 1  1 2 3]  # 每个面3个顶点,共12个顶点, 12个顶点的索引,,默认为逆时针方向表示法线向外
     "P" [
     0 1 0 -0.942810297012 -0.333329707384 0 0.471405208111 -0.333329707384 0.81649762392 0.471405059099 -0.333329707384 -0.816497683525] # 4个顶点的(x,y,z)坐标
     "Cs" [0.666666567326 1 0.5 0.999999821186 0 0 0.999999940395 0 1 0.666666567326 1 0.5 0 0 0.5 0.999999821186 0 0 0.666666567326 1 0.5 0.999999940395 0 1 0 0 0.5 0 0 0.5 0.999999940395 0 1 0.999999821186 0 0]
     "N" [5.96044316126e-008 1 0 -0.942809820175 -0.333331435919 6.12273183265e-008 0.47140493989 -0.333331376314 0.816497147083 0.471404880285 -0.333331376314 -0.816497206688]
   

AttributeEnd





附:
原始hoduni代码


# /obj/platonic_object1
ArchiveBegin "/obj/platonic_object1"      # {
    # Handle: '/obj/platonic_object1'
    Sides 2
    ReverseOrientation
    PointsGeneralPolygons     # {
     [1 1 1 1]
     [3 3 3 3]
     [0 3 2 0 1 3 0 2 1 1 2 3]
     "P" [0 1 0 -0.942810297012 -0.333329707384 0 0.471405208111 -0.333329707384 0.81649762392 0.471405059099 -0.333329707384 -0.816497683525]
     "varying normal N" [5.96044316126e-008 1 0 -0.942809820175 -0.333331435919 6.12273183265e-008 0.47140493989 -0.333331376314 0.816497147083 0.471404880285 -0.333331376314 -0.816497206688]
         # }
    ReverseOrientation
ArchiveEnd     # }
AttributeBegin     # {
    # Geometry object /obj/platonic_object1
    Transform [1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1]
    Attribute "identifier" "string name" ["/obj/platonic_object1"]
    ReadArchive "/obj/platonic_object1"
AttributeEnd     # }




WorldEnd