2005年1月10日月曜日

Cubeを描く POVRAY編(その3)


アニメーションgifを作ってみた。






作り方は下記。





まず、.povファイルの中身



#include "colors.inc"
#include "shapes.inc"
#include "textures.inc"
#include "glass.inc"
#include "metals.inc"
#include "woods.inc"
camera{
location<-6,100-clock*200,-12>
look_at<0,0,0>
}
light_source{ <-150,100,-200> color 1.0*White }
light_source{ <100,100,10> color 0.5*White }
light_source{ <20,100,100> color 0.5*Pink }
background { White }
//Z=-2
superellipsoid { <0.25, 0.25> texture { Soft_Silver } translate <-2, -2, -2> scale 0.9 }
superellipsoid { <0.25, 0.25> texture { Soft_Silver } translate < 0, -2, -2> scale 0.9 }
superellipsoid { <0.25, 0.25> texture { Soft_Silver } translate < 2, -2, -2> scale 0.9 }
superellipsoid { <0.25, 0.25> texture { Soft_Silver } translate <-2, 0, -2> scale 0.9 }
superellipsoid { <0.25, 0.25> texture { T_Gold_1B } translate <0, 0, -2> scale 0.9 }
superellipsoid { <0.25, 0.25> texture { Soft_Silver } translate <2, 0, -2> scale 0.9 }
superellipsoid { <0.25, 0.25> texture { Soft_Silver } translate <-2, 2, -2> scale 0.9 }
superellipsoid { <0.25, 0.25> texture { Soft_Silver } translate <0, 2, -2> scale 0.9 }
superellipsoid { <0.25, 0.25> texture { Soft_Silver } translate <2, 2, -2> scale 0.9 }
//Z=0
superellipsoid { <0.25, 0.25> texture { Soft_Silver } translate <-2, -2, 0> scale 0.9 }
superellipsoid { <0.25, 0.25> texture { T_Gold_1B } translate <0, -2, 0> scale 0.9 }
superellipsoid { <0.25, 0.25> texture { Soft_Silver } translate <2, -2, 0> scale 0.9 }
superellipsoid { <0.25, 0.25> texture { T_Gold_1B } translate <-2, 0, 0> scale 0.9 }
superellipsoid { <0.25, 0.25> texture { T_Gold_1B } translate <0, 0, 0> scale 0.9 }
superellipsoid { <0.25, 0.25> texture { T_Gold_1B } translate <2, 0, 0> scale 0.9 }
superellipsoid { <0.25, 0.25> texture { Soft_Silver } translate <-2, 2, 0> scale 0.9 }
superellipsoid { <0.25, 0.25> texture { T_Gold_1B } translate <0, 2, 0> scale 0.9 }
superellipsoid { <0.25, 0.25> texture { Soft_Silver } translate <2, 2, 0> scale 0.9 }
//Z=2
superellipsoid { <0.25, 0.25> texture { Soft_Silver } translate <-2, -2, 2> scale 0.9 }
superellipsoid { <0.25, 0.25> texture { Soft_Silver } translate <0, -2, 2> scale 0.9 }
superellipsoid { <0.25, 0.25> texture { Soft_Silver } translate <2, -2, 2> scale 0.9 }
superellipsoid { <0.25, 0.25> texture { Soft_Silver } translate <-2, 0, 2> scale 0.9 }
superellipsoid { <0.25, 0.25> texture { T_Gold_1B } translate <0, 0, 2> scale 0.9 }
superellipsoid { <0.25, 0.25> texture { Soft_Silver } translate <2, 0, 2> scale 0.9 }
superellipsoid { <0.25, 0.25> texture { Soft_Silver } translate <-2, 2, 2> scale 0.9 }
superellipsoid { <0.25, 0.25> texture { Soft_Silver } translate <0, 2, 2> scale 0.9 }
superellipsoid { <0.25, 0.25> texture { Soft_Silver } translate <2, 2, 2> scale 0.9 }




上の方のcameraを時刻に従って動かしているだけ。

これを


povray +Ipovtest.pov +Odada.jpg +W300 +H200 +V -D +X +KFF50

とかで動かすと、jpgファイルが連番で出来る。



さらに、


ls |tac|awk 'BEGIN {dada=50;} {print "cp ",$1, "dada0"dada++".jpg";}'|sh

のように、泥臭く折り返しフレーム用のファイルを作る。



これをImageMagick由来のanimateで読み込ませて、gifでsaveしてできあがり。

��もっと楽な方法があるに違いない(^^;


0 件のコメント:

コメントを投稿