US 11,954,802 B2
Method and system for generating polygon meshes approximating surfaces using iteration for mesh vertex positions
Alen Ladavac, Zagreb (HR); and Morgan Samuel McGuire, Waterloo (CA)
Assigned to Roblox Corporation, San Mateo, CA (US)
Filed by Roblox Corporation, San Mateo, CA (US)
Filed on Jun. 2, 2022, as Appl. No. 17/831,321.
Prior Publication US 2023/0394764 A1, Dec. 7, 2023
Int. Cl. G06T 17/20 (2006.01); G06T 7/13 (2017.01)
CPC G06T 17/20 (2013.01) [G06T 7/13 (2017.01)] 20 Claims
OG exemplary drawing
 
1. A computer-implemented method comprising:
receiving, by one or more processors, input data that represents a surface that distinguishes an inside and an outside of a volume;
determining, by the one or more processors, a voxel grid that includes the surface, wherein the voxel grid includes a plurality of voxels;
identifying, by the one or more processors, particular voxels of the plurality of voxels which the surface intersects; and
generating, by the one or more processors, a mesh that approximates the surface, the mesh including a plurality of polygons that are defined by vertices of the mesh in the particular voxels, wherein generating the mesh includes:
determining approximate positions of a subset of the vertices of the polygons of the mesh in a subset of the particular voxels, based on interpolation of locations in the subset of the particular voxels where the surface intersects the subset of the particular voxels;
determining errors between approximate voxel values and assigned voxel values of the particular voxels, wherein the approximate voxel values are based on the approximate positions and the assigned voxel values are determined from the input data; and
adjusting the approximate position of at least one vertex of the subset of the vertices using a successive over-relaxation technique to reduce the errors.