シーン記述言語 オブジェクト編



準備中です.

多くのオブジェクトが用意されています.基本的な立体(オブジェクト)を組み合わせて シーンを構成する事ができます.CSGオブジェクトは2つのオブジェクトの重なった部分を新たな オブジェクトとしたり,重なった部分を抜いた(消した)オブジェクトを定義したりできます. ブロブは複数の球や円筒が滑らかに融合したような物体を表現できます. まず各オブジェクトの記述形式の一覧表を示します.
light_source o 光源
  light_source {
    <LOCATION>
    color <COLOUR>
    [ spotlight ]
    [ point_at <POINT_AT> ]
    [ radius RADIUS ]
    [ falloff FALLOFF ]
    [ tightness TIGHTNESS ]
    [ area_light <AXIS1>, <AXIS2>, SIZE1, SIZE2 ]
    [ adaptive ADAPTIVE ]
    [ jitter JITTER ]
    [ looks_like { OBJECT } ]
    [ fade_distance FADE_DISTANCE ]
    [ fade_power FADE_POWER ]
    [ atmospheric_attenuation BOOL ]
  }
object_id o オブジェクト識別子
object o オブジェクト用のコンテナ
  object {
    オブジェクト ...
  }
sphere o 球
  sphere { <CENTER>, RADIUS, [strength] STRENGTH
    [ translate <VECTOR> ]
    [ rotate <VECTOR> ]
    [ scale <VECTOR> ]
    TEXTURE_MODIFIERS
  }
plane o 平面
  plane { <NORMAL>, DISTANCE }
cone o 円錐
  cone {
    <BASE_POINT>, BASE_RADIUS, <CAP_POINT>, CAP_RADIUS
    [ open ]
  }
cylinder o 円筒
  cylinder { <END1>, <END2>, RADIUS, [strength] STRENGTH
    [ translate <VECTOR> ]
    [ rotate <VECTOR> ]
    [ scale <VECTOR> ]
    TEXTURE_MODIFIERS
  }
disc o 円盤
  disc {
    <CENTER>, <NORMAL>, RADIUS [, HOLE_RADIUS ]
  }
quadric o 二次曲面
  quadric { <A,B,C>, <D,E,F>, <G,H,I>, J }
cubic o 三次曲面
    cubic { <T1, T2,... T20> }
quartic o 四次曲面
  quartic { <T1, T2,... T35> }
poly o 高次曲面
  poly { ORDER, <T1, T2, T3, .... Tm> }
torus o ドーナツ
  torus {
    MAJOR, MINOR
    [ sturm ]
  }
lathe o 旋盤
  lathe {
    [ linear_spline | quadratic_spline | cubic_spline ]
    NUMBER_OF_POINTS,
    <POINT_1>, <POINT_2>, ..., <POINT_n>
    [ sturm ]
  }
polygon o 多角形
  polygon {
    TOTAL_NUMBER_OF_POINTS,
    <A_1>, <A_2>, ..., <A_na>, <A_1>,
    <B_1>, <B_2>, ..., <B_nb>, <B_1>,
    <C_1>, <C_2>, ..., <C_nc>, <C_1>,
    ...
  }
prism o プリズム
  prism {
    [ linear_sweep | conic_sweep ]
    [ linear_spline | quadratic_spline | cubic_spline ]
    HEIGHT1,
    HEIGHT2,
    TOTAL_NUMBER_OF_POINTS,
    <POINT_1>, <POINT_2>, ..., <POINT_n>
    [ open ]
    [ sturm ]
  }
sor o 回転体表面
  sor {
    NUMBER_OF_POINTS,
    <POINT0>, <POINT1>, ..., <POINTn-1>
    [ open ]
    [ sturm ]
  }
superellipsoid o 超楕円体
  superellipsoid {  }
mesh o メッシュ
  mesh {
    triangle {
      <CORNER1>, <CORNER2>, <CORNER3>
      [ texture { STRING } ]
    }
    smooth_triangle {
      <CORNER1>, <NORMAL1>,
      <CORNER2>, <NORMAL2>,
      <CORNER3>, <NORMAL3>
      [ texture { STRING } ]
    }
    [ hierarchy FLAG ]
  }
text o 文字列
  text {
    ttf "FONTNAME.TTF",
    "STRING_OF_TEXT",
    THICKNESS_FLOAT, OFFSET_VECTOR
  }
union o 結合 CSG
  union {
    オブジェクト ...
  }
composite o unionの古い形式
merge o マージ CSG
  object {
    オブジェクト ...
  }
intersection o 交差 CSG
  intersection {
    オブジェクト ...
  }
difference o 差分 CSG
  difference {
    オブジェクト ...
  }
bicubic_patch o 双三次パッチ
  bicubic_patch {
    type PATCH_TYPE
    flatness FLATNESS_VALUE
    u_steps NUM_U_STEPS
    v_steps NUM_V_STEPS
    <CP1>,  <CP2>,   <CP3>,   <CP4>,
    <CP5>,  <CP6>,   <CP7>,   <CP8>,
    <CP9>,  <CP10>,  <CP11>,  <CP12>,
    <CP13>, <CP14>,  <CP15>,  <CP16>
  }
triangle o 三角形
  triangle {
    <CORNER1>, <CORNER2>, <CORNER3>
  }
smooth_triangle o スムーズ三角形
  smooth_triangle {
    <CORNER1>, <NORMAL1>,
    <CORNER2>, <NORMAL2>,
    <CORNER3>, <NORMAL3>
  }
height_field o ハイトフィールド
  height_field {
    FILE_TYPE "FILENAME"
    [ hierarchy BOOL ]
    [ smooth BOOL ]
    [ water_level FLOAT ]
  }
box o 直方体
  box { <CORNER1>, <CORNER2> }
blob o ブロブ
  blob {
    threshold THRESHOLD_VALUE
    cylinder { <END1>, <END2>, RADIUS, [ strength ] STRENGTH }
    sphere { <CENTER>, RADIUS, [ strength ] STRENGTH }
    [ component STRENGTH, RADIUS, <CENTER> ]
    [ hierarchy FLAG ]
    [ sturm ]
  }
julia_fractal o ジュリアフラクタル
  julia_fractal {
    4DJULIA_PARAMETER                 // default is <1,0,0,0>
    [ quaternion | hypercomplex ]     // default is quaternion
    [ sqr | cube | exp |
      reciprocal | sin | asin |
      sinh | asinh | cos | acos |
      cosh | acosh | tan | atan |
      tanh | atanh | log | pwr(X,Y) ] // default is sqr
    [ max_iteration MAX_ITERATION ]   // default value 20
    [ precision PRECISION ]           // default value 20
    [ slice 4DNORMAL, DISTANCE ]      // default <0,0,0,1>,0
  }
それぞれ使い込まないと人様に解説するのは無理と感じています.


[CONTENTS] [PREVIOUS] [NEXT]

[HOME]


ご意見・ご感想は,mizutani.jun@nifty.ne.jp まで.