各面に 1 つずつ、テクスチャに 6 つの異なる画像を使用する立方体を描画しようとしています。立方体を点光源で照らしたいと考えています。
iOS で使用できるプラットフォームであるため、キャンバス レンダラーを使用しています。
ランバートが行くべき道だと理解しました。を使用してマテリアル配列を構築しMeshLambertMaterial
ました。
さまざまな面を持つ立方体をレンダリングすることができましたが、イルミネーションが機能していません。このリンクを参照してください。
ここで私は使用しました:
cube = new THREE.Mesh(geometry, new THREE.MeshFaceMaterial());
(これを表示するには Firefox を使用する必要があります。Mac の Safari では見栄えが悪くなりますが (これは別の問題です)、iPhone シミュレーターでは問題ありません。)
イルミネーションが機能するバージョンも取得しましたが、面はすべて同じ色で、テクスチャ イメージが失われているように見えます。このリンクを参照してください。
ここで私が使用した
cube = new THREE.Mesh(geometry, new THREE.MeshLambertMaterial());
残念ながら、顔のテクスチャと照明を連携させることはできません。
コードはその 1 行だけが異なります。
私は何か間違ったことをしているに違いありませんが、それが何であるかを理解することはできません。私のグーグル検索はすべて役に立ちませんでした。誰かが私を正しい方向に向けることができれば幸いです。
ところで、この素晴らしいソフトウェアの作成者に感謝します。