Blender で建物を作成し、three.js にインポートしました。キューブカメラと次の行を使用して、建物の窓に半反射効果を与えることができました。
geometry.materials[3] = new THREE.MeshLambertMaterial( { color: 0x0000ff, ambient:0x0000aa, envMap: cubeCamera.renderTarget, reflectivity: 0.7, refractionRatio: 0.25 } );
geometry.materials[3] は、ウィンドウの Blender マテリアルです。問題は、私が作成したこの建物が超高層ビルで、たまたまたくさんの窓があることです。上記のようにすると、すべてのウィンドウで同じ反射が得られます。これは、ウィンドウの間に他のマテリアルがあり、すべてのウィンドウ マテリアルが壁マテリアルによって次のウィンドウ マテリアルから分離されているためです。しかし、建物全体が 1 つの素材だけでできているかのように、すべての窓に 1 つの大きな反射を持たせたいと考えています。反射は窓にのみ表示され、壁には表示されません。窓はすべて同じ素材です。この動作をアーカイブする方法はありますか?