US5838329A - Fast perspective texture mapping for 3-D computer graphics - Google Patents

Fast perspective texture mapping for 3-D computer graphics Download PDF

Info

Publication number
US5838329A
US5838329A US08/702,462 US70246296A US5838329A US 5838329 A US5838329 A US 5838329A US 70246296 A US70246296 A US 70246296A US 5838329 A US5838329 A US 5838329A
Authority
US
United States
Prior art keywords
line
coordinates
texture
lines
texture map
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
US08/702,462
Other languages
English (en)
Inventor
Michael R. Day
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Argonaut Technologies Ltd
Original Assignee
Argonaut Technologies Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Argonaut Technologies Ltd filed Critical Argonaut Technologies Ltd
Assigned to ARGONAUT TECHNOLOGIES LIMITED reassignment ARGONAUT TECHNOLOGIES LIMITED ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: DAY, MICHAEL R.
Application granted granted Critical
Publication of US5838329A publication Critical patent/US5838329A/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping

Definitions

  • This invention relates to planar texture mapping for 3-D computer graphics.
  • Planar texture mapping is the task of applying a prestored or generated image to the flat surface of a 3-D object when the object is viewed in perspective on a display.
  • the projected images must be drawn in perspective. It is difficult to do this in real time, i.e. so that, animations appear to happen smoothly, particularly for computer games which often do not have sufficient computing power. Details of the subject can be found in "3-D Computer Animation” by Vince, Addison-Wesley (1992).
  • the techniques currently used can be divided into two categories: (a) those which explicitly calculate the texture coordinates for every pixel of the polygon to be rendered--this involves certain calculations to be performed at each pixel, in particular at least one divide operation; and (b) those which evaluate the texture coordinates only at the edges of each horizontal span of the polygon, and then use a linear interpolation scheme to approximate their values at the intermediate pixels (or some other form of approximation).
  • the reduced running times of techniques in category (b) are offset by the loss of accuracy incurred in the texture projection. If polygons rendered using these techniques are viewed close up, distortion of the texture will be seen, to a degree which may be unacceptable.
  • the proposed solution is to scan convert the polygon not along horizontal scanlines but along carefully chosen angled lines, representing the lines of constant z-coordinate.
  • the invention proposes a method of rendering an image on a display, comprising texture mapping of a pre-prepared texture map to flat surfaces of an object which is to be viewed in perspective on the display, characterised by scanning each surface to be texture mapped along notional lines of constant z (depth) coordinate (z-lines); and for each line of constant z, determining the object end coordinates of the lines, determining the texture values for the end coordinates, determining the texture values for the coordinates between end coordinates by interpolation, and mapping the texture values of the pre-prepared texture map to each line of constant z and thereby without modification for perspective.
  • FIG. T1 shows the outline of a planar polygon which is to be rendered with texture from a texture map whose uv-coordinate space is indicated by the gridlines.
  • Such a set of z-lines is shown for the example polygon, in FIG. T2.
  • the z-line can therefore be rendered using two DDAs, one to track the line in uv-space, and one to obtain the screen pixels it maps to.
  • the only texture coordinates explicitly calculated for the z-line are those at its endpoints.
  • the method for rendering the whole polygon is therefore to drop the notion of horizontal scanlines, and instead to draw parallel to the z-lines.
  • the gradient of the z-lines in view coordinates can be calculated from a knowledge of the polygon's plane equation and the geometry of the projection.
  • FIG. T3 A scheme that permits this is illustrated in FIG. T3.
  • the pixels making up a representative z-line can be obtained by a standard Bresenham line draw.
  • the remaining z-lines are generated by vertically translating the representative z-line by the appropriate number of pixels if the line is at less than 45 degrees to the horizontal, and horizontally translating it if the line is at 45 degrees or more.
  • the texture coordinates must be evaluated for the start and end of each z-line drawn to. This can either be done explicitly every time new coordinates are required, or by making use of the fact that the numerator and denominator of each of u and v are linear in both screen coordinates, and can therefore be maintained incrementally as scan conversion proceeds.
  • each span consists of a contiguous block of pixels. This is not always the case for convex polygons rendered using a z-line scan.
  • FIG. T4 shows the situation where a polygon edge and the z-lines have almost equal gradients--the set of pixels on a particular z-line which lie in the interior of the polygon forms a broken line. This is a result of interference between two integer approximation processes--one which generates the polygon edge, and one which generates the z-line. Two approaches may be taken:
  • a bit-per-pixel mask of the actual polygon is generated using a standard horizontal scan.
  • the mask is then sheared vertically (horizontally) by performing column (row) shifts on the mask.
  • the sheared mask is then used to control the output of texture along z-lines, by reading the mask in rows (columns). This produces the desired polygon at the expense of shearing and reading the bit-mask.
  • it is not necessary to store the mask for the entire polygon. Assuming the z-lines lie at less than 45 degrees to the horizontal (the alternative case has a similar treatment) the scan conversion process, instead of generating the mask, is used to fill a set of buckets.
  • Each bucket corresponds to a z-line, and contains the screen x-coordinates of all pixel columns for which the column goes from inside the polygon to out or vice versa, on that z-line.
  • a pair of entries is made for the top and bottom of the section of a pixel column that is covered by the polygon (there may be more than one pair for a concave outline).
  • the z-lines are rendered in top-to-bottom order making use of a mask which has one bit for each pixel in a z-line. It is initially zeroed, and then updated incrementally before each z-line is rendered. For each bucket entry at a given z-line, the corresponding bit in the mask is toggled, to indicate that the pixel column has just crossed the polygon boundary on the current z-line.
  • any planar shape can be texture mapped, such as concave polygons, disks, planar regions bounded by 2D splines, etc. provided a bit-mask can be generated of the projected interior.
  • the method of scan conversion is more complicated than a standard horizontal scan. On the whole therefore, more work is required per boundary pixel.
  • the technique will be faster than category (a) mentioned at the start only for polygons with an interior to boundary ratio higher than a certain value.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)
