POV-Rayのシーンファイル(.pov)の中では、clock という 変数が定義されている。
デフォルトでは、clockの値は最初のフレームでは0, 最後のフレームでは1.0となる。
もしclockを0.0〜1.0ではなくて、コマ割りのように1.0〜整数値(たとえば18) として扱いたければ、Initial_Clock=1.0, Final_Clock=10.0, Final_Frame=10 などと定義すればclockは1.0, 2.0, ..., 10.0と変化してコマ番号となる。
| Initial_Frame=n | 最初のフレーム番号をnに設定する。 |
| Final_Frame=n | 最後のフレーム番号をnに設定する。 |
| Initial_Clock=n.n | 最初のクロック値をn.nに設定する。 |
| Final_Clock=n.n | 最後のクロック値をn.nに設定する。 |
| +KFIn | Initial_Frame=nと同じ |
| +KFFn | Final_Frame=nと同じ |
| +KIn.n | Initial_Clock=n.nと同じ |
| +KFn.n | Final_Clock=n.nと同じ |
時間を0.0から1.0まで経過させて、18枚の画像を生成するには Render Option に +KFF18 という指定を追加する。 時間を0.0から17.0まで経過させて、18枚の画像を生成するには Render Option に +KI0.0 + KF17.0 +KFF18 という指定を追加する。
Macのpovray ではclockの指定はメニューから行う。 「詳細」→ "Clock Settings" において "Animation Settings (Clock)" にチェックを入れ、 "Fial Frame" を "18" に、 "Subset" を"17" に変更する。
また、Macの場合は Finder で見ると animated png が動いて表示されるので、 わざわざブラウザで見る必要はあまりないかも
| anim01.pov (+W320 +H240 +KFF18 +FN) |
#include "colors.inc"
#include "shapes.inc"
#include "stones.inc"
camera {
location <15,5,10>
look_at <0,0,0>
angle 25
}
light_source { <5,-10,-10> color White }
light_source { <10,10,10> color White*2 }
object {
Cone_X
texture { T_Stone13 }
translate <1,0,0>
rotate <0,360*clock,0>
}
background { color SummerSky }
|
+KFF18というレンダリングオプションを指定すると、 シーンファイル anim01.pov から anim0101.pov 〜 anim0118.pov という 画像ファイルが連続して生成される。
この例ではclockが0.0〜1.0まで変化することに注意。 最初のフレームでは clock=0.0, 最後のフレームではclock=1.0となる。
| bearleg02.pov (+W320 +H240 +KI0.0 +KF17.0 +KFF18 +FN) |
// Nitta 2008.04.20
#include "colors.inc"
#include "shapes.inc"
#include "woods.inc"
camera {
location <25,15,20>
look_at <0,2,0>
angle 10
}
light_source { <30,20,20> color White*2 }
light_source { <-30,20,20> color White }
#declare LEG_LENGTH = 1.2;
#declare SOLE_HEIGHT = 0.4;
#declare THETA = 2 * 3.14 * clock/18;
#declare PHI = 30*sin(THETA);
#declare BEAR_LEG =
union {
object {
Sphere
texture { T_Wood7 }
scale <0.45,LEG_LENGTH,0.45>
translate <0,-LEG_LENGTH,0>
}
object {
Sphere
texture { T_Wood7 }
scale <0.7,SOLE_HEIGHT,0.45>
translate <0.15,-LEG_LENGTH*2,0>
}
}
object {
BEAR_LEG
rotate <0,0,-PHI>
translate <0,LEG_LENGTH*2+SOLE_HEIGHT,0.35>
}
object {
BEAR_LEG
rotate <0,0,PHI>
translate <0,LEG_LENGTH*2+SOLE_HEIGHT,-0.35>
}
|
+KI0.0 +KF17.0 +KFF18というレンダリングオプションを指定すると、 シーンファイル anim01.pov から anim0101.pov 〜 anim0118.pov という 画像ファイルが連続して生成される。
この例ではclockが0.0〜17.0まで変化することに注意。 最初のフレームでは clock=0.0, 最後のフレームではclock=17.0となる。