Patent ID: 9626789
Date: 2017-04-18
CPC Classifications: G06T

Claim:
1. A method for processing textures for real-time rendering, in a processor, an object defined by a plurality of polygons, the method comprising: associating an independent texture map with each face of a mesh to produce a plurality of face textures; providing borders for the filtering operations by copying texels from a border of a neighboring face of the each face to prevent seam artifacts; assigning a defined order of vertices in a quad of each face to produce a respective implicit UV parameterization for each face to convert, in a hardware shader component, face UV coordinates to atlas UV coordinates for one or more filtering operations for level of detail (LOD) values; applying scale and offset values to map a converted face UV range to the atlas UV coordinates, wherein the offset value gets to a proper resolution block; packing the plurality of face textures and their respective mip levels one after another in rows into a single texture atlas, wherein the atlas is divided into a plurality of blocks based on a resolution of the face textures; sorting the face textures and mip levels by resolution to form a plurality of resolution blocks including the proper resolution block; arranging the face textures comprising mips of corresponding resolution into a sequence of resolution blocks; performing a bilinear lookup for each required LOD value of the LOD values and a trilinear interpolation between the each required LOD value to obtain a final trilinear value to compute a location of a texture within a resolution block using the face texture resolution, a texture width, and an index within the proper resolution block.