US08/702,462 1994-03-31 1995-03-31 Fast perspective texture mapping for 3-D computer graphics Expired - Fee Related US5838329A (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB9406515A GB9406515D0 (en) 1994-03-31 1994-03-31 Texture mapping for 3-d computer graphics
GB9406515 1994-03-31
PCT/GB1995/000751 WO1995027266A1 (fr) 1994-03-31 1995-03-31 Mappage de texture rapide, en perspective, utilise en infographie tridimensionnelle

Publications (1)

Publication Number Publication Date
US5838329A true US5838329A (en) 1998-11-17

Family

ID=10752901

Family Applications (1)

Application Number Title Priority Date Filing Date
US08/702,462 Expired - Fee Related US5838329A (en) 1994-03-31 1995-03-31 Fast perspective texture mapping for 3-D computer graphics

Country Status (7)

Country Link
US (1) US5838329A (fr)
EP (1) EP0753183B1 (fr)
JP (1) JPH09511599A (fr)
CA (1) CA2185926A1 (fr)
DE (1) DE69506092T2 (fr)
GB (1) GB9406515D0 (fr)
WO (1) WO1995027266A1 (fr)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020158880A1 (en) * 2001-04-25 2002-10-31 Williams Steven P. Methods, apparatus and computer program products for modeling three-dimensional colored objects
US20020163519A1 (en) * 2000-06-05 2002-11-07 Shigeru Kitsutaka Game system, program and image generating method
US20030063383A1 (en) * 2000-02-03 2003-04-03 Costales Bryan L. Software out-of-focus 3D method, system, and apparatus
US6577320B1 (en) 1999-03-22 2003-06-10 Nvidia Corporation Method and apparatus for processing multiple types of pixel component representations including processes of premultiplication, postmultiplication, and colorkeying/chromakeying
US20050007365A1 (en) * 2003-07-07 2005-01-13 Jiangen Cao Graphic engine for rasterizing a straight edge in a resource-constrained device
US20060256115A1 (en) * 2003-07-07 2006-11-16 Arcsoft, Inc. Graphic Engine for Approximating a Quadratic Bezier Curve in a Resource-Constrained Device
US7142211B2 (en) 2003-07-07 2006-11-28 Arcsoft, Inc. Graphic engine for fill style transferring in a resource-constrained device
US20090125418A1 (en) * 2001-12-27 2009-05-14 Proto Labs, Inc. Automated Quoting Of Molds And Molded Parts

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997042605A1 (fr) * 1996-05-06 1997-11-13 Philips Electronics N.V. Procede et dispositif de cartographie d'une surface sur une image bidimensionnelle
US6410643B1 (en) 2000-03-09 2002-06-25 Surmodics, Inc. Solid phase synthesis method and reagent
KR20030062313A (ko) * 2000-08-09 2003-07-23 다이나믹 디지탈 텝스 리서치 피티와이 엘티디 영상 변환 및 부호화 기술

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4615013A (en) * 1983-08-02 1986-09-30 The Singer Company Method and apparatus for texture generation
US5343558A (en) * 1991-02-19 1994-08-30 Silicon Graphics, Inc. Method for scan converting shaded triangular polygons
US5345541A (en) * 1991-12-20 1994-09-06 Apple Computer, Inc. Method and apparatus for approximating a value between two endpoint values in a three-dimensional image rendering device
US5469535A (en) * 1992-05-04 1995-11-21 Midway Manufacturing Company Three-dimensional, texture mapping display system
US5649082A (en) * 1995-03-20 1997-07-15 Silicon Graphics, Inc. Efficient method and apparatus for determining texture coordinates for lines and polygons

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4615013A (en) * 1983-08-02 1986-09-30 The Singer Company Method and apparatus for texture generation
US5343558A (en) * 1991-02-19 1994-08-30 Silicon Graphics, Inc. Method for scan converting shaded triangular polygons
US5345541A (en) * 1991-12-20 1994-09-06 Apple Computer, Inc. Method and apparatus for approximating a value between two endpoint values in a three-dimensional image rendering device
US5469535A (en) * 1992-05-04 1995-11-21 Midway Manufacturing Company Three-dimensional, texture mapping display system
US5649082A (en) * 1995-03-20 1997-07-15 Silicon Graphics, Inc. Efficient method and apparatus for determining texture coordinates for lines and polygons

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
EUROGRAPHICS, 2 Sep. 1991 -- 6 Sep. 1991, Amsterdam, NL, pp. 385-396, XP000300282, Abi-Ezzi adn Shirman, Tesselation of Curved Surfaces Under Highly Varying Transformations.
EUROGRAPHICS, 2 Sep. 1991 6 Sep. 1991, Amsterdam, NL, pp. 385 396, XP000300282, Abi Ezzi adn Shirman, Tesselation of Curved Surfaces Under Highly Varying Transformations. *
IEEE Computer Graphics and Applications, vol. 6, No. 9, Sep. 1986, New York, NY pp. 40 53, XP 000004804, Bier and Sloan, Two Part Texture Mapping. *
IEEE Computer Graphics and Applications, vol. 6, No. 9, Sep. 1986, New York, NY pp. 40-53, XP 000004804, Bier and Sloan, Two-Part Texture Mapping.

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6577320B1 (en) 1999-03-22 2003-06-10 Nvidia Corporation Method and apparatus for processing multiple types of pixel component representations including processes of premultiplication, postmultiplication, and colorkeying/chromakeying
US20050146788A1 (en) * 2000-02-03 2005-07-07 Costales Bryan L. Software out-of-focus 3D method, system, and apparatus
US20030063383A1 (en) * 2000-02-03 2003-04-03 Costales Bryan L. Software out-of-focus 3D method, system, and apparatus
US20020163519A1 (en) * 2000-06-05 2002-11-07 Shigeru Kitsutaka Game system, program and image generating method
US6828969B2 (en) * 2000-06-05 2004-12-07 Namco Ltd. Game system, program and image generating method
US6853373B2 (en) 2001-04-25 2005-02-08 Raindrop Geomagic, Inc. Methods, apparatus and computer program products for modeling three-dimensional colored objects
US20020158880A1 (en) * 2001-04-25 2002-10-31 Williams Steven P. Methods, apparatus and computer program products for modeling three-dimensional colored objects
US20090125418A1 (en) * 2001-12-27 2009-05-14 Proto Labs, Inc. Automated Quoting Of Molds And Molded Parts
US20050007365A1 (en) * 2003-07-07 2005-01-13 Jiangen Cao Graphic engine for rasterizing a straight edge in a resource-constrained device
US20060256115A1 (en) * 2003-07-07 2006-11-16 Arcsoft, Inc. Graphic Engine for Approximating a Quadratic Bezier Curve in a Resource-Constrained Device
US7142211B2 (en) 2003-07-07 2006-11-28 Arcsoft, Inc. Graphic engine for fill style transferring in a resource-constrained device
US7161597B2 (en) * 2003-07-07 2007-01-09 Arcsoft, Inc. Graphic engine for rasterizing a straight edge in a resource-constrained device
US7764287B2 (en) 2003-07-07 2010-07-27 Arcsoft, Inc. Graphic engine for approximating a quadratic bezier curve in a resource-constrained device

Also Published As

Publication number Publication date
EP0753183A1 (fr) 1997-01-15
GB9406515D0 (en) 1994-05-25
CA2185926A1 (fr) 1995-10-12
DE69506092T2 (de) 1999-07-15
JPH09511599A (ja) 1997-11-18
EP0753183B1 (fr) 1998-11-18
WO1995027266A1 (fr) 1995-10-12
DE69506092D1 (de) 1998-12-24

Similar Documents

Publication Publication Date Title
US7239319B2 (en) Rendering outline fonts
US5428718A (en) Tessellation system
EP0638875B1 (fr) Appareil et méthode pour génération d'animation en 3 dimensions
JP5188628B2 (ja) 3dオブジェクトの3dモデルをレンダリングするための方法及びシステム
US6239808B1 (en) Method and apparatus for determining texture values of graphical images
Von Herzen et al. Accurate triangulations of deformed, intersecting surfaces
US7414636B2 (en) Rendering apparatus, rendering processing method and computer program product
Wang et al. Volume sampled voxelization of geometric primitives
US7034823B2 (en) 3D computer graphics processing apparatus and method
JP3203160B2 (ja) ボリューム・レンダリング装置及び方法
US4625289A (en) Computer graphics system of general surface rendering by exhaustive sampling
US6204857B1 (en) Method and apparatus for effective level of detail selection
Cohen et al. Photo‐Realistic Imaging of Digital Terrains
US20020094125A1 (en) Method for fast rendering of photorealistic computer graphics images
US6292192B1 (en) System and method for the direct rendering of curve bounded objects
JPH07152923A (ja) テクスチャ処理されたオブジェクトをレンダリングする方法及び装置
US5838329A (en) Fast perspective texture mapping for 3-D computer graphics
US6433790B1 (en) Methods and systems for rendering line and point features for display
Wan et al. Boundary cell-based acceleration for volume ray casting
KR100453530B1 (ko) 2차원 폴리곤데이터를 3차원 폴리곤데이터로 변환하여 묘화하는 3차원 그래픽 묘화장치 및 그 방법
Fournier et al. Chebyshev polynomials for boxing and intersections of parametric curves and surfaces
US6556203B1 (en) Tile-based digital differential analyzer rasterization
Lee et al. An efficient ray tracing method for terrain rendering
US5821942A (en) Ray tracing through an ordered array
US20050116951A1 (en) Using runs of cells to traverse a ray through a volume

Legal Events

Date Code Title Description
AS Assignment

Owner name: ARGONAUT TECHNOLOGIES LIMITED, ENGLAND

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:DAY, MICHAEL R.;REEL/FRAME:008450/0511

Effective date: 19961120

REMI Maintenance fee reminder mailed
LAPS Lapse for failure to pay maintenance fees
STCH Information on status: patent discontinuation

Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362

FP Lapsed due to failure to pay maintenance fee

Effective date: 20021117