3D computer graphics processing apparatus and method
First Claim
1. A method of processing data defining a model of a three-dimensional curved object comprising a plurality of representations to generate data defining a plurality of polygons for rendering, the method comprising, for each frame of image data to be rendered:
- determining a common depth defining the number of polygons into which each representation in the model is to be converted;
determining whether data defining the polygons for the common depth is already stored; and
if the data for the common depth is already stored, then selecting the stored data for rendering;
otherwisegenerating data defining the polygons for the common depth, selecting the generated data for rendering, and storing the generated data for subsequent use.
0 Assignments
0 Petitions
Accused Products
Abstract
In a computer graphics apparatus, a three-dimensional object is modelled using a mesh of triangles which approximate the object surface. To display images, each triangle is sub-divided into smaller triangles, which do not necessarily lie in the same plane as the original triangle. In this way, the curvature of the object surface can be more accurately modelled. A parametric patch, such as a Bernstein-Bezier triangular patch or Heron patch, is used to determine how to divide each triangle into smaller non-planar triangles. In addition, the number of non-planar triangles is determined using the size of the original triangle in the current or a preceding frame of image data. The non-planar triangles are stored for use in subsequent frames which require the same number of non-planar triangles, thereby reducing processing requirements. Rather than carry out lighting calculations for the vertex of each new non-planar triangle, lighting values are calculated and used to define a parametric patch which is subsequently used to determine lighting values for the new triangles.
57 Citations
36 Claims
-
1. A method of processing data defining a model of a three-dimensional curved object comprising a plurality of representations to generate data defining a plurality of polygons for rendering, the method comprising, for each frame of image data to be rendered:
-
determining a common depth defining the number of polygons into which each representation in the model is to be converted; determining whether data defining the polygons for the common depth is already stored; and if the data for the common depth is already stored, then selecting the stored data for rendering;
otherwisegenerating data defining the polygons for the common depth, selecting the generated data for rendering, and storing the generated data for subsequent use. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 28, 29)
-
-
14. A method of rendering a three-dimensional computer graphics model, comprising:
-
receiving data defining a computer model of a three-dimensional object made up of a plurality of representations each of which models a respective part of the object; processing the representations to replace each representation with the same number of polygons, rendering the polygons and storing data defining the polygons for subsequent use; and when the three-dimensional computer model is to be subsequently rendered, using the stored data if the stored data defines the required number of polygons for each representation, otherwise processing the representations to replace each representation with the required same number of polygons, and rendering the polygons.
-
-
15. Apparatus for processing data defining a model of a three-dimensional curved object comprising a plurality of representations to generate data defining a plurality of polygons for rendering, comprising:
-
a depth calculator operable to determine a common depth defining the number of polygons into which each representation in the model is to be converted for a given frame of image data; a data searcher operable to determine whether data defining the polygons for the common depth is already stored; a first selector operable to select the stored data for rendering if the data for the common depth is already stored; a polygon data generator operable to generate data defining the polygons for the common depth if the data for the common depth is not already stored; a second selector operable to select the data generated by the polygon data generator for rendering; and a data storer operable to write the data generated by the polygon data generator to memory for subsequent use. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24)
-
-
25. Apparatus for processing data defining a model of a three-dimensional curved object comprising a plurality of representations to generate data defining a plurality of polygons for rendering, comprising:
-
means for determining a common depth defining the number of polygons into which each representation in the model is to be converted for a given frame of image data; means for determining whether data defining the polygons for the common depth is already stored; means for selecting the stored data for rendering if the data for the common depth is already stored; polygon data generating means for generating data defining the polygons for the common depth if the data for the common depth is not already stored; means for selecting the data generated by the polygon data generating means for rendering; and means for writing the data generated by the polygon data generating means to memory for subsequent use.
-
-
26. Apparatus for rendering a three-dimensional computer graphics model, comprising:
-
a data receiver operable to receive data defining a computer model of a three-dimensional object made up of a plurality of representations each of which models a respective part of the object; a representation replacer operable to replace each respective representation with the same number of polygons for rendering, and operable to store data defining the polygons for subsequent use; and a renderer operable to render the polygons; wherein, in use, the apparatus is controlled such that; when the three-dimensional computer model is to be rendered for a second or subsequent time, stored polygon data is rendered if the stored data defines the required number of polygons for each representation, otherwise the representation replacer is controlled to replace each representation with the required number of polygons for rendering and to store data defining the polygons for subsequent use.
-
-
27. Apparatus for rendering a three-dimensional computer graphics model, comprising:
-
means for receiving data defining a computer model of a three-dimensional object made up of a plurality of representations, each of which models a respective part of the object; means for replacing each respective representation with the same number of polygons for rendering, and for storing data defining the polygons for subsequent use; and means for rendering the polygons; wherein, in use, the apparatus is controlled such that; when the three-dimensional computer model is to be rendered for a second or subsequent time, stored polygon data is rendered if the stored data defines the required number of polygons for each representation, otherwise the means for replacing each respective representation is controlled to replace each representation with the required number of polygons for rendering and to store data defining the polygons for subsequent use.
-
-
30. A method of rendering a three-dimensional computer model of an object surface comprising a plurality of representations, the method comprising:
-
calculating an average size of at least some of the representations in the three-dimensional computer model; generating a plurality of respective polygons to replace each representation, with the number of polygons for each respective representation being determined in dependence upon the calculated average size, and such that the same number of polygons is generated for each representation; and rendering the generated polygons. - View Dependent Claims (31, 35, 36)
-
-
32. Apparatus for rendering a three-dimensional computer model of an object surface comprising a plurality of representations, the apparatus including:
-
an average size calculator operable to calculate an average size of at least some of the representations in the three-dimensional computer model; a polygon generator operable to generate a plurality of respective polygons to replace each representation in dependence upon the calculated average size such that the number of polygons generated for each representation is the same and is determined in dependence upon the calculated average size; and a polygon renderer operable to render the generated polygons. - View Dependent Claims (33)
-
-
34. Apparatus for rendering a three-dimensional computer model of an object surface comprising a plurality of representations, the apparatus including:
-
means for calculating an average size of at least some of the representations in the three-dimensional computer model; means for generating a plurality of respective polygons to replace each representation in dependence upon the calculated average size such that the number of polygons generated for each representation is the same and is determined in dependence upon the calculated average size; and means for rendering the generated polygons.
-
Specification