ご挨拶、
このコードでは、データURLを処理するときにd.crossOriginの設定を回避できますか?
THREE.ImageUtils = {crossOrigin: "",loadTexture: function(a, b, c) {
var d = new Image, e = new THREE.Texture(d, b);
d.onload = function() {
e.needsUpdate = !0;
c && c(this)
};
d.crossOrigin = this.crossOrigin;
d.src = a;
return e
次のようなチェックを追加できます。
if( a.substr(0,4) != "data" )
d.crossOrigin = this.crossOrigin;
これでうまくいきます。 それ以外の場合、Chrome 17は、データURLのクロスオリジンリソースシェアリングポリシーによって拒否されたクロスオリジンイメージの読み込みをスローします。
T。
うーん...その場合はImageUtils.loadTextureを使用すべきではないと思います。 これを行うだけです:
var image = document.createElement( 'img' );
image.src = dataurl;
var texture = new THREE.Texture( image );
texture.needsUpdate = true;
完璧に動作します、ありがとう!
@mrdoob 、上記のサンプルをありがとう!
最も参考になるコメント
うーん...その場合はImageUtils.loadTextureを使用すべきではないと思います。 これを行うだけです: