Exemple #1
0
  var createMesh = function (gl, arr) {
    var mesh = new Mesh(gl);
    mesh.setVertices(arr.vertices);
    if (arr.faces) mesh.setFaces(arr.faces);
    if (arr.uv && arr.facesUV) mesh.initTexCoordsDataFromOBJData(arr.uv, arr.facesUV);

    mesh.init();
    if (gl) mesh.initRender();
    return mesh;
  };
Exemple #2
0
 convertToStaticMesh: function (mesh) {
   if (!mesh.getDynamicTopology) // already static
     return mesh;
   // dynamic to static mesh
   var newMesh = new Mesh(mesh.getGL());
   newMesh.setID(mesh.getID());
   newMesh.setTransformData(mesh.getTransformData());
   newMesh.setVertices(mesh.getVertices().subarray(0, mesh.getNbVertices() * 3));
   newMesh.setColors(mesh.getColors().subarray(0, mesh.getNbVertices() * 3));
   newMesh.setMaterials(mesh.getMaterials().subarray(0, mesh.getNbVertices() * 3));
   newMesh.setFaces(mesh.getFaces().subarray(0, mesh.getNbFaces() * 4));
   newMesh.init();
   newMesh.setRender(mesh.getRender());
   mesh.getRender()._mesh = newMesh;
   newMesh.initRender();
   return newMesh;
 },