Rendering a scene using a reduced memory representation of a polynomial function to determine an output value approximating a mathematical function
AssigneeImagination Technologies Limited
InventorSimon Fenney
Life of this patent
Estimating the term…
Abstract
An aspect includes an apparatus for evaluating a mathematical function at an input value. The apparatus includes a selector for selecting a mathematical function, an input for a value at which to evaluate the function, an identifier for identifying an interval containing the input value. The interval is described by at least one polynomial function. At least one control point representing the polynomial function is retrieved from at least one look up table, and the polynomial function can be derived from the control points. The function is evaluated at the input value and an output of the evaluation is used as a value of the function at that input value.
Claims18
A computer graphics system for rendering a scene using representations of a plurality of polynomial functions to determine an output value approximating one of a plurality of mathematical functions, the computer graphics system comprising:
- a plurality of lookup tables stored in one or more non-transitory memories, each of the plurality of lookup tables being configured to store a data value determined for a respective interval over which a respective one of the plurality of mathematical functions may be evaluated;
- and
- fixed function logic coupled to the plurality of lookup tables, the fixed function logic comprising:
- function selection logic configured to select a particular set of the plurality of lookup tables according to a particular mathematical function to be evaluated;
- interval selection logic configured to identify an interval containing a point at which the particular mathematical function is to be evaluated;
- polynomial derivation logic configured to:
- obtain, from the particular set of the plurality of lookup tables, the data value for the identified interval and data values for at least one interval adjacent each end of the identified interval, and
- derive a polynomial function from the data values, the polynomial function being for approximating the particular mathematical function over the identified interval, wherein the computer graphics system is configured to store spline control points as the data values used to derive the polynomial function;
- and
- evaluation logic configured to compute the output value of the polynomial function at the said point, and use that output value as an evaluation of the particular mathematical function thereby enabling the computer graphics system to render the scene.
A method of rendering a scene using representations of a plurality of polynomial functions to determine an output value approximating one of a plurality of mathematical functions, the method comprising:
- selecting, using function selection logic implemented in fixed function logic, a particular set of a plurality of lookup tables stored in one or more non-transitory memories according to a particular mathematical function to be evaluated, each of the plurality of lookup tables being configured to store a data value determined for a respective interval over which a respective one of the plurality of mathematical functions may be evaluated;
- identifying, using interval selection logic implemented in said fixed function logic, an interval containing a point at which the particular mathematical function is to be evaluated;
- obtaining, using polynomial derivation logic implemented in said fixed function logic, the data value for the identified interval and data values for at least one interval adjacent each end of the identified interval from the particular set of the plurality of lookup tables;
- deriving, using the polynomial derivation logic, a polynomial function from the data values, the polynomial function being for approximating the particular mathematical function over the identified interval, wherein the data values used to derive the polynomial function are spline control points;
- computing, using evaluation logic implemented in said fixed function logic, the output value of the polynomial function at the said point;
- and
- using that output value as an evaluation of the particular mathematical function thereby enabling the computer graphics system to render the scene.
Dependencies are inferred from the claim text.