Graphics system interface
AssigneeNintendo Co., Ltd.
InventorsVimal Parikh, Robert Moore, Howard Cheng
Life of this patent
Estimating the term…
Abstract
An interface for a graphics system includes simple yet powerful constructs that are easy for an application programmer to use and learn. Features include a unique vertex representation allowing the graphics pipeline to retain vertex state information and to mix indexed and direct vertex values and attributes; a projection matrix value set command; a display list call object command; and an embedded frame buffer clear/set command.
Claims24
A graphics system command stream comprising:
- a stream command 0x614F followed by a pad, an alpha value and a red value;
- a stream command 0x6150 followed by a pad, a green value and a blue value;
- and
- a stream command 0x6151 followed by a 24-bit z value.
A storage medium storing a data structure comprising:
- a stream command 0x614F followed by a pad, an alpha value and a red value;
- a stream command 0x6150 followed by a pad, a green value and a blue value;
- and
- a stream command 0x6151 followed by a 24-bit z value.
A graphics command stream decoder comprising:
- a first decoding section decoding a stream command 0x614F followed by a pad, an alpha value and a red value;
- a second decoding section decoding a stream command 0x6150 followed by a pad, a green value and a blue value;
- and
- a third decoding section decoding a stream command 0x6151 followed by a 24-bit z value.
A method of generating a graphics command stream comprising:
- generating a stream command 0x614F followed by a pad, an alpha value and a red value;
- generating a stream command 0x6150 followed by a pad, a green value and a blue value;
- and
- generating a stream command 0x6151 followed by a 24-bit z value.
A graphics command stream comprising:
- an array base load register command comprising 0x08Ax, where the second-mentioned “x” after “A” encodes an attribute indicator,
- a 32-bit value including a 26-bit address,
- a stream command 0x08Bx, where the second-mentioned “x” after “B” encodes an attribute indicator, and
- a succeeding 32-bit value including eight bits indicating a stride for an array.
A storage medium storing a data structure comprising:
- an array base load register command comprising 0x08Ax, where the second-mentioned “x” after “A” encodes an attribute indicator, and
- a 32-bit value including a 26-bit address,
- a stream command 0x08Bx, where the second-mentioned “x” after “B” encodes an attribute indicator, and
- a succeeding 32-bit value including eight bits indicating a stride for an array.
A graphics command stream decoder comprising:
- a first decoding section decoding an array base load register command comprising 0x08Ax, where the second-mentioned x encodes an attribute indicator, and
- a second decoding section decoding a 32-bit value including a 26-bit address,
- a third decoding section decoding a stream command 0x08Bx, where the second-mentioned x encodes an attribute indicator, and
- a fourth decoding section decoding a succeeding 32-bit value including eight bits indicating a stride for an array.
A method of generating a graphics command stream comprising:
- generating an array base load register command comprising 0x08Ax, where the second-mentioned x encodes an attribute indicator, and
- generating a 32-bit value including a 26-bit address,
- generating a stream command 0x08Bx, where the second-mentioned x encodes an attribute indicator, and
- generating a succeeding 32-bit value including eight bits indicating a stride for an array.
A graphics command stream comprising:
- a stream command 0x0850 followed by a 32-bit value including seventeen bits defining attribute indexing information for up to twelve attributes, and
- a further stream command 0x0860 followed by a 32-bit value including sixteen bits encoding attribute indexing information for up to an additional eight attributes.
A storage medium storing a data structure comprising:
- a stream command 0x0850 followed by a 32-bit value including seventeen bits defining attribute indexing information for up to twelve attributes, and
- a further stream command 0x0860 followed by a 32-bit value including sixteen bits encoding attribute indexing information for up to an additional eight attributes.
A graphics command stream decoder comprising:
- a first decoding section decoding a stream command 0x0850 followed by a 32-bit value including seventeen bits defining attribute indexing information for up to twelve attributes, and
- a second decoding section decoding a further stream command 0x0860 followed by a 32-bit value including sixteen bits encoding attribute indexing information for up to an additional eight attributes.
A method of generating a graphics command stream comprising:
- generating a stream command 0x0850 followed by a 32-bit value including seventeen bits defining attribute indexing information for up to twelve attributes, and
- generating a further stream command 0x0860 followed by a 32-bit value including sixteen bits encoding attribute indexing information for up to an additional eight attributes.
A graphics command stream comprising:
- a graphics command 0x0870 followed by a 4-byte value including attribute information for position, normal, a first color, a second color, a texture 0 coordinate, and further including a byte dequantization flag and a normal index flag, and
- at least one additional stream command defining at least one texture coordinate attribute.
A storage medium storing a data structure comprising:
- a graphics command 0x0870 followed by a 4-byte value including attribute information for position, normal, a first color, a second color, a texture 0 coordinate, and further including a byte dequantization flag and a normal index flag, and
- at least one additional stream command defining at least one texture coordinate attribute.
A graphics command stream decoder comprising:
- a first decoding section decoding a graphics command 0x0870 followed by a 4-byte value including attribute information for position, normal, a first color, a second color, a texture 0 coordinate, and further including a byte dequantization flag and a normal index flag, and
- at least one additional decoding section decoding at least one additional stream command defining at least one texture coordinate attribute.
A method of generating a graphics command stream comprising:
- generating a graphics command 0x0870 followed by a 4-byte value including attribute information for position, normal, a first color, a second color, a texture 0 coordinate, and further including a byte dequantization flag and a normal index flag, and
- generating at least one additional stream command defining at least one texture coordinate attribute.
A graphics command stream comprising:
- a bit pattern “00010000”, followed by
- a pad, followed by
- a 21-bit value including sixteen bits of address indicating a transform unit register location and an additional five bits indicating how many words will follow, followed by
- at least one additional 32-bit word providing a projection matrix element value.
A storage medium storing a data structure comprising:
- a bit pattern “00010000”, followed by a pad, followed by
- a 21-bit value including sixteen bits of address indicating a transform unit register location and an additional five bits indicating how many words will follow, followed by
- at least one additional 32-bit word providing a projection matrix element value.
A graphics command stream decoder comprising:
- a first decoding section decoding a bit pattern “00010000”, followed by
- a second decoding section decoding a pad, followed by
- a third decoding section decoding a 21-bit value including sixteen bits of address indicating a transform unit register location and an additional five bits indicating how many words will follow, followed by
- al least one additional decoding section decoding at least one additional 32-bit word providing a projection matrix element value.
A method of generating a graphics command stream comprising:
- generating a bit pattern “00010000”, then
- generating a pad, then
- generating a 21-bit value including sixteen bits of address indicating a transform unit register location and an additional five bits indicating how many words will follow, then
- generating at least one additional 32-bit word providing a projection matrix element value.
A graphics command stream comprising:
- a bit pattern “01000000”, followed by
- a pad, followed by
- a 25-bit value indicating the address of a display list in memory, followed by
- a pad, followed by
- a 25-bit value indicating the size of the display list in 32-byte chunks.
A storage medium storing a data structure comprising:
- a bit pattern “01000000”, followed by
- a bit pattern “0000000”, followed by
- a 25-bit value indicating the address of a display list in memory, followed by
- a bit pattern “0000000”, followed by
- a 25-bit value indicating the size of the display list in 32-byte chunks.
A graphics command stream decoder comprising:
- a first decoding section decoding a bit pattern “01000000”,
- a second decoding section decoding a bit pattern “0000000”,
- a third decoding section decoding a 25-bit value indicating the address of a display list in memory,
- a fourth decoding section decoding a bit pattern “0000000”,
- a further decoding section decoding a 25-bit value indicating the size of the display list in 32-byte chunks.
A method of generating a graphics command stream comprising:
- generating a bit pattern “01000000”, then
- generating a bit pattern “0000000”, then
- generating a 25-bit value indicating the address of a display list in memory, then
- generating a bit pattern “0000000”, then
- generating a 25-bit value indicating the size of the display list in 32-byte chunks.
Dependencies are inferred from the claim text.