Texture tiling with adjacency information

Computer graphics processing and selective visual display system – Computer graphics processing – Attributes

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

Reexamination Certificate

active

06768492

ABSTRACT:

BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates generally to computer graphics.
2. Related Art
Computer graphics systems render all kinds of objects for screen display and animation. An object is modeled in object space by a set of primitives (also called graphics primitives). Examples of primitives include, but are not limited to, triangles, polygons, lines, tetrahedra, curved surface, and bit-map images. Each primitive includes one or more vertices that define the primitive in terms of position, color, depth, texture, and/or other information helpful for rendering. Each primitive can be further broken up into fragments. Each fragment when projected for rendering on a screen, corresponds to all or part of an area of one pixel. For example, a polygon or curved surface can be broken up through scan conversion into fragments. Fragments can also include vertices or per-vertex information.
Textures are used to add further visual information. By utilizing texture mapping techniques, color and other details can be applied to areas and surfaces of objects. In texture mapping, a pattern image (also referred to as a “texture” or texture map”) is combined with an area or surface of an object to produce a modified object with the added texture detail. For example, given the outline of a featureless cube and a texture map defining a wood grain pattern, texture mapping techniques can be used to “map” the wood grain pattern onto the cube. The resulting display is that of a cube that appears to be made of wood. In another example, terrain (e.g., images of a town, river, vegetation and trees) can be added by texture mapping to an otherwise barren terrain model.
The demand for large textures is increasing. Many graphics applications increasingly demand a large contiguous texture. The cost of increasing texture memory and/or hardware to accommodate a large contiguous texture can be prohibitive.
Due to the importance of large contiguously textured databases to many graphics applications, schemes have been implemented which allow an application to apply massive textures over databases such as terrain, while operating within the limited constraints of hardware resources. These have ranged from software-only schemes which slice the underlying geometry into tiles corresponding to texture files, to hardware implementations which treat the image as a homogeneous entity.
Consider two examples of such schemes, clip-mapping and texture tiling. Clip-mapping is a relatively specialized and sophisticated scheme that uses a clip-map. See, U.S. Pat. No. 5,780,783 issued to Migdal et al. and incorporated in its entirety herein by reference. For example, a clip-map can be a multiresolutional texture map pyramid (such as, a MIP map) clipped to a “clip size” that covers a single view being rendered. See, the example clip-map MW pyramid
100
in FIG.
1
A. The image space is treated as a homogeneous entity for texturing purposes. Paging supplies a region
102
of high resolution in the area of most immediate interest with decreasing resolution as one moves away from the region of interest. Naturally the region of interest may be moved with the viewer in order to sustain high resolution in an animated scene. Torroidally wrapped texture addressing can be used to accommodate texture updates in clip-mapping. See, e.g., Tanner et al., “The Clipmap: A Virtual Mipmap,” Computer Graphics Proceedings, Annual Conf. Series, 1998 (SIGGRAPH '98), pp. 151158. As depicted in
FIG. 1B
, such torrodial wrapped texture addressing allows new data
102
B to be added to a clip-map tile as old data
102
A is removed. This is a relatively complex scheme which can be difficult to adopt in many applications which drive consumer-level products.
Texture tiling creates a series of tiles. The tiles represent portions of a contiguous image space. These tiles are applied as unique textures with associated unique texture identifiers (referred to herein as “texture IDs” or “texture handles”) to a series of tiled geometry segments. This requires that the application or database creator chop the geometric database into tiles to match the texture representation. A database is triangulated when it is chopped up to meet image paging requirements.
FIG. 1C
shows how an example triangle primitive
110
might have to be divided into four parts when it overlays four texture image tiles (Tile
1
, Tile
2
, Tile
3
, and Tile
4
).
Furthermore, as the database is viewed from a distance, ideally one would like fewer tiles to be applied to the database requiring that a quad tree or similar tiling structure be implemented to manage geometric complexity; this in turn requires a quad tree texture representation. While not entirely forced by the geometric issues, a software implementation quickly becomes a rather unwieldy proposition and suffers from some flaws. If implemented without consideration of filtering at the borders of the texture boundaries, there will be apparent texture filtering discontinuities across tile boundaries. The magnitude of these boundaries varies with the level of MIP map being applied to the respective tiles.
Graphics hardware has been built which avoids the need to subdivide the geometry using fragment selection within the range of the texture and multipass rendering on the underlying geometry. With this approach, any fragment outside the immediate texture image is not rasterized. This test is performed repeatedly with different images in different locations in a sequence of rendering passes. The issue of filtering then remains.
One or more extensions have been implemented to cope with filtering while subdividing the geometry in the application. For instance, texture border image support has been designed into graphics hardware implementations to allow filtering under these circumstances to be handled smoothly. Using such a scheme as described in U.S. Pat. No. 5,230,039, which is incorporated herein by reference in its entirety, a portion of the adjacent tile is specified by the application for filtering purposes. This scheme still requires the subdivision of the database based on texture border tiles, but it avoids the filtering artifacts at the tile edges.
FIG. 1D
shows an example that illustrates the specification of borders to avoid filtering issues. As illustrated, a triangle
120
is divided into fragments
120
A and
120
B. Fragment
120
A will be textured with tile
1
while fragment
120
B will be textured with tile
2
. Note border portion
122
of fragment
120
A and border portion
124
of fragment
120
B. These border portions
122
,
124
will be textured with border portions
126
,
128
of texture tiles
1
and
2
. This scheme provides filtering for a smooth transition between the texture tiles. However, the drawback of having to break the geometry into tiles remains.
A modified scheme described in U.S. Pat. No. 5,815,157, which is incorporated herein by reference in its entirety, uses an adjacent portion of texture memory to store borders of the image tile under consideration to the side of a tile in an oversized region of texture memory. A variation on the scheme is to use a larger portion of texture memory and a texture matrix to manipulate the application of texture coordinates such that the tile of texture under consideration and its borders become part of a contiguous texture memory space.
FIG. 1E
illustrates an example of an adjusted layout in memory for contiguous mapping. Note texture tile
130
and borders
132
which are stored in a larger portion
134
of texture memory.
To eliminate the strict requirement for geometry subdivision along tile boundaries, a scheme can be implemented where overlapping textures are applied to the image in texture memory. Instead of clamping to the original image boundary, the adjacent images may be addressed for triangles which extend a short way beyond the conventional image border. If one rearranges the in memory representation described in U.S. Pat. No. 5,815,157, it can be seen that conventional hardware may be used and the subd

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Texture tiling with adjacency information does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Texture tiling with adjacency information, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Texture tiling with adjacency information will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3199818

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.