2013-02-01 84 views
0

在Three.js场景导出器中,当我导出整个场景时,在输出json数据中,我意识到纹理不会导出正确。它产生纹理线作为SceneExporter输出错误?

"Texture_3": { "url" : "undefined", .... 

但有一个纹理。所以我检查了场景出口代码有

var output = [ 
    '\t' + LabelString(getTextureName(t)) + ': {', 
' "url" : "' + t.sourceFile + '",', 
' "repeat" : ' + Vector2String(t.repeat) + ',', 
' "offset" : ' + Vector2String(t.offset) + ',', 
' "magFilter" : ' + NumConstantString(t.magFilter) + ',', 
' "minFilter" : ' + NumConstantString(t.minFilter) + ',', 
' "anisotropy" : ' + t.anisotropy, 
'}' 
]; 

t参数是材料的映射属性,它是THREE.Texture。但THREE.Texture中没有“sourceFile”属性或字段。那该怎么办?这是一个错误吗?

回答

1

我自己的答案在下面,改变SceneExporters代码纠正了输出。我不确定这是官方解决方案,但我为我工作。

var output = [ 
    '\t' + LabelString(getTextureName(t)) + ': {', 
' "url" : "' + t.image.src + '",', 
' "repeat" : ' + Vector2String(t.repeat) + ',', 
' "offset" : ' + Vector2String(t.offset) + ',', 
' "magFilter" : ' + NumConstantString(t.magFilter) + ',', 
' "minFilter" : ' + NumConstantString(t.minFilter) + ',', 
' "anisotropy" : ' + t.anisotropy, 
'}' 
];