形状(Shape)やテクスチャの定義は include ファイルで定義されています。
include ファイルは、たとえば 64bit 版 Windows の場合は C:\Program Files (x86)\POV-RAY for Windows v3.6/include/ の下にあります(バージョン番号は場合により異なります)。
たとえば、テクスチャに使っている"T_Stone数字" の定義は stones.inc にあって、「stones.incはstones1.incとstones2.incを 読み込む」と記述されています。 そしてstones1.inc の中に以下の記述があります。
stones1.inc(抜粋) |
//------------ White & Pinkish Tan Marble ... #declare T_Stone12 = texture{T_Grnt23 scale <1, 5, 1> rotate <0, 0, 50> finish{ambient 0.2 crand 0.03} } texture{T_Grnt0a scale <1, 3, 2> rotate <0, 0, -30> finish{phong 1.0 phong_size 90} } |
物体の形に使っている Sphere などは "shapes.inc" で定義されています。 立方体(Cube)の定義はshapes.incが読み込むshapes_old.incで定義されています。 正十二面体(Dodecahedron)は shapes2.inc で定義されているので、 これを使う場合はシーンファイルの中で新たにinclude文を加えて
#include "shapes2.inc"と書く必要があります。
参考書「POV-Rayではじめるレイトレーシング【改訂第2版】」の順番にそって シーンファイルを作る練習をしましょう。
hajimete.pov |
#include "colors.inc" #include "shapes.inc" #include "stones.inc" camera { location <5,5,-10> look_at <0,0,0> angle 20 } light_source { <0,10,-10> color White } object { Sphere texture { T_Stone12 } } |
hajimete2.povへの変更 |
*** hajimete.pov Wed Oct 7 09:21:30 2020 --- hajimete2.pov Wed Oct 7 09:21:30 2020 *************** *** 8,14 **** angle 20 } ! light_source { <0,10,-10> color White } object { Sphere --- 8,14 ---- angle 20 } ! light_source { <0,10,-10> color White*2 } object { Sphere |
hajimete3.povへの変更 |
*** hajimete2.pov Wed Oct 7 09:21:30 2020 --- hajimete3.pov Wed Oct 7 09:21:30 2020 *************** *** 8,14 **** angle 20 } ! light_source { <0,10,-10> color White*2 } object { Sphere --- 8,15 ---- angle 20 } ! light_source { <0,10,-10> color White } ! light_source { <5,0,-10> color White } object { Sphere |
hajimete4.povへの変更 |
*** hajimete3.pov Wed Oct 7 09:21:30 2020 --- hajimete4.pov Wed Oct 7 09:21:30 2020 *************** *** 13,17 **** object { Sphere ! texture { T_Stone12 } } --- 13,17 ---- object { Sphere ! texture { T_Stone13 } } |
hajimete5.povへの変更 |
*** hajimete4.pov Wed Oct 7 09:21:30 2020 --- hajimete5.pov Wed Oct 7 09:21:30 2020 *************** *** 1,6 **** --- 1,7 ---- #include "colors.inc" #include "shapes.inc" #include "stones.inc" + #include "woods.inc" camera { location <5,5,-10> *************** *** 13,17 **** object { Sphere ! texture { T_Stone13 } } --- 14,18 ---- object { Sphere ! texture { T_Wood7 } } |
hajimete6.povへの変更 |
*** hajimete5.pov Wed Oct 7 09:21:30 2020 --- hajimete6.pov Wed Oct 7 09:21:30 2020 *************** *** 13,18 **** light_source { <5,0,-10> color White } object { ! Sphere texture { T_Wood7 } } --- 13,18 ---- light_source { <5,0,-10> color White } object { ! Cube texture { T_Wood7 } } |
hajimete7.povへの変更 |
*** hajimete6.pov Wed Oct 7 09:21:30 2020 --- hajimete7.pov Wed Oct 7 09:21:30 2020 *************** *** 2,7 **** --- 2,8 ---- #include "shapes.inc" #include "stones.inc" #include "woods.inc" + #include "shapes2.inc" camera { location <5,5,-10> *************** *** 13,18 **** light_source { <5,0,-10> color White } object { ! Cube texture { T_Wood7 } } --- 14,19 ---- light_source { <5,0,-10> color White } object { ! Dodecahedron texture { T_Wood7 } } |
年輪の向きを変える。 (p.223図8-10回転の向き)
hajimete8.povへの変更 |
*** hajimete7.pov Wed Oct 7 09:21:30 2020 --- hajimete8.pov Wed Oct 7 09:21:30 2020 *************** *** 15,19 **** object { Dodecahedron ! texture { T_Wood7 } } --- 15,22 ---- object { Dodecahedron ! texture { ! T_Wood7 ! rotate <0,-30,0> ! } } |
hajimete9.povへの変更 |
*** hajimete8.pov Wed Oct 7 09:21:30 2020 --- hajimete9.pov Wed Oct 7 09:21:30 2020 *************** *** 18,22 **** --- 18,23 ---- texture { T_Wood7 rotate <0,-30,0> + scale 2 } } |
komuro.inc (本のCDに付属)を用いて、物体XYZaxisを追加する。 komuro.inc はダウンロードして、hajimete10.povと同じフォルダに置いて下さい。
hajimete10.povへの変更 |
*** hajimete9.pov Wed Oct 7 09:21:30 2020 --- hajimete10.pov Wed Oct 7 09:21:30 2020 *************** *** 3,8 **** --- 3,9 ---- #include "stones.inc" #include "woods.inc" #include "shapes2.inc" + #include "komuro.inc" camera { location <5,5,-10> *************** *** 21,23 **** --- 22,26 ---- scale 2 } } + + object { XYZaxis } |
hajimete11.povへの変更 |
*** hajimete10.pov Wed Oct 7 09:21:30 2020 --- hajimete11.pov Wed Oct 7 09:21:30 2020 *************** *** 8,14 **** camera { location <5,5,-10> look_at <0,0,0> ! angle 20 } light_source { <0,10,-10> color White } --- 8,14 ---- camera { location <5,5,-10> look_at <0,0,0> ! angle 40 } light_source { <0,10,-10> color White } |
hajimete12.povへの変更 |
*** hajimete11.pov Wed Oct 7 09:21:30 2020 --- hajimete12.pov Wed Oct 7 09:21:30 2020 *************** *** 21,26 **** --- 21,27 ---- rotate <0,-30,0> scale 2 } + scale <3,1,1> } object { XYZaxis } |
hajimete13.povへの変更 |
*** hajimete12.pov Wed Oct 7 09:21:30 2020 --- hajimete13.pov Wed Oct 7 09:21:30 2020 *************** *** 22,27 **** --- 22,28 ---- scale 2 } scale <3,1,1> + rotate <0,0,45> } object { XYZaxis } |
hajimete14.povへの変更 |
*** hajimete13.pov Wed Oct 7 09:21:30 2020 --- hajimete14.pov Wed Oct 7 09:21:30 2020 *************** *** 23,28 **** --- 23,29 ---- } scale <3,1,1> rotate <0,0,45> + translate <0,0,-4> } object { XYZaxis } |
hajimete15.povへの変更 |
*** hajimete14.pov Wed Oct 7 09:21:30 2020 --- hajimete15.pov Wed Oct 7 09:21:30 2020 *************** *** 27,29 **** --- 27,34 ---- } object { XYZaxis } + + object { + Plane_XZ + texture { T_Stone3 } + } |
hajimete16.povへの変更 |
*** hajimete15.pov Wed Oct 7 09:21:30 2020 --- hajimete16.pov Wed Oct 7 09:21:30 2020 *************** *** 30,34 **** object { Plane_XZ ! texture { T_Stone3 } } --- 30,36 ---- object { Plane_XZ ! texture { ! pigment { checker color White, color Black } ! } } |
地面ぎりぎりへ
hajimete17.povへの変更 |
*** hajimete16.pov Wed Oct 7 09:21:30 2020 --- hajimete17.pov Wed Oct 7 09:21:30 2020 *************** *** 6,12 **** #include "komuro.inc" camera { ! location <5,5,-10> look_at <0,0,0> angle 40 } --- 6,12 ---- #include "komuro.inc" camera { ! location <5,0.5,-10> look_at <0,0,0> angle 40 } |
hajimete18.povへの変更 |
*** hajimete17.pov Wed Oct 7 09:21:30 2020 --- hajimete18.pov Wed Oct 7 09:21:30 2020 *************** *** 7,13 **** camera { location <5,0.5,-10> ! look_at <0,0,0> angle 40 } --- 7,13 ---- camera { location <5,0.5,-10> ! look_at <0,2,0> angle 40 } |
hajimete19.povへの変更 |
*** hajimete18.pov Wed Oct 7 09:21:30 2020 --- hajimete19.pov Wed Oct 7 09:21:30 2020 *************** *** 34,36 **** --- 34,38 ---- pigment { checker color White, color Black } } } + + background { color Blue } |
hajimete20.povへの変更 |
*** hajimete19.pov Wed Oct 7 09:21:30 2020 --- hajimete20.pov Wed Oct 7 09:21:30 2020 *************** *** 4,9 **** --- 4,10 ---- #include "woods.inc" #include "shapes2.inc" #include "komuro.inc" + #include "skies.inc" camera { location <5,0.5,-10> *************** *** 35,38 **** } } ! background { color Blue } --- 36,39 ---- } } ! sky_sphere {S_Cloud1 } |
hajimete21.povへの変更 |
*** hajimete20.pov Wed Oct 7 09:21:30 2020 --- hajimete21.pov Wed Oct 7 09:21:30 2020 *************** *** 27,33 **** translate <0,0,-4> } ! object { XYZaxis } object { Plane_XZ --- 27,33 ---- translate <0,0,-4> } ! //object { XYZaxis } object { Plane_XZ |
hajimete22.povへの変更 |
*** hajimete21.pov Wed Oct 7 09:21:30 2020 --- hajimete22.pov Wed Oct 7 09:21:30 2020 *************** *** 5,10 **** --- 5,11 ---- #include "shapes2.inc" #include "komuro.inc" #include "skies.inc" + #include "golds.inc" camera { location <5,0.5,-10> *************** *** 18,24 **** object { Dodecahedron texture { ! T_Wood7 rotate <0,-30,0> scale 2 } --- 19,25 ---- object { Dodecahedron texture { ! T_Gold_1E rotate <0,-30,0> scale 2 } |
hajimete23.povへの変更 |
*** hajimete22.pov Wed Oct 7 09:21:30 2020 --- hajimete23.pov Wed Oct 7 09:21:30 2020 *************** *** 6,11 **** --- 6,12 ---- #include "komuro.inc" #include "skies.inc" #include "golds.inc" + #include "glass.inc" camera { location <5,0.5,-10> *************** *** 19,25 **** object { Dodecahedron texture { ! T_Gold_1E rotate <0,-30,0> scale 2 } --- 20,26 ---- object { Dodecahedron texture { ! T_Ruby_Glass rotate <0,-30,0> scale 2 } |
hajimete24.povへの変更 |
*** hajimete23.pov Wed Oct 7 09:21:30 2020 --- hajimete24.pov Wed Oct 7 09:21:30 2020 *************** *** 39,41 **** --- 39,49 ---- } sky_sphere {S_Cloud1 } + + fog { + fog_type 2 + distance 8 + color White + fog_offset 2 + fog_alt 0.2 + } |