ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

vbo_attrib.h
Go to the documentation of this file.
00001 /*
00002  Copyright (C) Intel Corp.  2006.  All Rights Reserved.
00003  Intel funded Tungsten Graphics (http://www.tungstengraphics.com) to
00004  develop this 3D driver.
00005  
00006  Permission is hereby granted, free of charge, to any person obtaining
00007  a copy of this software and associated documentation files (the
00008  "Software"), to deal in the Software without restriction, including
00009  without limitation the rights to use, copy, modify, merge, publish,
00010  distribute, sublicense, and/or sell copies of the Software, and to
00011  permit persons to whom the Software is furnished to do so, subject to
00012  the following conditions:
00013  
00014  The above copyright notice and this permission notice (including the
00015  next paragraph) shall be included in all copies or substantial
00016  portions of the Software.
00017  
00018  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
00019  EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
00020  MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
00021  IN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE
00022  LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
00023  OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
00024  WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
00025  
00026  **********************************************************************/
00027  /*
00028   * Authors:
00029   *   Keith Whitwell <keith@tungstengraphics.com>
00030   */
00031 
00032 #ifndef VBO_ATTRIB_H
00033 #define VBO_ATTRIB_H
00034 
00035 
00036 /*
00037  * Note: The first attributes match the VERT_ATTRIB_* definitions
00038  * in mtypes.h.  However, the tnl module has additional attributes
00039  * for materials, color indexes, edge flags, etc.
00040  */
00041 /* Although it's nice to use these as bit indexes in a DWORD flag, we
00042  * could manage without if necessary.  Another limit currently is the
00043  * number of bits allocated for these numbers in places like vertex
00044  * program instruction formats and register layouts.
00045  */
00046 enum {
00047     VBO_ATTRIB_POS = 0,
00048     VBO_ATTRIB_WEIGHT = 1,
00049     VBO_ATTRIB_NORMAL = 2,
00050     VBO_ATTRIB_COLOR0 = 3,
00051     VBO_ATTRIB_COLOR1 = 4,
00052     VBO_ATTRIB_FOG = 5,
00053     VBO_ATTRIB_INDEX = 6,        
00054     VBO_ATTRIB_EDGEFLAG = 7,     
00055     VBO_ATTRIB_TEX0 = 8,
00056     VBO_ATTRIB_TEX1 = 9,
00057     VBO_ATTRIB_TEX2 = 10,
00058     VBO_ATTRIB_TEX3 = 11,
00059     VBO_ATTRIB_TEX4 = 12,
00060     VBO_ATTRIB_TEX5 = 13,
00061     VBO_ATTRIB_TEX6 = 14,
00062     VBO_ATTRIB_TEX7 = 15,
00063 
00064     VBO_ATTRIB_GENERIC0 = 16, /* Not used? */
00065     VBO_ATTRIB_GENERIC1 = 17,
00066     VBO_ATTRIB_GENERIC2 = 18,
00067     VBO_ATTRIB_GENERIC3 = 19,
00068     VBO_ATTRIB_GENERIC4 = 20,
00069     VBO_ATTRIB_GENERIC5 = 21,
00070     VBO_ATTRIB_GENERIC6 = 22,
00071     VBO_ATTRIB_GENERIC7 = 23,
00072     VBO_ATTRIB_GENERIC8 = 24,
00073     VBO_ATTRIB_GENERIC9 = 25,
00074     VBO_ATTRIB_GENERIC10 = 26,
00075     VBO_ATTRIB_GENERIC11 = 27,
00076     VBO_ATTRIB_GENERIC12 = 28,
00077     VBO_ATTRIB_GENERIC13 = 29,
00078     VBO_ATTRIB_GENERIC14 = 30,
00079     VBO_ATTRIB_GENERIC15 = 31,
00080 
00081     /* XXX: in the vertex program InputsRead flag, we alias
00082      * materials and generics and use knowledge about the program
00083      * (whether it is a fixed-function emulation) to
00084      * differentiate.  Here we must keep them apart instead.
00085      */
00086     VBO_ATTRIB_MAT_FRONT_AMBIENT = 32, 
00087     VBO_ATTRIB_MAT_BACK_AMBIENT = 33,
00088     VBO_ATTRIB_MAT_FRONT_DIFFUSE = 34,
00089     VBO_ATTRIB_MAT_BACK_DIFFUSE = 35,
00090     VBO_ATTRIB_MAT_FRONT_SPECULAR = 36,
00091     VBO_ATTRIB_MAT_BACK_SPECULAR = 37,
00092     VBO_ATTRIB_MAT_FRONT_EMISSION = 38,
00093     VBO_ATTRIB_MAT_BACK_EMISSION = 39,
00094     VBO_ATTRIB_MAT_FRONT_SHININESS = 40,
00095     VBO_ATTRIB_MAT_BACK_SHININESS = 41,
00096     VBO_ATTRIB_MAT_FRONT_INDEXES = 42,
00097     VBO_ATTRIB_MAT_BACK_INDEXES = 43, 
00098 
00099     VBO_ATTRIB_MAX = 44
00100 };
00101 
00102 #define VBO_ATTRIB_FIRST_MATERIAL VBO_ATTRIB_MAT_FRONT_AMBIENT
00103 #define VBO_ATTRIB_LAST_MATERIAL VBO_ATTRIB_MAT_BACK_INDEXES
00104 
00105 #define VBO_MAX_COPIED_VERTS 3
00106 
00107 #endif

Generated on Sat May 26 2012 04:19:38 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.