Example #1
0
    private MeshInstance createLodMesh(MeshInstance origMesh, ArrayMesh mesh)
    {
        var newMesh = origMesh.Duplicate() as MeshInstance;

        newMesh.Mesh = mesh;

        for (int i = 0; i < newMesh.Mesh.GetSurfaceCount(); i++)
        {
            newMesh.Mesh.SurfaceSetMaterial(i, origMesh.Mesh.SurfaceGetMaterial(i));
        }

        for (int i = 0; i < origMesh.GetSurfaceMaterialCount(); i++)
        {
            newMesh.SetSurfaceMaterial(i, origMesh.GetSurfaceMaterial(i));
        }

        return(newMesh);
    }