物体の繰り返しコピー配置 を、 立方体で試してみて不具合が発覚しました。
立方体を複数にコピーして配置しようとしたのですが、 1つの四角い平面しか分身してくれません。
立方体は6つの四角い平面に展開されて処理されるのですが、 そこで分身した全てのデータが、コピー元の同じ'rxs'データを指していたのが原因でした。
これまで試した球や単独の四角い平面では、複数の物体に展開される事が無かったので、 不具合が潜んだままでした。
他にも例えば円柱の場合、側面の筒と上下のフタの円に分身する時に同じ問題が出ます。
深いコピー用の関数を用意して、まとめて対処しておきます。
$ mv rt_v39 rt_v40 $ cat v40.patch | ( cd rt_v40 ; patch -p1 ) $ cd rt_v40 $ make clean $ make
最初のデータ展開箇所だけの問題で、速度には影響ないということで、 いつもの速度確認は省略。
とりあえず、展開で問題になった立方体を円形にコピー配置して確認しておきます。
$ ./cg.py eyep=[0,0,0],[200,200,40],10 sec=10 data_name=colosseum name=out_v40/col_t fps=2 div=4 : wh : 19200/19200(100.0%) : fin 6.32s frm : 20/20(100.0%) : fin 2m 24.46s estimated 9.63 hour at 640*480 30fps
$ ./cg.py eyep=[0,0,0],[200,200,40],10 sec=10 data_name=colosseum name=out_v40/col : wh : 307200/307200(100.0%) : fin 1m 29.51s frm : 300/300(100.0%) : fin 9h 10m 30.63s $ ls -lt out_v40/ | head -rw-r--r-- 1 kondoh staff 2283827 5 22 08:10 col.mp4 :
$ ./cg.py eyep=[0,0,0],[300,300,60],10 sec=10 data_name=colosseum2 name=out_v40/col2_t fps=5 div=16 wh : 1200/1200(100.0%) : fin 2.41s frm : 50/50(100.0%) : fin 2m 3.29s estimated 52.61 hour at 640*480 30fps
予想時間は52時間!
$ ./cg.py eyep=[0,0,0],[300,300,60],10 sec=10 data_name=colosseum2 name=out_v40/col2_one n=1 init_sec=10 show_sec=-1 : wh : 288756/307200(94.0%) : total 8m 56.84s : rest 32.23s : 2018/05/22 09:38:24 wh : 307200/307200(100.0%) : fin 8m 24.65s frm : 1/1(100.0%) : fin 9m 13.41s $ ls -lt out_v40/ | head -rw-r--r-- 1 kondoh staff 14244 5 22 09:38 col2_one.mp4 -rw-r--r-- 1 kondoh staff 100076 5 22 09:37 col2_one00001.jpg :
1コマ10分として 10*300/60 = 50時間
物体の数が多過ぎという事ですかね。div=2 で妥協して50/4=12.5時間で。
$ ./cg.py eyep=[0,0,0],[300,300,60],10 sec=10 data_name=colosseum2 name=out_v40/col2 div=2 : wh : 76800/76800(100.0%) : fin 2m 8.56s frm : 300/300(100.0%) : fin 11h 37m 39.34s estimated 46.51 hour at 640*480 30fps $ ls -lt out_v40/ | head -rw-r--r-- 1 kondoh staff 2506857 5 22 21:31 col2.mp4 :