将.casa-model转换为.obj

时间:2016-09-23 07:18:07

标签: javascript three.js

我有一个扩展名为.casa-model的文件。有没有办法在.obj中表示它?model link

1 个答案:

答案 0 :(得分:1)

.casa-model看起来像是专有的JSON格式,并且似乎没有记录。但是,它包含您在.obj(或任何其他)文件格式中找到的完全相同的信息(顶点,法线,uv坐标和索引)。

我会这样做:

  1. 加载并解析JSON文件
  2. 迭代casa_model.mesh

    1. 创建新的THREE.BufferGeometry
    2. 创建属性positionnormaluv并使用JSON(casa_model.mesh[i].verticescasa_model.mesh[i].normalscasa_model.mesh[i].uvs中的数据填充它们)。像这样:

      buffergeometry.addAttribute('position', 
          new THREE.BufferAttribute(new Float32Array(casa_model.mesh[i].vertices), 3));
      
    3. 创建一个index-attribute并填充来自json(casa_model.mesh[i].triangle_indices)的数据

  3. 此时你应该能够在three.js中渲染对象,如果你还想拥有.obj文件,请使用THREE.OBJExporter来获取.obj格式。