Exemplo n.º 1
0
        public void BuildingWithZeroMaxTriangles_ProducesEmptyMesh()
        {
            using (var meshSource = new MeshSource(0)) {
                using (var builder = meshSource.GetBuilder())
                    builder.AddTriangle(Vector3.zero, Vector3.forward, Vector3.one);

                AssertEmptyMesh(meshSource.Mesh);
            }
        }
Exemplo n.º 2
0
        public void BuildingWithExcessiveMaxTriangles_ProducesValidMesh()
        {
            using (var meshSource = new MeshSource(24)) {
                var bounds = new Bounds(new Vector3(0.5f, 0.5f, 0.5f), Vector3.one);
                using (var builder = meshSource.GetBuilder()) {
                    builder.Bounds = bounds;
                    builder.AddTriangle(Vector3.zero, Vector3.forward, Vector3.one);
                }

                AssertValidMesh(meshSource.Mesh, 3, 3, bounds);
            }
        }
Exemplo n.º 3
0
        public void BuildingWithInsufficientMaxTriangles_ProducesValidMeshWithLimitedSize()
        {
            using (var meshSource = new MeshSource(1)) {
                var bounds = new Bounds(new Vector3(0.5f, 0.5f, 0.5f), Vector3.one);
                using (var builder = meshSource.GetBuilder()) {
                    builder.Bounds = bounds;
                    builder.AddTriangle(Vector3.zero, Vector3.forward, Vector3.one);
                    builder.AddTriangle(Vector3.one, Vector3.forward + Vector3.one, Vector3.one + Vector3.one);
                }

                AssertValidMesh(meshSource.Mesh, 3, 3, bounds);
            }
        }