[Bf-blender-cvs] [375c872799d] tmp-gpu-shader-descriptor-2: EditUVs faces, edges and facedots.

Jeroen Bakker noreply at git.blender.org
Fri Jan 7 15:47:46 CET 2022


Commit: 375c872799d6e7f0c74d702b9bcdba5c462a065b
Author: Jeroen Bakker
Date:   Fri Jan 7 15:47:31 2022 +0100
Branches: tmp-gpu-shader-descriptor-2
https://developer.blender.org/rB375c872799d6e7f0c74d702b9bcdba5c462a065b

EditUVs faces, edges and facedots.

===================================================================

M	source/blender/gpu/CMakeLists.txt
M	source/blender/gpu/shaders/infos/gpu_interface_info.hh
A	source/blender/gpu/shaders/infos/gpu_shader_2D_uv_edges_info.hh
A	source/blender/gpu/shaders/infos/gpu_shader_2D_uv_facedots_info.hh
A	source/blender/gpu/shaders/infos/gpu_shader_2D_uv_faces_info.hh
A	source/blender/gpu/shaders/infos/gpu_shader_2D_uv_faces_stretch_info.hh
M	source/blender/gpu/shaders/infos/gpu_shader_todo_info.hh

===================================================================

diff --git a/source/blender/gpu/CMakeLists.txt b/source/blender/gpu/CMakeLists.txt
index 23b915b3c19..7b433da3f55 100644
--- a/source/blender/gpu/CMakeLists.txt
+++ b/source/blender/gpu/CMakeLists.txt
@@ -443,6 +443,10 @@ shaders/infos/gpu_shader_3D_depth_only_info.hh
 #shaders/infos/gpu_shader_2D_line_dashed_uniform_color_info.hh
 #shaders/infos/gpu_shader_3D_line_dashed_uniform_color_info.hh
 shaders/infos/gpu_shader_2D_point_fixed_size_uniform_color_info.hh
+shaders/infos/gpu_shader_2D_uv_faces_stretch_info.hh
+shaders/infos/gpu_shader_2D_uv_faces_info.hh
+shaders/infos/gpu_shader_2D_uv_facedots_info.hh
+shaders/infos/gpu_shader_2D_uv_edges_info.hh
 #shaders/infos/gpu_shader_todo_info.hh
 )
 
diff --git a/source/blender/gpu/shaders/infos/gpu_interface_info.hh b/source/blender/gpu/shaders/infos/gpu_interface_info.hh
index 61d8e1b9c24..97ead4098d8 100644
--- a/source/blender/gpu/shaders/infos/gpu_interface_info.hh
+++ b/source/blender/gpu/shaders/infos/gpu_interface_info.hh
@@ -3,5 +3,6 @@
 #include "gpu_shader_create_info.hh"
 
 GPU_SHADER_INTERFACE_INFO(flat_color_iface, "").flat(Type::VEC4, "finalColor");
+GPU_SHADER_INTERFACE_INFO(no_perspective_color_iface, "").no_perspective(Type::VEC4, "finalColor");
 GPU_SHADER_INTERFACE_INFO(smooth_color_iface, "").smooth(Type::VEC4, "finalColor");
 GPU_SHADER_INTERFACE_INFO(smooth_tex_coord_interp_iface, "").smooth(Type::VEC2, "texCoord_interp");
