public void Render(Jusin.ThreeDLib.ModelBase.ModelEntityBase entity) { foreach (IObjectRender render in renderes) { render.Render(entity); } }
public void Render(Jusin.ThreeDLib.ModelBase.ModelEntityBase entity) { foreach (IObjectRender render in renderes) { System.Diagnostics.Debug.WriteLine(render.getRenderKind()); render.Render(entity); } }
protected Jusin.ThreeDLib.ModelBase.ModelEntityBase convertEntity(ThirdParty.ThreeDLib.ThreeD.Entity e) { Jusin.ThreeDLib.ModelBase.ModelEntityBase e_base = new Jusin.ThreeDLib.ModelBase.ModelEntityBase(); Jusin.ThreeDLib.ModelBase.Triangle[] new_triangles = new Jusin.ThreeDLib.ModelBase.Triangle[e.indices.Length]; Jusin.ThreeDLib.ModelBase.Vertex[] new_vertexes = new Jusin.ThreeDLib.ModelBase.Vertex[e.vertices.Length]; Jusin.ThreeDLib.ModelBase.Material[] new_materials = new Jusin.ThreeDLib.ModelBase.Material[e.materials.Length]; Jusin.ThreeDLib.ModelBase.TexCoord[] new_texcoords = new Jusin.ThreeDLib.ModelBase.TexCoord[e.texcoords.Length]; int i = 0; foreach (Vector vect in e.vertices) { Jusin.ThreeDLib.ModelBase.Vertex vert = new Jusin.ThreeDLib.ModelBase.Vertex((float)vect.X, (float)vect.Y, (float)vect.Z); new_vertexes[i] = vert; if (e.Normalized) { vert.norm = new Jusin.ThreeDLib.ModelBase.Vector3d(e.normals[i].X, e.normals[i].Y, e.normals[i].Z); } i++; } i = 0; foreach (Material mat in e.materials) { new_materials[i] = new Jusin.ThreeDLib.ModelBase.Material(); new_materials[i].Ambient = mat.Ambient; new_materials[i].Diffuse = mat.Diffuse; new_materials[i].Shininess = mat.Shininess; new_materials[i].Specular = mat.Specular; new_materials[i].Trans = mat.Trans; new_materials[i].setTextureIdForCopy(mat.TextureId); i++; } i = 0; foreach (Triangle indice in e.indices) { Jusin.ThreeDLib.ModelBase.Triangle tri = new Jusin.ThreeDLib.ModelBase.Triangle(new_vertexes[indice.vertex1], new_vertexes[indice.vertex2], new_vertexes[indice.vertex3]); tri.material = new_materials[e.mat_to_indices[i]]; new_triangles[i] = tri; i++; } i = 0; foreach (TexCoord coord in e.texcoords) { new_texcoords[i].U = coord.U; new_texcoords[i].V = coord.V; new_vertexes[i].tex_coord = new_texcoords[i]; i++; } e_base.vertices = new_vertexes; e_base.materials = new_materials; e_base.triangles = new_triangles; e_base.normed = e.Normalized; return(e_base); }