File: model_shader_flags.h

package info (click to toggle)
freespace2 25.0.0%2Brepack-1
  • links: PTS, VCS
  • area: non-free
  • in suites: forky, sid
  • size: 47,232 kB
  • sloc: cpp: 657,500; ansic: 22,305; sh: 293; python: 200; makefile: 198; xml: 181
file content (34 lines) | stat: -rw-r--r-- 1,667 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#ifdef MODEL_SDR_FLAG_MODE_CPP
#define SDR_FLAG(name, value, geoshader) constexpr int name = value;
#elif defined MODEL_SDR_FLAG_MODE_CPP_ARRAY
#define SDR_FLAG(name, value, geoshader) {SDR_TYPE_MODEL, geoshader, value, #name, {}, #name},
#elif defined MODEL_SDR_FLAG_MODE_GLSL
#define SDR_FLAG(name, value, geoshader) const int name = value;
#else
#error Make sure to properly define the usage mode for this file!
#endif

SDR_FLAG(MODEL_SDR_FLAG_LIGHT	      , (1 << 0) , false)
SDR_FLAG(MODEL_SDR_FLAG_DEFERRED      , (1 << 1) , false)
SDR_FLAG(MODEL_SDR_FLAG_HDR		      , (1 << 2) , false)
SDR_FLAG(MODEL_SDR_FLAG_DIFFUSE	      , (1 << 3) , false)
SDR_FLAG(MODEL_SDR_FLAG_GLOW	      , (1 << 4) , false)
SDR_FLAG(MODEL_SDR_FLAG_SPEC	      , (1 << 5) , false)
SDR_FLAG(MODEL_SDR_FLAG_NORMAL	      , (1 << 6) , false)
SDR_FLAG(MODEL_SDR_FLAG_AMBIENT	      , (1 << 7) , false)
SDR_FLAG(MODEL_SDR_FLAG_MISC	      , (1 << 8) , false)
SDR_FLAG(MODEL_SDR_FLAG_TEAMCOLOR     , (1 << 9), false)
SDR_FLAG(MODEL_SDR_FLAG_FOG		      , (1 << 10), false)
SDR_FLAG(MODEL_SDR_FLAG_TRANSFORM     , (1 << 11), false)
SDR_FLAG(MODEL_SDR_FLAG_SHADOWS	      , (1 << 12), false)
SDR_FLAG(MODEL_SDR_FLAG_THRUSTER      , (1 << 13), false)
SDR_FLAG(MODEL_SDR_FLAG_ALPHA_MULT    , (1 << 14), false)

#ifndef MODEL_SDR_FLAG_MODE_GLSL
//The following ones are used ONLY as compile-time flags, but they still need to be defined here to ensure no conflict occurs
//But since these are checked with ifdefs even for the large shader, they must never be available in GLSL mode

SDR_FLAG(MODEL_SDR_FLAG_SHADOW_MAP    ,	(1 << 15), true)
SDR_FLAG(MODEL_SDR_FLAG_THICK_OUTLINES, (1 << 16), true)

#endif