summaryrefslogtreecommitdiff
path: root/video.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'video.hpp')
-rw-r--r--video.hpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/video.hpp b/video.hpp
index 29c1445..dc922c3 100644
--- a/video.hpp
+++ b/video.hpp
@@ -110,6 +110,12 @@ enum class Cull_Mode {
front
};
+enum class Geo_Type {
+ triangles,
+ lines,
+ points
+};
+
struct Pipeline {
uint64_t pipeline_hash;
uint64_t descriptor_resource_hash;
@@ -118,6 +124,7 @@ struct Pipeline {
bool depth_test, depth_write;
bool blend_enable;
Depth_Mode depth_mode;
+ Geo_Type geo;
Blend_Factor blend_src, blend_dst;
Blend_Mode blend_mode;
Blend_Factor blend_src_alpha, blend_dst_alpha;
@@ -145,6 +152,7 @@ struct Pipeline {
depth_test == other.depth_test &&
depth_write == other.depth_write &&
depth_mode == other.depth_mode &&
+ geo == other.geo &&
blend_enable == other.blend_enable &&
blend_src == other.blend_src &&
blend_dst == other.blend_dst &&
@@ -300,6 +308,7 @@ struct Pipeline_Builder {
void viewport(int x, int y, int w, int h);
void scissor(int x, int y, int w, int h);
void depth(bool test, bool write, Depth_Mode mode);
+ void geo(Geo_Type type);
void blend(Blend_Mode mode, Blend_Factor src, Blend_Factor dst);
void blend(
Blend_Mode mode_col,