次の include文で、ここで示しているすべてのものを使用することができる。

#include "colors.inc" #include "textures.inc" #include "Woods.inc" #include "stones.inc" #include "glass.inc" #include "metals.inc" #include "skies.inc" #include "stars.inc" #include "chars.inc" #include "shapes.inc" #include "shapes2.inc" #include "shapes3.inc"


14.6 質感・他

POV-Rayでは、自由にプリミティブの表面反射率などを finish で細かく設定することができるが、textures.inc に典型的な8種類の表面特性が準備されている。下記の finish の設定を使えば、数値を指定しなくても簡単に使うことができる。下記例では青い色を使用しているが、どのようなテクスチャでもよい。 ▷「12.3 フィニッシュ(finish)」参照

次の質感を使うために必要なインクルード文

#include "textures.inc"


finish{ Dull }

finish{ Shiny }

finish{ Phong_Dull }

finish{ Phong_Shiny }

finish{ Glossy }

finish{ Phong_Glossy }

finish{ Luminous }

finish{ Mirror }


その他のテクスチャ

次のテクスチャを使うために必要なインクルード文

#include "textures.inc"


pigment {Candy_Cane}

texture {Peel}

pigment {Y_Gradient}

pigment {X_Gradient}

texture {Water pigment{SkyBlue}}


14.7 アルファベット

chars.inc にはアルファベットの大文字や数字などが、オブジェクトとして定義されている。この文字はオブジェクトとして1文字づつ配置する必要があり、文字列表示には向いていない。POV-Ray では 3Dテキスト があり、ttfフォントファイルを指定して表示できる。

図14.7 アルファベット(オブジェクト)
//------------------------------ Fig. 14.7 /chars/ #version 3.7 #include "colors.inc" #include "textures.inc" #include "chars.inc" global_settings { assumed_gamma 2.2 } //================================= camera - light camera{ location <-2.5,-50,16> sky <0, 0, 1> right <-image_width/image_height,0,0> look_at <-2.5, 0, 16> angle 57 } light_source{ <100, -400, 500> color rgb 1.5 parallel point_at 0} //---------------------------------floor #declare CA1=rgb<0.85,0.85,0.8>; #declare CA2=rgb<0.85,0.85,0.8>*1.2; plane{ z, -2 pigment{ checker color CA1, color CA2 scale 2 } } box{ 1,0 scale<80,1,50> pigment{brick rgb 1 Tan rotate x*90 scale 0.5} translate <-40,0.5,-3> } //================================= alphabet object //----------1---- A B C D E F G H I J union{ object { char_A translate <-25,0,0> } object { char_B translate <-20,0,0> } object { char_C translate <-15,0,0> } object { char_D translate <-10,0,0> } object { char_E translate <-5,0,0> } object { char_F translate <0,0,0> } object { char_G translate <5,0,0> } object { char_H translate <10,0,0> } object { char_I translate <15,0,0> } object { char_J translate <20,0,0> } pigment{ Green } rotate x*90 translate z*28 } //----------2---- K L M N O P Q R S T union{ object { char_K translate <-25,0,0> } object { char_L translate <-20,0,0> } object { char_M translate <-15,0,0> } object { char_N translate <-10,0,0> } object { char_0 translate <-5,0,0> } object { char_P translate <0,0,0> } object { char_Q translate <5,0,0> } object { char_R translate <10,0,0> } object { char_S translate <15,0,0> } object { char_T translate <20,0,0> } pigment{ Green } rotate x*90 translate z*21 } //----------3---- U V W X Y Z - + 0 1 union{ object { char_U translate <-25,0,0> } object { char_V translate <-20,0,0> } object { char_W translate <-15,0,0> } object { char_X translate <-10,0,0> } object { char_Y translate <-5,0,0> } object { char_Z translate <0,0,0> } object { char_Dash translate <5,0,0> } object { char_Plus translate <10,0,0> } object { char_0 translate <15,0,0> } object { char_1 translate <20,0,0> } pigment{ Green } rotate x*90 translate z*14 } //----------4---- 2 3 4 5 6 7 8 9 ! @ union{ object { char_2 translate <-25,0,0> } object { char_3 translate <-20,0,0> } object { char_4 translate <-15,0,0> } object { char_5 translate <-10,0,0> } object { char_6 translate <-5,0,0> } object { char_7 translate <0,0,0> } object { char_8 translate <5,0,0> } object { char_9 translate <10,0,0> } object { char_ExclPt translate <15,0,0> } object { char_AtSign translate <20,0,0> } pigment{ Green } rotate x*90 translate z*7 } //----------5---- # $ % ^ & * ( ) [ ] union{ object { char_Num translate <-25,0,0> } object { char_Dol translate <-20,0,0> } object { char_Perc translate <-15,0,0> } object { char_Hat translate <-10,0,0> } object { char_Amps translate <-5,0,0> } object { char_Astr translate <0,0,0> } object { char_LPar translate <5,0,0> } object { char_RPar translate <10,0,0> } object { char_LSqu translate <15,0,0> } object { char_RSqu translate <20,0,0> } pigment{ Green } rotate x*90 }

次のアルファベット オブジェクトを使うために必要なインクルード文

#include "chars.inc"

 A
object{ char_A }
 B
object{ char_B }
 C
object{ char_C }
 D
object{ char_D }
 E
object{ char_E }
 F
object{ char_F }
 G
object{ char_G }
 H
object{ char_H }
 I
object{ char_I }
 J
object{ char_J }
 K
object{ char_K }
 L
object{ char_L }
 M
object{ char_M }
 N
object{ char_N }
 O
object{ char_O }
 P
object{ char_P }
 Q
object{ char_Q }
 R
object{ char_R }
 S
object{ char_S }
 T
object{ char_T }
 U
object{ char_U }
 V
object{ char_V }
 W
object{ char_W }
 X
object{ char_X }
 Z
object{ char_Z }
 -
object{ char_Dash }
 +
object{ char_Plus }
 0
object{ char_0 }
 1
object{ char_1 }
 2
object{ char_2 }
 3
object{ char_3 }
 4
object{ char_4 }
 5
object{ char_5 }
 6
object{ char_6 }
 7
object{ char_7 }
 8
object{ char_8 }
 9
object{ char_9 }
 !
object{ char_ExclPt }
 @
object{ char_AtSign }
 #
object{ char_Num }
 $
object{ char_Dol }
 %
object{ char_Perc }
 ^
object{ char_Hat }
 &
object{ char_Amps }
 *
object{ char_Astr }
 (
object{ char_LPar }
 )
object{ char_RPar }
 [
object{ char_LSqu }
 ]
object{ char_RSqu }
 


(End) 14.7 アルファベット