00001 /****************************************************************************************/ 00002 /* ROP.H */ 00003 /* */ 00004 /* Author: Mike Sandige */ 00005 /* Description: This defines the available rops for the software driver triangle */ 00006 /* rasterizer. */ 00007 /* */ 00008 /* The contents of this file are subject to the Genesis3D Public License */ 00009 /* Version 1.01 (the "License"); you may not use this file except in */ 00010 /* compliance with the License. You may obtain a copy of the License at */ 00011 /* http://www.genesis3d.com */ 00012 /* */ 00013 /* Software distributed under the License is distributed on an "AS IS" */ 00014 /* basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See */ 00015 /* the License for the specific language governing rights and limitations */ 00016 /* under the License. */ 00017 /* */ 00018 /* The Original Code is Genesis3D, released March 25, 1999. */ 00019 /* Genesis3D Version 1.1 released November 15, 1999 */ 00020 /* Copyright (C) 1999 WildTangent, Inc. All Rights Reserved */ 00021 /* */ 00022 /****************************************************************************************/ 00023 #ifndef ROP_H 00024 #define ROP_H 00025 00026 #ifdef __cplusplus 00027 extern "C" { 00028 #endif 00029 00030 00031 // light = gourad,map,flat,none(fullbright) 00032 // alpha = none, map(only with a texture), flat 00033 typedef enum { 00034 00035 //ROP ID // texture light alpha z z span span priority 00036 // test set test set 00037 GE_ROP_LSHADE, // | - | g | - | - | - | - | - | m 00038 GE_ROP_LSHADE_ZSET, // | - | g | - | - | + | - | - | m 00039 GE_ROP_LSHADE_ZTEST, // | - | g | - | + | - | - | - | m 00040 GE_ROP_LSHADE_ZTESTSET, // | - | g | - | + | + | - | - | h 00041 GE_ROP_LSHADE_AFLAT, // | - | g | f | - | - | - | - | l 00042 GE_ROP_LSHADE_AFLAT_ZSET, // | - | g | f | - | + | - | - | l 00043 GE_ROP_LSHADE_AFLAT_ZTEST, // | - | g | f | + | - | - | - | l 00044 GE_ROP_LSHADE_AFLAT_ZTESTSET, // | - | g | f | + | + | - | - | l 00045 GE_ROP_TMAP_LSHADE, // | + | g | - | - | - | - | - | m 00046 GE_ROP_TMAP_LSHADE_ZSET, // | + | g | - | - | + | - | - | m 00047 GE_ROP_TMAP_LSHADE_ZTEST, // | + | g | - | + | - | - | - | m 00048 GE_ROP_TMAP_LSHADE_ZTESTSET, // | + | g | - | + | + | - | - | h 00049 GE_ROP_TMAP_LMAP_ZSET_SBUF, // | + | m | - | - | + | + | + | h 00050 GE_ROP_TMAP_LSHADE_ZSET_SBUF, // | + | g | - | - | + | + | + | h 00051 GE_ROP_TMAP_LMAP_ZTESTSET, // | + | m | - | + | + | - | - | h 00052 GE_ROP_TMAP_LSHADE_AFLAT, // | + | g | f | - | - | - | - | l 00053 GE_ROP_TMAP_LSHADE_AFLAT_ZSET, // | + | g | f | - | + | - | - | l 00054 GE_ROP_TMAP_LSHADE_AFLAT_ZTEST, // | + | g | f | + | - | - | - | l 00055 GE_ROP_TMAP_LSHADE_AFLAT_ZTESTSET, // | + | g | f | + | + | - | - | l 00056 GE_ROP_TMAP_LSHADE_AMAP, // | + | g | m | - | - | - | - | m 00057 GE_ROP_TMAP_LSHADE_AMAP_ZSET, // | + | g | m | - | + | - | - | m 00058 GE_ROP_TMAP_LSHADE_AMAP_ZTEST, // | + | g | m | + | - | - | - | m 00059 GE_ROP_TMAP_LSHADE_AMAP_ZTESTSET, // | + | g | m | + | + | - | - | m 00060 GE_ROP_TMAP_LMAP_AMAP, // | + | m | m | - | - | - | - | l 00061 GE_ROP_TMAP_LMAP_AMAP_ZSET, // | + | m | m | - | + | - | - | l 00062 GE_ROP_TMAP_LMAP_AMAP_ZTEST, // | + | m | m | + | - | - | - | l 00063 GE_ROP_TMAP_LMAP_AMAP_ZTESTSET, // | + | m | m | + | + | - | - | l 00064 GE_ROP_TMAP_LMAP_AFLAT_ZTESTSET, // | + | m | f | + | + | - | - | h 00065 GE_ROP_TMAP_LSHADE_AMAP_AFLAT, // | + | g | mf | - | - | - | - | m 00066 GE_ROP_TMAP_LSHADE_AMAP_AFLAT_ZSET, // | + | g | mf | - | + | - | - | m 00067 GE_ROP_TMAP_LSHADE_AMAP_AFLAT_ZTEST, // | + | g | mf | + | - | - | - | m 00068 GE_ROP_TMAP_LSHADE_AMAP_AFLAT_ZTESTSET, // | + | g | mf | + | + | - | - | m 00069 GE_ROP_END, 00070 } geROP; 00071 00072 00073 #ifdef __cplusplus 00074 } 00075 #endif 00076 00077 00078 #endif
1.3.2