Method and apparatus for environment-mapped bump-mapping in...

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

C345S581000, C345S426000, C345S215000

Reexamination Certificate

active

06825851

ABSTRACT:

FIELD OF THE INVENTION
The present invention relates to computer graphics, and more particularly to interactive graphics systems such as home video game platforms. Still more particularly this invention relates to a method and apparatus for performing environment mapped bump-mapping in a graphics system.
BACKGROUND AND SUMMARY OF THE INVENTION
Many of us have seen films containing remarkably realistic dinosaurs, aliens, animated toys and other fanciful creatures. Such animations are made possible by computer graphics. Using such techniques, a computer graphics artist can specify how each object should look and how it should change in appearance over time, and a computer then models the objects and displays them on a display such as your television or a computer screen. The computer takes care of performing the many tasks required to make sure that each part of the displayed image is colored and shaped just right based on the position and orientation of each object in a scene, the direction in which light seems to strike each object, the surface texture of each object, and other factors.
Because computer graphics generation is complex, computer-generated three-dimensional graphics just a few years ago were mostly limited to expensive specialized flight simulators, high-end graphics workstations and supercomputers. The public saw some of the images generated by these computer systems in movies and expensive television advertisements, but most of us couldn't actually interact with the computers doing the graphics generation. All this has changed with the availability of relatively inexpensive
3
D graphics platforms such as, for example, the Nintendo 64® and various 3D graphics cards now available for personal computers. It is now possible to interact with exciting 3D animations and simulations on relatively inexpensive computer graphics systems in your home or office.
One problem graphics system designers confronted in the past was how to create realistic looking surface detail on a rendered object without resorting to explicit modeling of the desired details with polygons or other geometric primitives. Although surface details can be simulated, for example, using myriad small triangles with interpolated shading between vertices, as the desired detail becomes finer and more intricate, explicit modeling with triangles or other primitives places high demands on the graphics system and becomes less practical. An alternative technique pioneered by E. Catmull and refined by J. F. Blinn and M. E. Newell is to “map” an image, either digitized or synthesized, onto a surface. (See “A Subdivision Algorithm for Computer Display of Curved Surfaces” by E. Catmull, Ph.D. Thesis, Report UTEC-CSc-74-133, Computer Science Department, University of Utah, Salt Lake City, Utah, December 1994 and “Texture and Reflection in Computer Generated Images” by J. F. Blinn and M. E. Newell, CACM, 19(10), October 1976, 452-457). This approach is known as texture mapping (or pattern mapping) and the image is called a texture map (or simply referred to as a texture). Alternatively, the texture map may be defined by a procedure rather than an image.
Typically, the texture map is defined within a 2D rectangular coordinate space and parameterized using a pair of orthogonal texture coordinates such, as for example, (u, v) or (s, t). Individual elements within the texture map are often called texels. At each rendered pixel, selected texels are used either to substitute for or to scale one or more material properties of the rendered object surface. This process is often referred to as texture mapping or “texturing.”
Although most 3-D graphics rendering systems now include a texturing subsystem for retrieving textures from memory and mapping the textures onto a rendered object surface, another problem confronting graphics system designers is how to texture a 3D object with realistic-looking surface characteristics that react to various lighting conditions in a manner similar to the surface of an actual object having, for example, random surface flaws, irregularities, roughness, bumps or other slight non-planar surface variations. Regular texture mapping does not provide such realism because texture images are generally two-dimensional and can not react or change in appearance in response to changes in position or direction of the lighting within a rendered scene. While in some instances such minute surface characteristics might be actually modeled, the time required for translating and rendering a 3D object with such a complex surface would be prohibitive for most real-time or interactive gaming applications. Consequently, various solutions to this problem were offered. For example, a technique generally known as “bump-mapping” was developed which allowed one to approximate the effect that non-planar surface variations would produce on lighted object. See, for example, J. F. Blinn “Simulation of Wrinkled Surfaces”
Computer Graphics
, (SIGRAPH ′78 Proceedings), vol. 12, No. 3, pp. 286-292 (August 1978) and “Models of Light Reflection for Computer Synthesized Pictures”, Proc. 4
th
Conference on Computer Graphics and Instructive Techniques, 1977.
Basically, bump-mapping allows a graphics application programmer to add realism to the surface of an object without using a lot of geometry by modeling small surface variations as height differences and then applying those difference values over a surface as perturbations to a surface Normal vector used in computing surface lighting effects. Effectively, a bump-map modifies the shading of a polygon (or primitive) by perturbing the surface Normal on a per-pixel basis. The shading makes the surface appear bumpy, even though the underlying geometry is relatively flat.
Although conventional bump-mapping techniques offer some improvement, a further problem confronting graphics system designers is that conventional approaches to simple forms of bump-mapping, such as the “emboss”-style of bump mapping, typically only consider the interaction between a bump map and a single diffuse light source. Moreover, in many cases, the bump map is inconveniently “tied” to a specific geometric shape in the sense that it should be constructed (i.e., parameterized) for an object having a particular surface geometry and only works well for geometrically similar surfaces. In addition, if the object is rotated, the bump map will not apply to the entire surface (e.g., newly visible surface regions after rotation).
Another known technique for providing realistic looking surface on a rendered object uses a method called “environment mapping”. Environment mapping (EM), also called “reflection mapping”, is a simple yet powerful method of generating approximations of reflections in curved surfaces. This technique was introduced by Blinn and Newell, “Texture and Reflection In Computer Generated Images,”
Communications of the ACM
. Vol. 19, no. 10, pp. 542-547 (October 1976). Conventionally, methods start with a ray from the viewer to a point on the reflector. This ray is then reflected with respect to the normal at that point. Instead of finding the intersection with the closest surface, as is done in ray tracing processes, EM uses the direction of the reflection vector as an index to an image containing the environment. The environment mapping approximation assumes that the objects and lights being reflected with EM are far away, and that the reflector will not reflect itself. If these assumptions hold, then the environment around the reflector can be treated as a two-dimensional projection surrounding it.
The basic steps for environment mapping are as follows:
Generate a two-dimensional image of the environment (this is the environmental map).
For each pixel that contains a reflective object, compute the normal at the location on the surface of the object (if per-pixel EM is not available, then the normal is computed at polygon vertices).
Compute the reflection vector from the view vector and the normal.
Use the reflection vector to compute an index into the environment map that represents the

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

Method and apparatus for environment-mapped bump-mapping in... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Method and apparatus for environment-mapped bump-mapping in..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and apparatus for environment-mapped bump-mapping in... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3345013

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