public void LoadObjFromFileOk() { var _tgcObjLoader = new TgcObjLoader(); _tgcObjLoader.LoadObjFromFile(_fullobjpath); Assert.True(_tgcObjLoader.ObjMeshContainer.ListObjMesh.Count > 0); Assert.True(_tgcObjLoader.ObjMeshContainer.VertexListV.Count == 8); }
public void CreateMaterialIdsArrayOk() { TgcObjLoader _tgcObjLoader = new TgcObjLoader(); _tgcObjLoader.LoadObjFromFile(_fullobjpathmultimaterial); resObjMesh = _tgcObjLoader.ObjMeshContainer.ListObjMesh.First(); Assert.True(resObjMesh.FaceTrianglesList.Count == resObjMesh.CreateMaterialIdsArray().Length); }
public void IndexMaterialIdsArrayOk() { TgcObjLoader _tgcObjLoader = new TgcObjLoader(); _tgcObjLoader.LoadObjFromFile(_fullobjpathmultimaterial); resObjMesh = _tgcObjLoader.ObjMeshContainer.ListObjMesh.First(); int[] materialIds = resObjMesh.CreateMaterialIdsArray(); Assert.True(materialIds[15810] == 0); Assert.True(materialIds[17010] == 1); }
public void CreateMeshOnlyColor() { TgcObjLoader _tgcObjLoader = new TgcObjLoader(); _tgcObjLoader.LoadObjFromFile(_fullobjpathmeshcolorsolo); resObjMesh = _tgcObjLoader.ObjMeshContainer.ListObjMesh.First(); MeshBuilder meshBuilder = new MeshBuilder().AddDxMesh(resObjMesh.FaceTrianglesList.Count).ChargeBuffer(_tgcObjLoader.ObjMeshContainer, 0); Assert.NotNull(meshBuilder.GetInstaceDxMesh()); }
public void CreateInstanceDxMeshWithNumberFacesOK() { TgcObjLoader _tgcObjLoader = new TgcObjLoader(); _tgcObjLoader.LoadObjFromFile(_fullobjpath); resObjMesh = _tgcObjLoader.ObjMeshContainer.ListObjMesh.First(); MeshBuilder auxMeshBuilder = new MeshBuilder() .AddDxMesh(resObjMesh.FaceTrianglesList.Count); Assert.True(auxMeshBuilder.GetInstaceDxMesh().NumberFaces == resObjMesh.FaceTrianglesList.Count); }
public void AddMultiMaterialToBuilderOk() { TgcObjLoader _tgcObjLoader = new TgcObjLoader(); _tgcObjLoader.LoadObjFromFile(_fullobjpathmultimaterial); resObjMesh = _tgcObjLoader.ObjMeshContainer.ListObjMesh.First(); MeshBuilder meshBuilder = new MeshBuilder() .AddMaterials(_tgcObjLoader.ObjMaterialsLoader).ChargueMaterials(); Assert.NotNull(meshBuilder.MeshMaterials); }
public void EnsureRightTypeRenderIsLoadedOnlyColorBranch() { //TODO asegurar que si tiene material el tipo de render sea difuse map, o si tiene ligth map que sea difuse mas ligth map TgcObjLoader _tgcObjLoader = new TgcObjLoader(); _tgcObjLoader.LoadObjFromFile(_fullobjpathmeshcolorsolo); resObjMesh = _tgcObjLoader.ObjMeshContainer.ListObjMesh.First(); MeshBuilder meshBuilder = new MeshBuilder() .AddDxMesh(resObjMesh.FaceTrianglesList.Count); Assert.True(meshBuilder.ChargueBufferStrategy.RenderType == TgcMesh.MeshRenderType.VERTEX_COLOR); }
public void GetTextureCountOk() { TgcObjLoader _tgcObjLoader = new TgcObjLoader(); _tgcObjLoader.LoadObjFromFile(_fullobjpathmultimaterial); resObjMesh = _tgcObjLoader.ObjMeshContainer.ListObjMesh.First(); MeshBuilder meshBuilder = new MeshBuilder() .AddMaterials(_tgcObjLoader.ObjMaterialsLoader) .ChargueMaterials(); Assert.True(meshBuilder.GetTextureCount() == 2); }
public void CreateDxMeshWithVertexLimit() { // 21845 * 3 = 65535 // Int range 0 to 65535 TgcObjLoader _tgcObjLoader = new TgcObjLoader(); _tgcObjLoader.LoadObjFromFile(_fullobjpathmeshcolorsolo); resObjMesh = _tgcObjLoader.ObjMeshContainer.ListObjMesh.First(); MeshBuilder meshBuilder = new MeshBuilder().AddDxMesh(21844); Assert.NotNull(meshBuilder.GetInstaceDxMesh()); }
public void EnsureRightTypeRenderIsLoadedDiffuseMapBranch() { //TODO asegurar que si tiene material el tipo de render sea difuse map, o si tiene ligth map que sea difuse mas ligth map TgcObjLoader _tgcObjLoader = new TgcObjLoader(); _tgcObjLoader.LoadObjFromFile(_fullobjpathmultimaterial); resObjMesh = _tgcObjLoader.ObjMeshContainer.ListObjMesh.First(); MeshBuilder meshBuilder = new MeshBuilder() .AddMaterials(_tgcObjLoader.ObjMaterialsLoader) .ChargueMaterials(); Assert.True(meshBuilder.ChargueBufferStrategy.RenderType == TgcMesh.MeshRenderType.DIFFUSE_MAP); }
public void CheckIndexBufferIsChargedOk() { //TODO verificar que el idexbuffer se cargo . TgcObjLoader _tgcObjLoader = new TgcObjLoader(); _tgcObjLoader.LoadObjFromFile(_fullobjpathmultimaterial); resObjMesh = _tgcObjLoader.ObjMeshContainer.ListObjMesh.First(); MeshBuilder meshBuilder = new MeshBuilder() .AddMaterials(_tgcObjLoader.ObjMaterialsLoader) .ChargueMaterials() .AddDxMesh(resObjMesh.FaceTrianglesList.Count) .ChargeBuffer(_tgcObjLoader.ObjMeshContainer, 0); Assert.True(meshBuilder.GetInstaceDxMesh().IndexBuffer.SizeInBytes > 0); }
public void CreateMeshColorAndDifusseMap() { //TODO el test de cuando el mesh es color y difuse TgcObjLoader _tgcObjLoader = new TgcObjLoader(); _tgcObjLoader.LoadObjFromFile(_fullobjpathmultimaterial); resObjMesh = _tgcObjLoader.ObjMeshContainer.ListObjMesh.First(); MeshBuilder meshBuilder = new MeshBuilder() .AddMaterials(_tgcObjLoader.ObjMaterialsLoader) .ChargueMaterials() .AddDxMesh(resObjMesh.FaceTrianglesList.Count) .ChargeBuffer(_tgcObjLoader.ObjMeshContainer, 0); Assert.NotNull(meshBuilder.GetInstaceDxMesh()); }
public void BuildTgcMeshWithEnableTrueOk() { TgcObjLoader _tgcObjLoader = new TgcObjLoader(); _tgcObjLoader.LoadObjFromFile(_fullobjpath); resObjMesh = _tgcObjLoader.ObjMeshContainer.ListObjMesh.First(); TgcMesh tgcMesh = new MeshBuilder() .AddMaterials(_tgcObjLoader.ObjMaterialsLoader) .AddDxMesh(resObjMesh.FaceTrianglesList.Count) .ChargeBuffer(_tgcObjLoader.ObjMeshContainer, 0) .SetEnable(true) .Build(resObjMesh); Assert.True(tgcMesh.Enabled); }
public void BuildTgcMeshWithBoundingBoxOk() //TODO el boundingbox no deberia estar acoplado al mesh { TgcObjLoader _tgcObjLoader = new TgcObjLoader(); _tgcObjLoader.LoadObjFromFile(_fullobjpath); resObjMesh = _tgcObjLoader.ObjMeshContainer.ListObjMesh.First(); TgcMesh tgcMesh = new MeshBuilder() .AddMaterials(_tgcObjLoader.ObjMaterialsLoader) .AddDxMesh(resObjMesh.FaceTrianglesList.Count) .ChargeBuffer(_tgcObjLoader.ObjMeshContainer, 0) .SetEnable(true) .AddAutotransform(true) .SetHasBoundingBox(false) .Build(resObjMesh); Assert.NotNull(tgcMesh.BoundingBox); }
public void TgcMeshBuildWithTextureOk() { TgcObjLoader _tgcObjLoader = new TgcObjLoader(); _tgcObjLoader.LoadObjFromFile(_fullobjpath); resObjMesh = _tgcObjLoader.ObjMeshContainer.ListObjMesh.First(); TgcMesh tgcMesh = new MeshBuilder() .AddMaterials(_tgcObjLoader.ObjMaterialsLoader) .ChargueMaterials() .AddDxMesh(resObjMesh.FaceTrianglesList.Count) .ChargeBuffer(_tgcObjLoader.ObjMeshContainer, 0) .AddAutotransform(true) .SetEnable(true) .SetHasBoundingBox(true) .Build(resObjMesh); Assert.True(tgcMesh.Materials.Length > 0); }
public void TgcMeshBuildedCanSet() { TgcObjLoader _tgcObjLoader = new TgcObjLoader(); _tgcObjLoader.LoadObjFromFile(_fullobjpath); resObjMesh = _tgcObjLoader.ObjMeshContainer.ListObjMesh.First(); TgcMesh tgcMesh = new MeshBuilder() .AddMaterials(_tgcObjLoader.ObjMaterialsLoader) .AddDxMesh(resObjMesh.FaceTrianglesList.Count) .ChargeBuffer(_tgcObjLoader.ObjMeshContainer, 0) .AddAutotransform(true) .SetEnable(true) .SetHasBoundingBox(false) .Build(resObjMesh); tgcMesh.Rotation = new TGCVector3(8.0f, 8.5f, 8.5f); Assert.True(tgcMesh.Rotation.Equals(new TGCVector3(8.0f, 8.5f, 8.5f))); }