var globalObject="undefined"!=typeof global?global:"undefined"!=typeof window?window:this,babylonDependency=globalObject&&globalObject.BABYLON||BABYLON||"undefined"!=typeof require&&require("babylonjs"),BABYLON=babylonDependency,__decorate=this&&this.__decorate||function(e,t,r,i){var a,s=arguments.length,n=s<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)n=Reflect.decorate(e,t,r,i);else for(var o=e.length-1;o>=0;o--)(a=e[o])&&(n=(s<3?a(n):s>3?a(t,r,n):a(t,r))||n);return s>3&&n&&Object.defineProperty(t,r,n),n},__extends=this&&this.__extends||(function(){var e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])};return function(t,r){function i(){this.constructor=t}e(t,r),t.prototype=null===r?Object.create(r):(i.prototype=r.prototype,new i)}})(),BABYLON;!(function(e){var t=(function(){function t(){}return t.OBJ=function(t,r,i,a){var s=[],n=1;r&&(i||(i="mat"),s.push("mtllib "+i+".mtl"));for(var o=0;o0&&(s.byteOffset=t),a&&(s.name=a),i&&(s.byteStride=i),s},r.prototype.createAccessor=function(e,t,r,i,a,s,n,o){var l={name:t,bufferView:e,componentType:i,count:a,type:r};return n&&(l.min=n),o&&(l.max=o),s&&(l.byteOffset=s),l},r.prototype.calculateMinMax=function(e,t,r,i,a){var s=[1/0,1/0,1/0],n=[-1/0,-1/0,-1/0],o=t+r;if(r>0)for(var l=t;ln[f]&&(n[f]=c),++u}return{min:s,max:n}},r.prototype.writeAttributeData=function(t,r,i,a,s,n,o){var l=s,u=r.length/i,h=0;switch(t){case e.VertexBuffer.PositionKind:case e.VertexBuffer.NormalKind:for(var f=0;f0&&(a.buffers=[i]),this.nodes&&0!==this.nodes.length&&(a.nodes=this.nodes),this.meshes&&0!==this.meshes.length&&(a.meshes=this.meshes),this.scenes&&0!==this.scenes.length&&(a.scenes=this.scenes,a.scene=0),this.bufferViews&&0!==this.bufferViews.length&&(a.bufferViews=this.bufferViews),this.accessors&&0!==this.accessors.length&&(a.accessors=this.accessors),this.materials&&0!==this.materials.length&&(a.materials=this.materials),this.textures&&0!==this.textures.length&&(a.textures=this.textures),this.images&&0!==this.images.length)if(e){a.images=[];for(var s=this.images.length,n=this.totalByteLength,o=0;o-1)if(l=n.getVertexBuffer(t),u=l.getOffset(),h=l.getData(),f=l.getStrideSize(),s&&h)o=this.writeAttributeData(t,h,f,u,i,s,a),i+=o;else{var c=null;switch(t){case e.VertexBuffer.PositionKind:o=4*h.length,c="Position - "+n.name;break;case e.VertexBuffer.NormalKind:o=4*h.length,c="Normal - "+n.name;break;case e.VertexBuffer.TangentKind:o=4*h.length,c="Tangent - "+n.name;break;case e.VertexBuffer.ColorKind:o=4*h.length,c="Color - "+n.name;break;case e.VertexBuffer.UVKind:o=4*h.length,c="TexCoord 0 - "+n.name;break;case e.VertexBuffer.UV2Kind:o=4*h.length,c="TexCoord 1 - "+n.name;break;default:console.warn("Unsupported VertexBuffer kind: "+t)}if(null!==c){var p=this.createBufferView(0,i,o,4*f,c);i+=o,this.bufferViews.push(p)}}}return o},r.prototype.setPrimitiveAttributes=function(r,i,a,s,n){var o=null;i instanceof e.Mesh?o=i:i instanceof e.InstancedMesh&&(o=i.sourceMesh);var l=null,u=null,h=null,f=null,c=null,p=null;if(null!==o&&(o.isVerticesDataPresent(e.VertexBuffer.PositionKind)&&(a+=this.createBufferViewKind(e.VertexBuffer.PositionKind,i,a,s,n),l=this.bufferViews.length-1),o.isVerticesDataPresent(e.VertexBuffer.NormalKind)&&(a+=this.createBufferViewKind(e.VertexBuffer.NormalKind,i,a,s,n),u=this.bufferViews.length-1),o.isVerticesDataPresent(e.VertexBuffer.ColorKind)&&(a+=this.createBufferViewKind(e.VertexBuffer.ColorKind,i,a,s,n),h=this.bufferViews.length-1),o.isVerticesDataPresent(e.VertexBuffer.TangentKind)&&(a+=this.createBufferViewKind(e.VertexBuffer.TangentKind,i,a,s,n),h=this.bufferViews.length-1),o.isVerticesDataPresent(e.VertexBuffer.UVKind)&&(a+=this.createBufferViewKind(e.VertexBuffer.UVKind,i,a,s,n),f=this.bufferViews.length-1),o.isVerticesDataPresent(e.VertexBuffer.UV2Kind)&&(a+=this.createBufferViewKind(e.VertexBuffer.UV2Kind,i,a,s,n),c=this.bufferViews.length-1),o.getTotalIndices()>0)){var g=o.getIndices();if(n){for(var d=g.length,m=a,x=0;x0){for(var i=e.meshes,a={nodes:new Array},s=0;s