Papervision3Dの勉強 Text3Dで時計

matsu45122009-06-11



初めてText3Dを使って時計を作ってみた


こんな感じ
(ソースは右クリック)


プログラム解説


時計の機能は昨日作ったものと基本的には同じ。


Text3Dの使い方


まずはLetter3DMaterialを生成して設定する。

var mat:Letter3DMaterial=new Letter3DMaterial();
mat.fillColor=0xFFFFFF;


次にText3Dの生成

second1=new Text3D("0123456789", new HelveticaBold(), mat);


引数は左から文字列、フォント、Letter3DMaterial


これで、"0123456789"という文字列の3D空間に表示できるオブジェクトができました。
ここで、Text3Dクラスにはlettersというプロパティがあり、一文字ずつのDisplayObject3D型の配列です。
こんな風に格納されています。


sound1.letters[0] 0という文字のDisplayObject3D
sound1.letters[1] 1という文字のDisplayObject3D


これが0〜9まで格納されています。


これを利用して一文字ずつ別の動きをさせる例が

for(var i:uint = 0; i < sound1.letters.length; i++){
    Tweener.addTween(sound1.letters[i], {x:Math.random*2000-1000, y:Math.random*2000-1000, z:Math.random*2000-1000, time:2});
}


みたいな感じ。



これでブログパーツでも作ってみようかな。