投影用のMatrix3Dオブジェクトにより、3次元空間座標の数値エレメントが納められたVectorを2次元座標の数値ベース型Vectorに変換する。uvt座標のt値も設定する。投影のための変換行列となるMatrix3Dオブジェクト。変換する3次元空間の座標を納めた数値ベース型のVectorオブジェクト。エレメント3つごとにxyzの各座標値を表す。第2引数の3次元空間座標を2次元平面に投影した座標値が納められる数値ベース型のVectorオブジェクト。エレメントは書替えられるので、空のVectorオブジェクトを指定すればよい。設定された値はエレメント2つごとにxy座標を表す。投影されるテクスチャのuvt座標値を表す数値ベース型のVectorオブジェクト。t値は奥行きを示し、このメソッドにより設定される(したがって、引数に渡すt値は0でよい)。説明Utils3D.projectVectors()メソッドは、変換のためのMatrix3DオブジェクトとVectorオブジェクト[*1]に納めた3次元空間座標ならびにuv座標をそれぞれ引数として渡すと、2次元平面に投影した座標を別のVectorインスタンスに設定します。Graphics.drawTriangles()メソッドと組合わせて、テクスチャマッピング[*2]に用いられます。変換を行うMatrix3Dオブジェクトです。第2引数には、投影する三次元空間の座標値を、それぞれxyzの順で数値ベース型のVectorオブジェクトに納めて指定します。第3引数には、空の数値ベース型のVectorインスタンスを渡します。第2引数の3次元座標を2次元平面に投影したxy座標値が、このオブジェクトに設定されます。第4引数は、uv座標に奥行きを示すオプションのt値を加え、3次元座標としてこれもVectorオブジェクトで指定します。t値はメソッドが計算して設定しますので、仮に0としておいて構いません。0)までの距離、およびz座標値を用いているようです。0)までの距離、およびz座標値が用いられる。uvt座標のt値は、原点までの距離とz座標値により、つぎの式から導かれます。z座標値)つぎに、2次元平面に投影されたxまたはy座標値は、3次元空間のxあるいはy座標値と焦点距離、およびt値を用いて、つぎの式で求められます。詳しくは「Vectorクラス」をご参照ください。テクスチャマッピングとは、テクスチャとなる素材のビットマップを、オブジェクトの面に合わせて貼る(塗る)ことです。オブジェクトの表面に質感や現実感を与えます。以下の例(スクリプト001)は、正方形の3次元空間座標をy軸で30度回し、[ライブラリ]で[クラス]Imageを設定した100×100ピクセルのビットマップでテクスチャマッピングします。Utils3D.projectVectors()メソッドは、3次元空間座標を30度回転して、2次元平面に透視投影します。uvt座標のt値も、併せて計算しています。その2次元平面への投影座標とuvt座標(および三角形の頂点番号)を引数として、Graphics.drawTriangles()メソッドがテクスチャマッピングします。