diff --git a/source/blender/gpu/shaders/infos/gpu_shader_2D_uv_edges_info.hh b/source/blender/gpu/shaders/infos/gpu_shader_2D_uv_edges_info.hh
new file mode 100644
index 00000000000..36bf454f3dd
--- /dev/null
+++ b/source/blender/gpu/shaders/infos/gpu_shader_2D_uv_edges_info.hh
@@ -0,0 +1,42 @@
+#include "gpu_interface_info.hh"
+#include "gpu_shader_create_info.hh"
+
+GPU_SHADER_INTERFACE_INFO(flat_edituvs_edges_iface, "")
+    .flat(Type::VEC4, "finalColor")
+    .no_perspective(Type::VEC2, "stipple_pos")
+    .flat(Type::VEC2, "stipple_start");
+GPU_SHADER_INTERFACE_INFO(no_perspective_edituvs_edges_iface, "")
+    .no_perspective(Type::VEC4, "finalColor")
+    .no_perspective(Type::VEC2, "stipple_pos")
+    .flat(Type::VEC2, "stipple_start");
+
+GPU_SHADER_CREATE_INFO(gpu_shader_2D_uv_edges)
+    .vertex_in(0, Type::VEC2, "pos")
+    .vertex_in(1, Type::INT, "flag")
+    .vertex_out(flat_edituvs_edges_iface)
+    .fragment_out(0, Type::VEC4, "fragColor")
+    .push_constant(0, Type::MAT4, "ModelViewProjectionMatrix")
+    .push_constant(16, Type::VEC4, "edgeColor")
+    .push_constant(20, Type::VEC4, "selectColor")
+    .push_constant(24, Type::FLOAT, "dashWidth")
+
+    .vertex_source("gpu_shader_2D_edituvs_edges_vert.glsl")
+    .fragment_source("gpu_shader_2D_edituvs_edges_frag.glsl")
+    .additional_info("gpu_srgb_to_framebuffer_space")
+    .do_static_compilation(true);
+
+GPU_SHADER_CREATE_INFO(gpu_shader_2D_uv_edges_smooth)
+    .vertex_in(0, Type::VEC2, "pos")
+    .vertex_in(1, Type::INT, "flag")
+    .vertex_out(no_perspective_edituvs_edges_iface)
+    .fragment_out(0, Type::VEC4, "fragColor")
+    .push_constant(0, Type::MAT4, "ModelViewProjectionMatrix")
+    .push_constant(16, Type::VEC4, "edgeColor")
+    .push_constant(20, Type::VEC4, "selectColor")
+    .push_constant(24, Type::FLOAT, "dashWidth")
+
+    .vertex_source("gpu_shader_2D_edituvs_edges_vert.glsl")
+    .fragment_source("gpu_shader_2D_edituvs_edges_frag.glsl")
+    .define("SMOOTH_COLOR")
+    .additional_info("gpu_srgb_to_framebuffer_space")
+    .do_static_compilation(true);
diff --git a/source/blender/gpu/shaders/infos/gpu_shader_2D_uv_facedots_info.hh b/source/blender/gpu/shaders/infos/gpu_shader_2D_uv_facedots_info.hh
new file mode 100644
index 00000000000..4c85f5543c0
--- /dev/null
+++ b/source/blender/gpu/shaders/infos/gpu_shader_2D_uv_facedots_info.hh
@@ -0,0 +1,14 @@
+#include "gpu_interface_info.hh"
+#include "gpu_shader_create_info.hh"
+
+GPU_SHADER_CREATE_INFO(gpu_shader_2D_uv_facedots)
+    .vertex_in(0, Type::VEC2, "pos")
+    .vertex_in(1, Type::INT, "flag")
+    .vertex_out(smooth_color_iface)
+    .fragment_out(0, Type ::VEC4, "fragColor")
+    .push_constant(0, Type::MAT4, "ModelViewProjectionMatrix")
+    .push_constant(16, Type::VEC4, "vertColor")
+    .push_constant(20, Type::VEC4, "selectColor")
+    .vertex_source("gpu_shader_2D_edituvs_facedots_vert.glsl")
+    .fragment_source("gpu_shader_point_varying_color_frag.glsl")
+    .do_static_compilation(true);
\ No newline at end of file
diff --git a/source/blender/gpu/shaders/infos/gpu_shader_2D_uv_faces_info.hh b/source/blender/gpu/shaders/infos/gpu_shader_2D_uv_faces_info.hh
new file mode 100644
index 00000000000..0516adc4caa
--- /dev/null
+++ b/source/blender/gpu/shaders/infos/gpu_shader_2D_uv_faces_info.hh
@@ -0,0 +1,25 @@
+#include "gpu_interface_info.hh"
+#include "gpu_shader_create_info.hh"
+
+GPU_SHADER_CREATE_INFO(gpu_shader_2D_uv_faces)
+    .vertex_in(0, Type::VEC2, "pos")
+    .vertex_in(1, Type::INT, "flag")
+    .vertex_out(flat_color_iface)
+    .fragment_out(0, Type::VEC4, "fragColor")
+    .push_constant(0, Type::MAT4, "ModelViewProjectionMatrix")
+    .push_constant(16, Type::VEC4, "faceColor")
+    .push_constant(20, Type::VEC4, "selectColor")
+    .push_constant(24, Type::VEC4, "activeColor")
+
+    .vertex_source("gpu_shader_2D_edituvs_faces_vert.glsl")
+    .fragment_source("gpu_shader_flat_color_frag.glsl")
+    .additional_info("gpu_srgb_to_framebuffer_space")
+    .do_static_compilation(true);
+/*
+    [GPU_SHADER_2D_UV_FACES] =
+        {
+            .name = "GPU_SHADER_2D_UV_FACES",
+            .vert = datatoc_gpu_shader_2D_edituvs_faces_vert_glsl,
+            .frag = datatoc_gpu_shader_flat_color_frag_glsl,
+},
+*/
\ No newline at end of file
diff --git a/source/blender/gpu/shaders/infos/gpu_shader_2D_uv_faces_stretch_info.hh b/source/blender/gpu/shaders/infos/gpu_shader_2D_uv_faces_stretch_info.hh
new file mode 100644
index 00000000000..e226c84dfa9
--- /dev/null
+++ b/source/blender/gpu/shaders/infos/gpu_shader_2D_uv_faces_stretch_info.hh
@@ -0,0 +1,26 @@
+#include "gpu_interface_info.hh"
+#include "gpu_shader_create_info.hh"
+
+GPU_SHADER_CREATE_INFO(gpu_shader_2D_uv_faces_stretch)
+    .vertex_in(0, Type::VEC2, "pos")
+    .vertex_out(no_perspective_color_iface)
+    .fragment_out(0, Type::VEC4, "fragColor")
+    .push_constant(0, Type::MAT4, "ModelViewProjectionMatrix")
+    .push_constant(16, Type::VEC2, "aspect")
+    .vertex_source("gpu_shader_2D_edituvs_stretch_vert.glsl")
+    .fragment_source("gpu_shader_2D_smooth_color_frag.glsl")
+    .additional_info("gpu_srgb_to_framebuffer_space");
+
+GPU_SHADER_CREATE_INFO(gpu_shader_2D_uv_faces_stretch_area)
+    .additional_info("gpu_shader_2D_uv_faces_stretch")
+    .vertex_in(1, Type::FLOAT, "ratio")
+    .push_constant(20, Type::FLOAT, "totalAreaRatio")
+    .push_constant(24, Type::FLOAT, "totalAreaRatioInv")
+    .do_static_compilation(true);
+
+GPU_SHADER_CREATE_INFO(gpu_shader_2D_uv_faces_stretch_angle)
+    .additional_info("gpu_shader_2D_uv_faces_stretch")
+    .vertex_in(1, Type::VEC2, "uv_angles")
+    .vertex_in(2, Type::FLOAT, "angle")
+    .define("STRETCH_ANGLE")
+    .do_static_compilation(true);
diff --git a/source/blender/gpu/shaders/infos/gpu_shader_todo_info.hh b/source/blender/gpu/shaders/infos/gpu_shader_todo_info.hh
index 3b36c5bd680..dba928c1fad 100644
--- a/source/blender/gpu/shaders/infos/gpu_shader_todo_info.hh
+++ b/source/blender/gpu/shaders/infos/gpu_shader_todo_info.hh
@@ -5,7 +5,7 @@ GPU_SHADER_CREATE_INFO(gpu_shader_2D_point_varying_size_varying_color)
     .fragment_source("gpu_shader_point_varying_color_frag.glsl")
     .do_static_compilation(true);
 
