在Three.js SceneExporter中,当我导出整个场景时,在输出json数据中我意识到纹理输出不正确。它生成纹理线
"Texture_3": { "url" : "undefined", ....
但是有一个纹理。所以我检查了SceneExporters代码
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”属性或字段。那应该是什么?这是一个错误吗?
答案 0 :(得分:1)
我自己的答案如下,更改SceneExporters Code更正了输出。我不确定这是官方解决方案,但我为我工作。
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,
'}'
];