2013-04-26 32 views
1

我對編程相對比較陌生,目前正努力學習更多關於three.js的JavaScript 3D庫。很多事情都比較容易理解,但我很難節省幾何和材料。如何將在Three.js中創建的幾何體及其材質保存爲collada文件?

我已經構建了一個簡單的多維數據集,並且每當圖片加載時都會將圖像投影到該多維數據集上。 這樣的:

$('#picture')[0].onload = function() { 
    var texture = new THREE.Texture(this,null); 
    texture.needsUpdate = true; 
    cube.material = new THREE.MeshBasicMaterial({ map: texture }); 
    render(); 
} 

我的目標是保存多維數據集及其材料。理想情況下,我想直接將其保存爲.dae文件,因爲我想導入我的多維數據集的另一個程序只需要.dae文件。

但是,我無法找到THREE.js的collada導出器。因此,我搜索了其他可以產生我可以在例如Blender或MeshLab,並從那裏保存爲.dae。不幸的是,我一直沒能幾何和材料/圖片保存這些出口商:

GeometryExporter.js,OBJExporter.js,SceneExporter.js

我也看了成OBJ和MTL的組合。我找到了OBJMTLLoader.js,但是我缺乏將OBJMTLLoader.js重寫到OBJMTLExporter.js的知識

任何人都可以幫助我找到一種方法從三維立方體及其(圖片)材質中獲取。 js到.dae文件?

回答

0

對於像這樣的非常簡單的用例,您可以手動編寫DAE,或者更簡單,即時修改現有的DAE。如果您更改文件擴展名,它只是XML。

使用Blender中的材質創建簡單立方體,將其導出到DAE,並將其用作模板。簡單的DAE文件不是很難用文本編輯器閱讀,你可以找到相關的部分,只需搜索&用javascript替換那些部分(紋理參考,材質屬性和UV)。

這可能不是你正在尋找的東西,但可以工作。沒有多少格式對材料有適當的支持,並且我懷疑你找到一個可以工作的,功能齊全的Three.js出口商來獲得這樣的東西(不確定)。

相關問題