blob: 4f7ae829b71bdf516ac2b803cb43cc77f2f01115 [file] [log] [blame]
Name
ATI_vertex_attrib_array_object
Name Strings
GL_ATI_vertex_attrib_array_object
Contact
Chuck Smith, AMD (chuck.smith 'at' amd.com)
Status
Complete.
Version
Last Modified Date: November 4, 2006
Revision: 1.1
Number
290
Dependencies
This extension is written against the OpenGL 1.2.1 Specification.
This extension relies on the presence of both ARB_vertex_program
and ATI_vertex_array_object.
Overview
This extension defines an interface that allows multiple sets of
generic vertex attribute data to be cached in persistent server-side
memory. It is intended to allow client data to be stored in memory
that can be directly accessed by graphics hardware.
Issues
None
New Procedures and Functions
void VertexAttribArrayObjectATI(uint index, int size, enum type,
boolean normalized, sizei stride,
uint buffer, uint offset)
void GetVertexAttribArrayObjectfvATI(uint index, enum pname,
float *params)
void GetVertexAttribArrayObjectivATI(uint index, enum pname,
int *params)
New Tokens
None
Additions to Chapter 2 of the OpenGL 1.2.1 Specification (Operation)
In section 2.6.3, GL Commands within Begin/End, add
VertexAttribArrayObjectATI to the list of commands that are not
allowed within any Begin/End pair, but may or may not generate an
error.
At the end of the section titled Vertex Array Objects, between
section 2.8, Vertex Arrays, and section 2.9, Rectangles, add the
following:
A client can define an array of generic vertex attribute data using
the command:
void VertexAttribArrayObjectATI(uint index, int size, enum type,
boolean normalized, sizei stride,
uint buffer, uint offset)
The <index>, <size>, <type>, <normalized>. and <stride> parameters
have the same meaning as the corresponding parameters of
VertexAttribPointerARB. The <buffer> and <offset> parameters
have the same meaning as the corresponding parameters of
ArrayObjectATI.
Vertex attribute arrays defined by VertexAttribArrayObjectATI are
enabled and disabled in the same way as vertex attribute arrays
defined by VertexAttribPointerARB, by using
EnableVertexAttribArrayARB and DisableVertexAttribArrayARB.
Additions to Chapter 3 of the OpenGL 1.2.1 Specification (Rasterization):
None
Additions to Chapter 4 of the 1.2.1 Specification (Per-Fragment
Operations and the Frame Buffer)
None
Additions to Chapter 5 of the 1.2.1 Specification (Special Functions)
None
Additions to Chapter 6 of the 1.2.1 Specification (State and State
Requests)
Added to the list of queries in section 6.1.3, Enumerated Queries:
void GetVertexAttribArrayObject{if}vATI(uint index, enum value,
T data);
Appended to the description of the queries in section 6.1.3,
Enumerated Queries:
GetVertexAttribArrayObjectATI is used to retrieve information on a
generic vertex attribute array located in an object buffer. The
<index> parameter identifies the generic vertex attribute that is to
be queried. The <value> and <data> parameters have the same meaning
as the corresponding parameters of GetArrayObjectATI.
Additions to the AGL/GLX/WGL Specifications
None
Dependencies on ARB_vertex_program
ARB_vertex_program must be present.
Dependencies on ATI_vertex_array_object
ATI_vertex_array_object must be present.
Errors
See the specifications for ARB_vertex_program and
ATI_vertex_array_object.
New State
None
New Implementation Dependent State
None
Revision History
11/04/2006 1.1
- updated contact info after ATI/AMD merger.
09/10/2002 1.0
- initial version