API communications for vertex and pixel shaders
First Claim
1. A computer-readable medium having computer-executable instructions for communicating between a 3-D graphics API of a host computing system having a main memory stack and a 3-D graphics hardware rendering device having on-chip register storage, wherein the computer-executable instructions perform:
- receiving at least one instruction having at least one graphics data argument by the 3-D API;
formatting said at least one instruction for the register storage of the hardware rendering device;
providing said at least one formatted instruction to the hardware rendering device;
processing said at least one graphics data argument, pursuant to said at least one formatted instruction, by the hardware rendering device without accessing the main memory stack of the host computing system;
outputting the result of said processed at least one graphics data argument from said hardware rendering device in accordance with said at least one formatted instruction;
wherein said at least one instruction is an instruction with at least one floating point number argument and said outputting includes outputting from the hardware rendering device the fractional portion of said at least one floating point number; and
wherein said outputting includes outputting four fractional portions of corresponding four floating point number arguments.
1 Assignment
0 Petitions
Accused Products
Abstract
A three-dimensional API for communicating with hardware implementations of vertex shaders and pixel shaders having local registers. With respect to vertex shaders, API communications are provided that may make use of an on-chip register index and API communications are also provided for a specialized function, implemented on-chip at a register level, that outputs the fractional portion(s) of input(s). With respect to pixel shaders, API communications are provided for a specialized function, implemented on-chip at a register level, that performs a linear interpolation function and API communications are provided for specialized modifiers, also implemented on-chip at a register level, that perform modification functions including negating, complementing, remapping, stick biasing, scaling and saturating. Advantageously, these API communications expose these very useful on-chip graphical algorithmic elements to a developer while hiding the details of the operation of the vertex shader and pixel shader chips from the developer.
36 Citations
22 Claims
-
1. A computer-readable medium having computer-executable instructions for communicating between a 3-D graphics API of a host computing system having a main memory stack and a 3-D graphics hardware rendering device having on-chip register storage, wherein the computer-executable instructions perform:
-
receiving at least one instruction having at least one graphics data argument by the 3-D API;
formatting said at least one instruction for the register storage of the hardware rendering device;
providing said at least one formatted instruction to the hardware rendering device;
processing said at least one graphics data argument, pursuant to said at least one formatted instruction, by the hardware rendering device without accessing the main memory stack of the host computing system;
outputting the result of said processed at least one graphics data argument from said hardware rendering device in accordance with said at least one formatted instruction;
wherein said at least one instruction is an instruction with at least one floating point number argument and said outputting includes outputting from the hardware rendering device the fractional portion of said at least one floating point number; and
wherein said outputting includes outputting four fractional portions of corresponding four floating point number arguments. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A computer system for communicating with 3-D graphics hardware, comprising:
-
a 3-D graphics API;
a host computing system having a main memory stack;
a 3-D graphics hardware rendering device having on-chip register storage, wherein at least one instruction having at least one graphics data argument is received by the 3-D API, and wherein said at least one instruction for the register storage is formatted and provided to the hardware rendering device, and wherein said at least one graphics data argument is processed pursuant to said at least one formatted instruction, by the hardware rendering device without accessing the main memory stack of the host computing system;
an output for providing the result of said processed at least one graphics data argument from said hardware rendering device in accordance with said at least one formatted instruction, wherein said at least one instruction is an instruction with at least one floating point number argument and said output includes outputting from the hardware rendering device the fractional portion of said at least one floating point number, and wherein said output includes outputting four fractional portions of corresponding four floating point number arguments. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21, 22)
-
Specification