-GPU_SHADER_CREATE_INFO(gpu_shader_2d_point_uniform_size_uniform_color_aa)
+GPU_SHADER_CREATE_INFO(gpu_shader_2D_point_uniform_size_uniform_color_aa)
     .vertex_source("gpu_shader_2D_point_uniform_size_aa_vert.glsl")
     .fragment_source("gpu_shader_point_uniform_color_aa_frag.glsl")
     .do_static_compilation(true);
@@ -17,7 +17,7 @@ GPU_SHADER_CREATE_INFO(gpu_shader_2d_point_uniform_size_uniform_color_aa)
             .frag = datatoc_gpu_shader_point_uniform_color_aa_frag_glsl,
 },
 */
-GPU_SHADER_CREATE_INFO(gpu_shader_2d_point_uniform_size_uniform_color_outline_aa)
+GPU_SHADER_CREATE_INFO(gpu_shader_2D_point_uniform_size_uniform_color_outline_aa)
     .vertex_source("gpu_shader_2D_point_uniform_size_outline_aa_vert.glsl")
     .fragment_source("gpu_shader_point_uniform_color_outline_aa_frag.glsl")
     .do_static_compilation(true);
@@ -29,7 +29,7 @@ GPU_SHADER_CREATE_INFO(gpu_shader_2d_point_uniform_size_uniform_color_outline_aa
             .frag = datatoc_gpu_shader_point_uniform_color_outline_aa_frag_glsl,
 },
 */
