Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/draw/intern/DRW_render.h')
-rw-r--r--source/blender/draw/intern/DRW_render.h37
1 files changed, 23 insertions, 14 deletions
diff --git a/source/blender/draw/intern/DRW_render.h b/source/blender/draw/intern/DRW_render.h
index 98d4c3bfa53..d68525e62ae 100644
--- a/source/blender/draw/intern/DRW_render.h
+++ b/source/blender/draw/intern/DRW_render.h
@@ -332,26 +332,27 @@ typedef enum {
DRW_STATE_CULL_BACK = (1 << 11),
DRW_STATE_CULL_FRONT = (1 << 12),
/** Stencil test */
- DRW_STATE_STENCIL_EQUAL = (1 << 13),
- DRW_STATE_STENCIL_NEQUAL = (1 << 14),
+ DRW_STATE_STENCIL_ALWAYS = (1 << 13),
+ DRW_STATE_STENCIL_EQUAL = (1 << 14),
+ DRW_STATE_STENCIL_NEQUAL = (1 << 15),
/** Blend state */
- DRW_STATE_BLEND_ADD = (1 << 15),
+ DRW_STATE_BLEND_ADD = (1 << 16),
/** Same as additive but let alpha accumulate without premult. */
- DRW_STATE_BLEND_ADD_FULL = (1 << 16),
+ DRW_STATE_BLEND_ADD_FULL = (1 << 17),
/** Standard alpha blending. */
- DRW_STATE_BLEND_ALPHA = (1 << 17),
+ DRW_STATE_BLEND_ALPHA = (1 << 18),
/** Use that if color is already premult by alpha. */
- DRW_STATE_BLEND_ALPHA_PREMUL = (1 << 18),
- DRW_STATE_BLEND_ALPHA_UNDER_PREMUL = (1 << 19),
- DRW_STATE_BLEND_OIT = (1 << 20),
- DRW_STATE_BLEND_MUL = (1 << 21),
-
- DRW_STATE_CLIP_PLANES = (1 << 22),
- DRW_STATE_WIRE_SMOOTH = (1 << 23),
- DRW_STATE_FIRST_VERTEX_CONVENTION = (1 << 24),
+ DRW_STATE_BLEND_ALPHA_PREMUL = (1 << 19),
+ DRW_STATE_BLEND_ALPHA_UNDER_PREMUL = (1 << 20),
+ DRW_STATE_BLEND_OIT = (1 << 21),
+ DRW_STATE_BLEND_MUL = (1 << 22),
+
+ DRW_STATE_CLIP_PLANES = (1 << 23),
+ DRW_STATE_WIRE_SMOOTH = (1 << 24),
+ DRW_STATE_FIRST_VERTEX_CONVENTION = (1 << 25),
/** DO NOT USE. Assumed always enabled. Only used internally. */
- DRW_STATE_PROGRAM_POINT_SIZE = (1 << 25),
+ DRW_STATE_PROGRAM_POINT_SIZE = (1 << 26),
} DRWState;
#define DRW_STATE_DEFAULT \
@@ -359,6 +360,14 @@ typedef enum {
#define DRW_STATE_RASTERIZER_ENABLED \
(DRW_STATE_WRITE_DEPTH | DRW_STATE_WRITE_COLOR | DRW_STATE_WRITE_STENCIL | \
DRW_STATE_WRITE_STENCIL_SHADOW_PASS | DRW_STATE_WRITE_STENCIL_SHADOW_FAIL)
+#define DRW_STATE_DEPTH_TEST_ENABLED \
+ (DRW_STATE_DEPTH_ALWAYS | DRW_STATE_DEPTH_LESS | DRW_STATE_DEPTH_LESS_EQUAL | \
+ DRW_STATE_DEPTH_EQUAL | DRW_STATE_DEPTH_GREATER | DRW_STATE_DEPTH_GREATER_EQUAL)
+#define DRW_STATE_STENCIL_TEST_ENABLED \
+ (DRW_STATE_STENCIL_ALWAYS | DRW_STATE_STENCIL_EQUAL | DRW_STATE_STENCIL_NEQUAL)
+#define DRW_STATE_WRITE_STENCIL_ENABLED \
+ (DRW_STATE_WRITE_STENCIL | DRW_STATE_WRITE_STENCIL_SHADOW_PASS | \
+ DRW_STATE_WRITE_STENCIL_SHADOW_FAIL)
typedef enum {
DRW_ATTR_INT,