15bd8deadSopenharmony_ciName 25bd8deadSopenharmony_ci 35bd8deadSopenharmony_ci ATI_vertex_attrib_array_object 45bd8deadSopenharmony_ci 55bd8deadSopenharmony_ciName Strings 65bd8deadSopenharmony_ci 75bd8deadSopenharmony_ci GL_ATI_vertex_attrib_array_object 85bd8deadSopenharmony_ci 95bd8deadSopenharmony_ciContact 105bd8deadSopenharmony_ci 115bd8deadSopenharmony_ci Chuck Smith, AMD (chuck.smith 'at' amd.com) 125bd8deadSopenharmony_ci 135bd8deadSopenharmony_ciStatus 145bd8deadSopenharmony_ci 155bd8deadSopenharmony_ci Complete. 165bd8deadSopenharmony_ci 175bd8deadSopenharmony_ciVersion 185bd8deadSopenharmony_ci 195bd8deadSopenharmony_ci Last Modified Date: November 4, 2006 205bd8deadSopenharmony_ci Revision: 1.1 215bd8deadSopenharmony_ci 225bd8deadSopenharmony_ciNumber 235bd8deadSopenharmony_ci 245bd8deadSopenharmony_ci 290 255bd8deadSopenharmony_ci 265bd8deadSopenharmony_ciDependencies 275bd8deadSopenharmony_ci 285bd8deadSopenharmony_ci This extension is written against the OpenGL 1.2.1 Specification. 295bd8deadSopenharmony_ci This extension relies on the presence of both ARB_vertex_program 305bd8deadSopenharmony_ci and ATI_vertex_array_object. 315bd8deadSopenharmony_ci 325bd8deadSopenharmony_ci 335bd8deadSopenharmony_ciOverview 345bd8deadSopenharmony_ci 355bd8deadSopenharmony_ci This extension defines an interface that allows multiple sets of 365bd8deadSopenharmony_ci generic vertex attribute data to be cached in persistent server-side 375bd8deadSopenharmony_ci memory. It is intended to allow client data to be stored in memory 385bd8deadSopenharmony_ci that can be directly accessed by graphics hardware. 395bd8deadSopenharmony_ci 405bd8deadSopenharmony_ci 415bd8deadSopenharmony_ciIssues 425bd8deadSopenharmony_ci 435bd8deadSopenharmony_ci None 445bd8deadSopenharmony_ci 455bd8deadSopenharmony_ci 465bd8deadSopenharmony_ciNew Procedures and Functions 475bd8deadSopenharmony_ci 485bd8deadSopenharmony_ci void VertexAttribArrayObjectATI(uint index, int size, enum type, 495bd8deadSopenharmony_ci boolean normalized, sizei stride, 505bd8deadSopenharmony_ci uint buffer, uint offset) 515bd8deadSopenharmony_ci 525bd8deadSopenharmony_ci void GetVertexAttribArrayObjectfvATI(uint index, enum pname, 535bd8deadSopenharmony_ci float *params) 545bd8deadSopenharmony_ci 555bd8deadSopenharmony_ci void GetVertexAttribArrayObjectivATI(uint index, enum pname, 565bd8deadSopenharmony_ci int *params) 575bd8deadSopenharmony_ci 585bd8deadSopenharmony_ci 595bd8deadSopenharmony_ciNew Tokens 605bd8deadSopenharmony_ci 615bd8deadSopenharmony_ci None 625bd8deadSopenharmony_ci 635bd8deadSopenharmony_ci 645bd8deadSopenharmony_ciAdditions to Chapter 2 of the OpenGL 1.2.1 Specification (Operation) 655bd8deadSopenharmony_ci 665bd8deadSopenharmony_ci In section 2.6.3, GL Commands within Begin/End, add 675bd8deadSopenharmony_ci VertexAttribArrayObjectATI to the list of commands that are not 685bd8deadSopenharmony_ci allowed within any Begin/End pair, but may or may not generate an 695bd8deadSopenharmony_ci error. 705bd8deadSopenharmony_ci 715bd8deadSopenharmony_ci 725bd8deadSopenharmony_ci At the end of the section titled Vertex Array Objects, between 735bd8deadSopenharmony_ci section 2.8, Vertex Arrays, and section 2.9, Rectangles, add the 745bd8deadSopenharmony_ci following: 755bd8deadSopenharmony_ci 765bd8deadSopenharmony_ci A client can define an array of generic vertex attribute data using 775bd8deadSopenharmony_ci the command: 785bd8deadSopenharmony_ci 795bd8deadSopenharmony_ci void VertexAttribArrayObjectATI(uint index, int size, enum type, 805bd8deadSopenharmony_ci boolean normalized, sizei stride, 815bd8deadSopenharmony_ci uint buffer, uint offset) 825bd8deadSopenharmony_ci 835bd8deadSopenharmony_ci The <index>, <size>, <type>, <normalized>. and <stride> parameters 845bd8deadSopenharmony_ci have the same meaning as the corresponding parameters of 855bd8deadSopenharmony_ci VertexAttribPointerARB. The <buffer> and <offset> parameters 865bd8deadSopenharmony_ci have the same meaning as the corresponding parameters of 875bd8deadSopenharmony_ci ArrayObjectATI. 885bd8deadSopenharmony_ci 895bd8deadSopenharmony_ci Vertex attribute arrays defined by VertexAttribArrayObjectATI are 905bd8deadSopenharmony_ci enabled and disabled in the same way as vertex attribute arrays 915bd8deadSopenharmony_ci defined by VertexAttribPointerARB, by using 925bd8deadSopenharmony_ci EnableVertexAttribArrayARB and DisableVertexAttribArrayARB. 935bd8deadSopenharmony_ci 945bd8deadSopenharmony_ci 955bd8deadSopenharmony_ciAdditions to Chapter 3 of the OpenGL 1.2.1 Specification (Rasterization): 965bd8deadSopenharmony_ci 975bd8deadSopenharmony_ci None 985bd8deadSopenharmony_ci 995bd8deadSopenharmony_ci 1005bd8deadSopenharmony_ciAdditions to Chapter 4 of the 1.2.1 Specification (Per-Fragment 1015bd8deadSopenharmony_ciOperations and the Frame Buffer) 1025bd8deadSopenharmony_ci 1035bd8deadSopenharmony_ci None 1045bd8deadSopenharmony_ci 1055bd8deadSopenharmony_ci 1065bd8deadSopenharmony_ciAdditions to Chapter 5 of the 1.2.1 Specification (Special Functions) 1075bd8deadSopenharmony_ci 1085bd8deadSopenharmony_ci None 1095bd8deadSopenharmony_ci 1105bd8deadSopenharmony_ciAdditions to Chapter 6 of the 1.2.1 Specification (State and State 1115bd8deadSopenharmony_ciRequests) 1125bd8deadSopenharmony_ci 1135bd8deadSopenharmony_ci Added to the list of queries in section 6.1.3, Enumerated Queries: 1145bd8deadSopenharmony_ci 1155bd8deadSopenharmony_ci void GetVertexAttribArrayObject{if}vATI(uint index, enum value, 1165bd8deadSopenharmony_ci T data); 1175bd8deadSopenharmony_ci 1185bd8deadSopenharmony_ci Appended to the description of the queries in section 6.1.3, 1195bd8deadSopenharmony_ci Enumerated Queries: 1205bd8deadSopenharmony_ci 1215bd8deadSopenharmony_ci GetVertexAttribArrayObjectATI is used to retrieve information on a 1225bd8deadSopenharmony_ci generic vertex attribute array located in an object buffer. The 1235bd8deadSopenharmony_ci <index> parameter identifies the generic vertex attribute that is to 1245bd8deadSopenharmony_ci be queried. The <value> and <data> parameters have the same meaning 1255bd8deadSopenharmony_ci as the corresponding parameters of GetArrayObjectATI. 1265bd8deadSopenharmony_ci 1275bd8deadSopenharmony_ci 1285bd8deadSopenharmony_ciAdditions to the AGL/GLX/WGL Specifications 1295bd8deadSopenharmony_ci 1305bd8deadSopenharmony_ci None 1315bd8deadSopenharmony_ci 1325bd8deadSopenharmony_ci 1335bd8deadSopenharmony_ciDependencies on ARB_vertex_program 1345bd8deadSopenharmony_ci 1355bd8deadSopenharmony_ci ARB_vertex_program must be present. 1365bd8deadSopenharmony_ci 1375bd8deadSopenharmony_ci 1385bd8deadSopenharmony_ciDependencies on ATI_vertex_array_object 1395bd8deadSopenharmony_ci 1405bd8deadSopenharmony_ci ATI_vertex_array_object must be present. 1415bd8deadSopenharmony_ci 1425bd8deadSopenharmony_ci 1435bd8deadSopenharmony_ciErrors 1445bd8deadSopenharmony_ci 1455bd8deadSopenharmony_ci See the specifications for ARB_vertex_program and 1465bd8deadSopenharmony_ci ATI_vertex_array_object. 1475bd8deadSopenharmony_ci 1485bd8deadSopenharmony_ci 1495bd8deadSopenharmony_ciNew State 1505bd8deadSopenharmony_ci 1515bd8deadSopenharmony_ci None 1525bd8deadSopenharmony_ci 1535bd8deadSopenharmony_ci 1545bd8deadSopenharmony_ciNew Implementation Dependent State 1555bd8deadSopenharmony_ci 1565bd8deadSopenharmony_ci None 1575bd8deadSopenharmony_ci 1585bd8deadSopenharmony_ci 1595bd8deadSopenharmony_ciRevision History 1605bd8deadSopenharmony_ci 1615bd8deadSopenharmony_ci 11/04/2006 1.1 1625bd8deadSopenharmony_ci - updated contact info after ATI/AMD merger. 1635bd8deadSopenharmony_ci 1645bd8deadSopenharmony_ci 09/10/2002 1.0 1655bd8deadSopenharmony_ci - initial version 1665bd8deadSopenharmony_ci 1675bd8deadSopenharmony_ci 168