00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef SBENUMS_H
00022 #define SBENUMS_H
00023
00024 #include <Inventor/SbBase.h>
00025
00026
00027 {
00028 public:
00032 enum TexGenFunction
00033 {
00034 TEXGEN_OBJECT_LINEAR,
00035 TEXGEN_EYE_LINEAR,
00036 TEXGEN_SPHERE_MAP,
00037 TEXGEN_NORMAL_MAP,
00038 TEXGEN_REFLECTION_MAP
00039 };
00040
00044 enum TextureAddressMode
00045 {
00046
00047 TEX_ADDRESS_MIRROR_CLAMP = 0,
00048 TEX_ADDRESS_CLAMP = 0x2900,
00049 TEX_ADDRESS_REPEAT = 0x2901,
00050 TEX_ADDRESS_CLAMP_BORDER = 0x812D,
00051 TEX_ADDRESS_CLAMP_TO_EDGE = 0x812F,
00052 TEX_ADDRESS_MIRROR_REPEAT = 0x8370
00053 };
00054
00058 enum ImageDataFormat
00059 {
00060 IMG_FORMAT_DEPTH_COMPONENT,
00061 IMG_FORMAT_STENCIL_INDEX,
00062 IMG_FORMAT_DEPTH_STENCIL,
00063 IMG_FORMAT_RED,
00064 IMG_FORMAT_GREEN,
00065 IMG_FORMAT_BLUE,
00066 IMG_FORMAT_RG,
00067 IMG_FORMAT_RGB,
00068 IMG_FORMAT_RGBA,
00069 IMG_FORMAT_BGR,
00070 IMG_FORMAT_BGRA,
00071 IMG_FORMAT_RED_INTEGER,
00072 IMG_FORMAT_GREEN_INTEGER,
00073 IMG_FORMAT_BLUE_INTEGER,
00074 IMG_FORMAT_RG_INTEGER,
00075 IMG_FORMAT_RGB_INTEGER,
00076 IMG_FORMAT_RGBA_INTEGER,
00077 IMG_FORMAT_BGR_INTEGER,
00078 IMG_FORMAT_BGRA_INTEGER
00079 };
00080
00084 enum ShaderType
00085 {
00086 SHADER_TYPE_VERTEX,
00087 SHADER_TYPE_GEOMETRY,
00088 SHADER_TYPE_FRAGMENT,
00089 SHADER_TYPE_TESS_CTRL,
00090 SHADER_TYPE_TESS_EVAL,
00091 SHADER_TYPE_COMPUTE,
00092 SHADER_TYPE_LAST
00093 };
00094
00098 enum BlendFactor
00099 {
00100 BLEND_ZERO,
00101 BLEND_ONE,
00102 BLEND_SRC_COLOR,
00103 BLEND_ONE_MINUS_SRC_COLOR,
00104 BLEND_DST_COLOR,
00105 BLEND_ONE_MINUS_DST_COLOR,
00106 BLEND_SRC_ALPHA,
00107 BLEND_ONE_MINUS_SRC_ALPHA,
00108 BLEND_DST_ALPHA,
00109 BLEND_ONE_MINUS_DST_ALPHA,
00110 BLEND_CONSTANT_COLOR,
00111 BLEND_ONE_MINUS_CONSTANT_COLOR,
00112 BLEND_CONSTANT_ALPHA,
00113 BLEND_ONE_MINUS_CONSTANT_ALPHA,
00114 BLEND_SRC_ALPHA_SATURATE,
00115 BLEND_SRC1_COLOR,
00116 BLEND_ONE_MINUS_SRC1_COLOR,
00117 BLEND_SRC1_ALPHA,
00118 BLEND_ONE_MINUS_SRC1_ALPHA
00119 };
00120
00124 enum BufferAccess
00125 {
00126 READ,
00127 WRITE,
00128 READ_WRITE
00129 };
00130
00134 enum BlendFunction
00135 {
00136 BLEND_FUNC_ADD,
00137 BLEND_FUNC_SUBTRACT,
00138 BLEND_FUNC_REVERSE_SUBTRACT,
00139 BLEND_FUNC_MIN,
00140 BLEND_FUNC_MAX
00141 };
00142
00146 enum OffsetMode
00147 {
00148 OFFSET_SOLID = 0x01,
00149 OFFSET_WIREFRAME = 0x02,
00150 OFFSET_POINTS = 0x04
00151 };
00152
00156 enum ComparisonFunction
00157 {
00158 COMP_FUNC_NEVER = 0,
00159 COMP_FUNC_LESS,
00160 COMP_FUNC_LESS_EQUAL,
00161 COMP_FUNC_GREATER,
00162 COMP_FUNC_GREATER_EQUAL,
00163 COMP_FUNC_EQUAL,
00164 COMP_FUNC_NOT_EQUAL,
00165 COMP_FUNC_ALWAYS
00166 };
00167
00171 enum LogicalOperation
00172 {
00173 LOGIC_OP_NOOP,
00174 LOGIC_OP_CLEAR,
00175 LOGIC_OP_SET,
00176 LOGIC_OP_COPY,
00177 LOGIC_OP_COPY_INVERTED,
00178 LOGIC_OP_INVERT,
00179 LOGIC_OP_AND,
00180 LOGIC_OP_NAND,
00181 LOGIC_OP_AND_REVERSE,
00182 LOGIC_OP_AND_INVERTED,
00183 LOGIC_OP_OR,
00184 LOGIC_OP_NOR,
00185 LOGIC_OP_XOR,
00186 LOGIC_OP_OR_REVERSE,
00187 LOGIC_OP_OR_INVERTED,
00188 LOGIC_OP_EQUIV,
00189 };
00190
00191
00192
00193
00194 enum MemoryBarrier
00195 {
00196 MEM_VERTEX_ATTRIB_ARRAY = 1,
00197 MEM_ELEMENT_ARRAY = 1 << 1,
00198 MEM_UNIFORM = 1 << 2,
00199 MEM_TEXTURE_FETCH = 1 << 3,
00200 MEM_SHADER_IMAGE_ACCESS = 1 << 4,
00201 MEM_COMMAND = 1 << 5,
00202 MEM_PIXEL_BUFFER = 1 << 6,
00203 MEM_TEXTURE_UPDATE = 1 << 7,
00204 MEM_BUFFER_UPDATE = 1 << 8,
00205 MEM_FRAMEBUFFER = 1 << 9,
00206 MEM_TRANSFORM_FEEDBACK = 1 << 10,
00207 MEM_QUERY_BUFFER = 1 << 11,
00208 MEM_ATOMIC_COUNTER = 1 << 12,
00209 MEM_CLIENT_MAPPED_BUFFER = 1 << 13,
00210 MEM_SHADER_STORAGE = 1 << 14,
00211 MEM_ALL = 0xFFFFFFFF
00212 };
00213
00214 enum { OIV_MAX_FIXED_TEXTURE_UNIT = 4 };
00215
00219 enum TextureModel
00220 {
00221 TEX_MODEL_MODULATE = 0x2100,
00222 TEX_MODEL_DECAL = 0x2101,
00223 TEX_MODEL_BLEND = 0x0BE2,
00224 TEX_MODEL_REPLACE = 0x1E01,
00225 TEX_MODEL_ADD = 0x0104,
00226 TEX_MODEL_COMBINE = 0x8570,
00227 TEX_MODEL_ADD_SIGNED = 0x8574,
00228 TEX_MODEL_INTERPOLATE = 0x8575,
00229 TEX_MODEL_SUBTRACT = 0x84E7,
00230 TEX_MODEL_DOT3_RGB = 0x86AE,
00231 TEX_MODEL_DOT3_RGBA = 0x86AF
00232 };
00233
00237 enum TextureFilter
00238 {
00239 TEX_FILTER_AUTO = 0,
00240 TEX_FILTER_NEAREST = 0x2600,
00241 TEX_FILTER_LINEAR = 0x2601,
00242 TEX_FILTER_NEAREST_MIPMAP_NEAREST = 0x2700,
00243 TEX_FILTER_NEAREST_MIPMAP_LINEAR = 0x2702,
00244 TEX_FILTER_LINEAR_MIPMAP_NEAREST = 0x2071,
00245 TEX_FILTER_LINEAR_MIPMAP_LINEAR = 0x2073
00246 };
00247
00251 enum SourceParameter
00252 {
00253 SRC_PARAM_CONSTANT = 0x8576,
00254 SRC_PARAM_PRIMARY_COLOR = 0x8577,
00255 SRC_PARAM_PREVIOUS = 0x8578,
00256 SRC_PARAM_TEXTURE = 0x1702
00257 };
00258
00263 enum OperandRGBA
00264 {
00265 SRC_COLOR = 0x0300,
00266 ONE_MINUS_SRC_COLOR = 0x0301,
00267 SRC_ALPHA = 0x0302,
00268 ONE_MINUS_SRC_ALPHA = 0x0303
00269 };
00270
00274 enum QueryType
00275 {
00276 QUERY_SAMPLES_PASSED,
00277 QUERY_ANY_SAMPLES_PASSED,
00278 QUERY_ANY_SAMPLES_PASSED_CONSERVATIVE,
00279 QUERY_PRIMITIVES_GENERATED,
00280 QUERY_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN,
00281 QUERY_TIME_ELAPSED,
00282 QUERY_TIMESTAMP
00283 };
00284
00288 enum ShaderBufferType
00289 {
00290 SHADER_STORAGE_BUFFER,
00291 UNIFORM_BUFFER
00292 };
00293
00297 enum FogType
00298 {
00299 FOG_TYPE_NONE = 0,
00300 FOG_TYPE_EXP,
00301 FOG_TYPE_EXP2,
00302 FOG_TYPE_LINEAR,
00303 };
00304
00305 };
00306
00307 #endif
00308