-GPU_SHADER_CREATE_INFO(gpu_shader_2d_point_uniform_size_varying_color_outline_aa)
+GPU_SHADER_CREATE_INFO(gpu_shader_2D_point_uniform_size_varying_color_outline_aa)
     .vertex_source("gpu_shader_2D_point_uniform_size_varying_color_outline_aa_vert.glsl")
     .fragment_source("gpu_shader_point_varying_color_outline_aa_frag.glsl")
     .do_static_compilation(true);
@@ -231,83 +231,6 @@ GPU_SHADER_CREATE_INFO(gpu_shader_2D_uv_verts)
             .vert = datatoc_gpu_shader_2D_edituvs_points_vert_glsl,
             .frag = datatoc_gpu_shader_point_varying_color_varying_outline_aa_frag_glsl,
 },
-*/
-GPU_SHADER_CREATE_INFO(gpu_shader_2D_uv_facedots)
-    .vertex_source("gpu_shader_2D_edituvs_facedots_vert.glsl")
-    .fragment_source("gpu_shader_point_varying_color_frag.glsl")
-    .do_static_compilation(true);
-/*
-    [GPU_SHADER_2D_UV_FACEDOTS] =
-        {
-            .name = "GPU_SHADER_2D_UV_FACEDOTS",
-            .vert = datatoc_gpu_shader_2D_edituvs_facedots_vert_glsl,
-            .frag = datatoc_gpu_shader_point_varying_color_frag_glsl,
-},
-*/
-GPU_SHADER_CREATE_INFO(gpu_shader_2D_uv_edges)
-    .vertex_source("gpu_shader_2D_edituvs_edges_vert.glsl")
-    .fragment_source("gpu_shader_2D_edituvs_edges_frag.glsl")
-    .do_static_compilation(true);
-/*
-    [GPU_SHADER_2D_UV_EDGES] =
-        {
-            .name = "GPU_SHADER_2D_UV_EDGES",
-            .vert = datatoc_gpu_shader_2D_edituvs_edges_vert_glsl,
-            .frag = datatoc_gpu_shader_2D_edituvs_edges_frag_glsl,
-},
-*/
-GPU_SHADER_CREATE_INFO(gpu_shader_

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list