「動く背景(水玉)」の応用応用で、水玉をビー玉へ置き換えてみました(下図およびリンク参照)。
上のデータでは、何かの「背景」として使える用に配慮したため、あまり目を引かないよう、単純な形状と、ツートンカラーに徹しました。
対して、今回のデータは、見た目の華やかさに主眼を置いてアレンジしています。カラフルなビー玉を規則的に配列して見ました。
ビー玉のモデリングデータは、これまでに何度か使ってきた経緯があります。例えば、以下の記事(リンク)を参照ください。
上の記事以外にも数回使っていますので、探してみてください。
「ビー玉」をものすごく単純化してモデリングしているのですが、意外とそれらしく見えるので、お気に入りの一つです。モデリングデータは、こちらの記事(「立体万華鏡」)でライブラリ化してあったので、それを取り込んで使いました。
「動く背景(水玉)」のデータでは、リニアに大⇔小を繰り返していたのに対して、今回は三角関数(sin()関数)を使って、大⇔小を繰り返す様に変更しました。一番大きくなる瞬間と、一番小さくなる瞬間の大きさの変化が小さく、滑らかに繋がるので、こちらの動きの方が適していると感じました。
「動く背景(水玉)」では、背景として目を引かない様、単純な丸い形状でした。しかし今回のビー玉は、右 → 左に動くにつれて、ゆっくり回転させています。光線源からの光の反射具合が変化するため、それも見ていて面白いと思います。
以下、完成動画でご確認ください。
完成したデータをリンクしておきます。
1) | Xi-TRACEデータ | marble_dots.xitr |
2) | Xi-TRACEライブラリ | kaleidoscope_vr.lib |
1)でレイトレーシングを実行します。2)でビー玉のモデリングデータが定義されており、1)から読み込んで使います。1)と同じディレクトリに格納して、レイトレーシングを実行してください。
完成した動画を以下にリンクしておきます。
1個1個のビー玉が、ずっとつながった動きになっているので、どれか1個のビー玉に注目して目で追いかけると、右端から左端に消えるまで違和感なく回転している様子をご覧いただけると思います。