私はWebGLを書いています-テクスチャを使用するThree.jsアプリケーションで、http: //stemkoski.github.com/Three.js/のチュートリアルを使用しています。ページをローカルで実行しようとすると、次のエラーが発生します。
Uncaught TypeError: Cannot read property 'map' of undefined Three.js:2728
Cross-origin image load denied by Cross-Origin Resource Sharing policy. index.html:1
Uncaught TypeError: Cannot read property 'attributes' of undefined Three.js:3600
Cross-origin image load denied by Cross-Origin Resource Sharing policy. index.html:1
Uncaught TypeError: Cannot read property 'attributes' of undefined Three.js:3600
Uncaught TypeError: Cannot read property 'attributes' of undefined Three.js:3600
クロスオリジンリソースシェアリングポリシーは、ローカルでの画像の使用に関連していることを知っています。ただし、ターゲットで開いたChromeウィンドウでも発生します。
C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --allow-file-access-from-files
古いスイッチを使用している可能性はありますか?私がしていることは、ショートカットを介してChromeブラウザーを開き、アドレス履歴を調べてindex.htmlファイルの場所を探すことです。
これが私が書いたコードのいくつかであり、私が思うものは目前の問題に最も関連しています。
var materialArray = [];
materialArray.push( new THREE.MeshBasicMaterial( { map: THREE.ImageUtils.loadTexture( "img/skybox-xpos.png" ) } ) );
materialArray.push( new THREE.MeshBasicMaterial( { map: THREE.ImageUtils.loadTexture( "img/skybox-xneg.png" ) } ) );
materialArray.push( new THREE.MeshBasicMaterial( { map: THREE.ImageUtils.loadTexture( "img/skybox-ypos.png" ) } ) );
materialArray.push( new THREE.MeshBasicMaterial( { map: THREE.ImageUtils.loadTexture( "img/skybox-yneg.png" ) } ) );
materialArray.push( new THREE.MeshBasicMaterial( { map: THREE.ImageUtils.loadTexture( "img/skybox-zpos.png" ) } ) );
materialArray.push( new THREE.MeshBasicMaterial( { map: THREE.ImageUtils.loadTexture( "img/skybox-zneg.png" ) } ) );
for ( var i = 0; i < 6; i++ )
{
materialArray[ i ].side = THREE.BackSide;
}
var skyboxMaterial = new THREE.MeshFaceMaterial( materialArray );
var skyboxGeom = new THREE.CubeGeometry( 5000, 5000, 5000, 1, 1, 1 );
ShapeShifter.skybox = new THREE.Mesh( skyboxGeom, skyboxMaterial );
ShapeShifter.scene.add( ShapeShifter.skybox );
私はこの質問を考えました:リビジョン54(アップデート2)以降のMeshFaceMaterialの問題も、私が直面していることに関連している可能性がありますが、答えを実装する方法がわかりません。THREE.GeometryUtils.setMaterialIndexの呼び出しはどこに行きますか?
ご協力いただきありがとうございます。