public void LoadObjFromFileOk() { var tgcObjLoader = new TGCObjLoader(); tgcObjLoader.LoadObjFromFile(_fullobjpath); Assert.Greater(tgcObjLoader.ObjMeshContainer.ListObjMesh.Count, 0); Assert.AreEqual(tgcObjLoader.ObjMeshContainer.VertexListV.Count, 8); }
public void CreateMaterialIdsArrayOk() { TGCObjLoader tgcObjLoader = new TGCObjLoader(); tgcObjLoader.LoadObjFromFile(_fullobjpathmultimaterial); _resObjMesh = tgcObjLoader.ObjMeshContainer.ListObjMesh.First(); Assert.AreEqual(_resObjMesh.FaceTriangles.Count, _resObjMesh.CreateMaterialIdsArray().Length); }
public void IndexMaterialIdsArrayOk() { TGCObjLoader tgcObjLoader = new TGCObjLoader(); tgcObjLoader.LoadObjFromFile(_fullobjpathmultimaterial); _resObjMesh = tgcObjLoader.ObjMeshContainer.ListObjMesh.First(); int[] materialIds = _resObjMesh.CreateMaterialIdsArray(); Assert.AreEqual(materialIds[15810], 0); Assert.AreEqual(materialIds[17010], 1); }
public void CreateInstanceDxMeshWithNumberFacesOk() { TGCObjLoader tgcObjLoader = new TGCObjLoader(); tgcObjLoader.LoadObjFromFile(_fullobjpath); _resObjMesh = tgcObjLoader.ObjMeshContainer.ListObjMesh.First(); MeshBuilder auxMeshBuilder = new MeshBuilder().AddDxMesh(_resObjMesh.FaceTriangles.Count); Assert.AreEqual(auxMeshBuilder.DxMesh.NumberFaces, _resObjMesh.FaceTriangles.Count); }
public void CreateMeshOnlyColor() { TGCObjLoader tgcObjLoader = new TGCObjLoader(); tgcObjLoader.LoadObjFromFile(_fullobjpathmeshcolorsolo); _resObjMesh = tgcObjLoader.ObjMeshContainer.ListObjMesh.First(); MeshBuilder meshBuilder = new MeshBuilder().AddDxMesh(_resObjMesh.FaceTriangles.Count).ChargeBuffer(tgcObjLoader.ObjMeshContainer, 0); Assert.NotNull(meshBuilder.DxMesh); }
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.FaceTriangles.Count); Assert.AreEqual(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.AreEqual(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.DxMesh); }
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.AreEqual(meshBuilder.ChargueBufferStrategy.RenderType, TgcMesh.MeshRenderType.DIFFUSE_MAP); }
public void BuildTgcMeshWithAutotransformTrueOk() { TGCObjLoader tgcObjLoader = new TGCObjLoader(); tgcObjLoader.LoadObjFromFile(_fullobjpath); _resObjMesh = tgcObjLoader.ObjMeshContainer.ListObjMesh.First(); TgcMesh tgcMesh = new MeshBuilder() .AddMaterials(tgcObjLoader.ObjMaterialsLoader) .AddDxMesh(_resObjMesh.FaceTriangles.Count) .ChargeBuffer(tgcObjLoader.ObjMeshContainer, 0) .AddAutotransform(true) .Build(_resObjMesh); Assert.IsTrue(tgcMesh.AutoTransform); }
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.FaceTriangles.Count) .ChargeBuffer(tgcObjLoader.ObjMeshContainer, 0); Assert.Greater(meshBuilder.DxMesh.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.FaceTriangles.Count) .ChargeBuffer(tgcObjLoader.ObjMeshContainer, 0); Assert.NotNull(meshBuilder.DxMesh); }
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.FaceTriangles.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.FaceTriangles.Count) .ChargeBuffer(tgcObjLoader.ObjMeshContainer, 0) .AddAutotransform(true) .SetEnable(true) .SetHasBoundingBox(true) .Build(_resObjMesh); Assert.Greater(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.FaceTriangles.Count) .ChargeBuffer(tgcObjLoader.ObjMeshContainer, 0) .AddAutotransform(true) .SetEnable(true) .SetHasBoundingBox(false) .Build(_resObjMesh); tgcMesh.Rotation = new TGCVector3(8.0f, 8.5f, 8.5f); Assert.AreEqual(tgcMesh.Rotation, new TGCVector3(8.0f, 8.5f, 8.5f)); }