[Bf-blender-cvs] [44c875f59aa] tmp-vulkan: Vulkan: Patched gl_VertexID to gl_VertexIndex.
Jeroen Bakker
noreply at git.blender.org
Fri Jun 25 16:53:34 CEST 2021
Commit: 44c875f59aab63081c56b94cba46c6fe1e49f148
Author: Jeroen Bakker
Date: Fri Jun 25 15:49:08 2021 +0200
Branches: tmp-vulkan
https://developer.blender.org/rB44c875f59aab63081c56b94cba46c6fe1e49f148
Vulkan: Patched gl_VertexID to gl_VertexIndex.
===================================================================
M source/blender/draw/engines/eevee/shaders/effect_dof_scatter_vert.glsl
M source/blender/draw/engines/eevee/shaders/lightprobe_cube_display_vert.glsl
M source/blender/draw/engines/eevee/shaders/lightprobe_grid_display_vert.glsl
M source/blender/draw/engines/eevee/shaders/lightprobe_planar_downsample_vert.glsl
M source/blender/draw/engines/eevee/shaders/volumetric_vert.glsl
M source/blender/draw/engines/gpencil/shaders/gpencil_antialiasing_vert.glsl
M source/blender/draw/engines/gpencil/shaders/gpencil_common_lib.glsl
M source/blender/draw/engines/gpencil/shaders/gpencil_depth_merge_vert.glsl
M source/blender/draw/engines/overlay/shaders/antialiasing_vert.glsl
M source/blender/draw/engines/overlay/shaders/clipbound_vert.glsl
M source/blender/draw/engines/overlay/shaders/edit_curve_wire_vert.glsl
M source/blender/draw/engines/overlay/shaders/edit_gpencil_canvas_vert.glsl
M source/blender/draw/engines/overlay/shaders/edit_mesh_normal_vert.glsl
M source/blender/draw/engines/overlay/shaders/edit_mesh_skin_root_vert.glsl
M source/blender/draw/engines/overlay/shaders/extra_lightprobe_grid_vert.glsl
M source/blender/draw/engines/overlay/shaders/extra_vert.glsl
M source/blender/draw/engines/overlay/shaders/extra_wire_vert.glsl
M source/blender/draw/engines/overlay/shaders/motion_path_line_vert.glsl
M source/blender/draw/engines/overlay/shaders/motion_path_point_vert.glsl
M source/blender/draw/engines/overlay/shaders/volume_gridlines_vert.glsl
M source/blender/draw/engines/overlay/shaders/volume_velocity_vert.glsl
M source/blender/draw/engines/overlay/shaders/wireframe_vert.glsl
M source/blender/draw/engines/workbench/shaders/workbench_effect_smaa_vert.glsl
M source/blender/draw/intern/shaders/common_fullscreen_vert.glsl
M source/blender/draw/intern/shaders/common_hair_lib.glsl
M source/blender/draw/intern/shaders/common_hair_refine_vert.glsl
M source/blender/draw/intern/shaders/common_view_lib.glsl
M source/blender/gpu/opengl/gl_shader.cc
M source/blender/gpu/shaders/gpu_shader_2D_area_borders_vert.glsl
M source/blender/gpu/shaders/gpu_shader_2D_image_multi_rect_vert.glsl
M source/blender/gpu/shaders/gpu_shader_2D_image_rect_vert.glsl
M source/blender/gpu/shaders/gpu_shader_2D_nodelink_vert.glsl
M source/blender/gpu/shaders/gpu_shader_2D_widget_base_vert.glsl
M source/blender/gpu/shaders/gpu_shader_text_vert.glsl
M source/blender/gpu/vulkan/vk_shader.cc
===================================================================
diff --git a/source/blender/draw/engines/eevee/shaders/effect_dof_scatter_vert.glsl b/source/blender/draw/engines/eevee/shaders/effect_dof_scatter_vert.glsl
index 276ab119fab..d5b24de8128 100644
--- a/source/blender/draw/engines/eevee/shaders/effect_dof_scatter_vert.glsl
+++ b/source/blender/draw/engines/eevee/shaders/effect_dof_scatter_vert.glsl
@@ -58,7 +58,7 @@ void main()
{
ivec2 tex_size = textureSize(cocBuffer, 0);
- int t_id = gl_VertexID / 3; /* Triangle Id */
+ int t_id = gl_VertexIndex / 3; /* Triangle Id */
/* Some math to get the target pixel. */
ivec2 texelco = ivec2(t_id % spritePerRow, t_id / spritePerRow) * 2;
@@ -117,7 +117,7 @@ void main()
*/
/* Generate Triangle : less memory fetches from a VBO */
- int v_id = gl_VertexID % 3; /* Vertex Id */
+ int v_id = gl_VertexIndex % 3; /* Vertex Id */
gl_Position.x = float(v_id / 2) * extend - 1.0; /* int divisor round down */
gl_Position.y = float(v_id % 2) * extend - 1.0;
gl_Position.z = 0.0;
diff --git a/source/blender/draw/engines/eevee/shaders/lightprobe_cube_display_vert.glsl b/source/blender/draw/engines/eevee/shaders/lightprobe_cube_display_vert.glsl
index d06ad553ca4..03ee41f158b 100644
--- a/source/blender/draw/engines/eevee/shaders/lightprobe_cube_display_vert.glsl
+++ b/source/blender/draw/engines/eevee/shaders/lightprobe_cube_display_vert.glsl
@@ -30,8 +30,8 @@ const vec2 pos[6] = vec2[6](vec2(-1.0, -1.0),
void main()
{
- pid = 1 + (gl_VertexID / 6); /* +1 for the world */
- int vert_id = gl_VertexID % 6;
+ pid = 1 + (gl_VertexIndex / 6); /* +1 for the world */
+ int vert_id = gl_VertexIndex % 6;
quadCoord = pos[vert_id];
diff --git a/source/blender/draw/engines/eevee/shaders/lightprobe_grid_display_vert.glsl b/source/blender/draw/engines/eevee/shaders/lightprobe_grid_display_vert.glsl
index 6fefe1319bd..fcadf9dbd82 100644
--- a/source/blender/draw/engines/eevee/shaders/lightprobe_grid_display_vert.glsl
+++ b/source/blender/draw/engines/eevee/shaders/lightprobe_grid_display_vert.glsl
@@ -23,8 +23,8 @@ const vec2 pos[6] = vec2[6](vec2(-1.0, -1.0),
void main()
{
- int cell_id = gl_VertexID / 6;
- int vert_id = gl_VertexID % 6;
+ int cell_id = gl_VertexIndex / 6;
+ int vert_id = gl_VertexIndex % 6;
vec3 ls_cell_location;
/* Keep in sync with update_irradiance_probe */
diff --git a/source/blender/draw/engines/eevee/shaders/lightprobe_planar_downsample_vert.glsl b/source/blender/draw/engines/eevee/shaders/lightprobe_planar_downsample_vert.glsl
index 588cd402bb3..4b79ca97e7c 100644
--- a/source/blender/draw/engines/eevee/shaders/lightprobe_planar_downsample_vert.glsl
+++ b/source/blender/draw/engines/eevee/shaders/lightprobe_planar_downsample_vert.glsl
@@ -4,9 +4,9 @@ out vec2 vPos;
void main()
{
- int v = gl_VertexID % 3;
+ int v = gl_VertexIndex % 3;
vPos.x = -1.0 + float((v & 1) << 2);
vPos.y = -1.0 + float((v & 2) << 1);
- instance = gl_VertexID / 3;
+ instance = gl_VertexIndex / 3;
}
diff --git a/source/blender/draw/engines/eevee/shaders/volumetric_vert.glsl b/source/blender/draw/engines/eevee/shaders/volumetric_vert.glsl
index b70747ecec3..0bc735591ca 100644
--- a/source/blender/draw/engines/eevee/shaders/volumetric_vert.glsl
+++ b/source/blender/draw/engines/eevee/shaders/volumetric_vert.glsl
@@ -8,8 +8,8 @@ RESOURCE_ID_VARYING
void main()
{
/* Generate Triangle : less memory fetches from a VBO */
- int v_id = gl_VertexID % 3; /* Vertex Id */
- int t_id = gl_VertexID / 3; /* Triangle Id */
+ int v_id = gl_VertexIndex % 3; /* Vertex Id */
+ int t_id = gl_VertexIndex / 3; /* Triangle Id */
/* Crappy diagram
* ex 1
diff --git a/source/blender/draw/engines/gpencil/shaders/gpencil_antialiasing_vert.glsl b/source/blender/draw/engines/gpencil/shaders/gpencil_antialiasing_vert.glsl
index 07734d19972..31eda3670e9 100644
--- a/source/blender/draw/engines/gpencil/shaders/gpencil_antialiasing_vert.glsl
+++ b/source/blender/draw/engines/gpencil/shaders/gpencil_antialiasing_vert.glsl
@@ -5,7 +5,7 @@ out vec4 offset[3];
void main()
{
- int v = gl_VertexID % 3;
+ int v = gl_VertexIndex % 3;
float x = -1.0 + float((v & 1) << 2);
float y = -1.0 + float((v & 2) << 1);
gl_Position = vec4(x, y, 1.0, 1.0);
diff --git a/source/blender/draw/engines/gpencil/shaders/gpencil_common_lib.glsl b/source/blender/draw/engines/gpencil/shaders/gpencil_common_lib.glsl
index 7412959a30b..67f4ca37beb 100644
--- a/source/blender/draw/engines/gpencil/shaders/gpencil_common_lib.glsl
+++ b/source/blender/draw/engines/gpencil/shaders/gpencil_common_lib.glsl
@@ -245,7 +245,7 @@ in vec4 col1;
in vec4 col2;
in vec4 fcol1;
/* WARNING: Max attribute count is actually 14 because OSX OpenGL implementation
- * considers gl_VertexID and gl_InstanceID as vertex attribute. (see T74536) */
+ * considers gl_VertexIndex and gl_InstanceID as vertex attribute. (see T74536) */
# define stroke_id1 ma1.y
# define point_id1 ma1.z
# define thickness1 pos1.w
@@ -408,8 +408,8 @@ void stroke_vertex()
mat4 model_mat = model_matrix_get();
/* Avoid using a vertex attribute for quad positioning. */
- float x = float(gl_VertexID & 1) * 2.0 - 1.0; /* [-1..1] */
- float y = float(gl_VertexID & 2) - 1.0; /* [-1..1] */
+ float x = float(gl_VertexIndex & 1) * 2.0 - 1.0; /* [-1..1] */
+ float y = float(gl_VertexIndex & 2) - 1.0; /* [-1..1] */
bool use_curr = is_dot || (x == -1.0);
diff --git a/source/blender/draw/engines/gpencil/shaders/gpencil_depth_merge_vert.glsl b/source/blender/draw/engines/gpencil/shaders/gpencil_depth_merge_vert.glsl
index 0c5260a9ec4..34b28f1f5b8 100644
--- a/source/blender/draw/engines/gpencil/shaders/gpencil_depth_merge_vert.glsl
+++ b/source/blender/draw/engines/gpencil/shaders/gpencil_depth_merge_vert.glsl
@@ -4,7 +4,7 @@ uniform vec4 gpModelMatrix[4];
void main()
{
mat4 model_matrix = mat4(gpModelMatrix[0], gpModelMatrix[1], gpModelMatrix[2], gpModelMatrix[3]);
- int v = gl_VertexID % 3;
+ int v = gl_VertexIndex % 3;
float x = -1.0 + float((v & 1) << 2);
float y = -1.0 + float((v & 2) << 1);
gl_Position = ViewProjectionMatrix * (model_matrix * vec4(x, y, 0.0, 1.0));
diff --git a/source/blender/draw/engines/overlay/shaders/antialiasing_vert.glsl b/source/blender/draw/engines/overlay/shaders/antialiasing_vert.glsl
index 8cf8ba121ed..3118e488efc 100644
--- a/source/blender/draw/engines/overlay/shaders/antialiasing_vert.glsl
+++ b/source/blender/draw/engines/overlay/shaders/antialiasing_vert.glsl
@@ -3,7 +3,7 @@ out vec2 uvs;
void main()
{
- int v = gl_VertexID % 3;
+ int v = gl_VertexIndex % 3;
float x = float((v & 1) << 2);
float y = float((v & 2) << 1);
gl_Position = vec4(x - 1.0, y - 1.0, 1.0, 1.0);
diff --git a/source/blender/draw/engines/overlay/shaders/clipbound_vert.glsl b/source/blender/draw/engines/overlay/shaders/clipbound_vert.glsl
index 1bfa5dadc32..532b7abc433 100644
--- a/source/blender/draw/engines/overlay/shaders/clipbound_vert.glsl
+++ b/source/blender/draw/engines/overlay/shaders/clipbound_vert.glsl
@@ -3,7 +3,7 @@ uniform vec3 boundbox[8];
void main()
{
- vec3 world_pos = boundbox[gl_VertexID];
+ vec3 world_pos = boundbox[gl_VertexIndex];
gl_Position = point_world_to_ndc(world_pos);
/* Result in a position at 1.0 (far plane). Small epsilon to avoid precision issue.
diff --git a/source/blender/draw/engines/overlay/shaders/edit_curve_wire_vert.glsl b/source/blender/draw/engines/overlay/shaders/edit_curve_wire_vert.glsl
index 5dd8e579db3..190516efb78 100644
--- a/source/blender/draw/engines/overlay/shaders/edit_curve_wire_vert.glsl
+++ b/source/blender/draw/engines/overlay/shaders/edit_curve_wire_vert.glsl
@@ -16,7 +16,7 @@ void main()
float flip = (gl_InstanceID != 0) ? -1.0 : 1.0;
- if (gl_VertexID % 2 == 0) {
+ if (gl_VertexIndex % 2 == 0) {
final_pos += normalSize * rad * (flip * nor - tan);
}
diff --git a/source/blender/draw/engines/overlay/shaders/edit_gpencil_canvas_vert.glsl b/source/blender/draw/engines/overlay/shaders/edit_gpencil_canvas_vert.glsl
index 5aa7fe78e4e..070de772723 100644
--- a/source/blender/draw/engines/overlay/shaders/edit_gpencil_canvas_vert.glsl
+++ b/source/blender/draw/engines/overlay/shaders/edit_gpencil_canvas_vert.glsl
@@ -14,8 +14,8 @@ void main()
GPU_INTEL_VERTEX_SHADER_WORKAROUND
vec2 pos;
- pos.x = float(gl_VertexID % 2);
- pos.y = float(gl_VertexID / 2) / float(halfLineCount - 1);
+ pos.x = float(gl_VertexIndex % 2);
+ pos.y = float(gl_VertexIndex / 2) / float(halfLineCount - 1);
if (pos.y > 1.0) {
pos.xy = pos.yx;
diff --git a/source/blender/draw/engines/overlay/shaders/edit_mesh_normal_vert.glsl b/source/blender/draw/engines/overlay/shaders/edit_mesh_normal_vert.glsl
index 007495f84e0..8e70bc9716d 100644
--- a/source/blender/draw/engines/overlay/shaders/edit_mesh_normal_vert.glsl
+++ b/source/blender/draw/engines/overlay/shaders/edit_mesh_normal_vert.glsl
@@ -52,7 +52,7 @@ void main()
vec3 world_pos = point_object_to_world(pos);
- if (gl_VertexID == 0) {
+ if (gl_VertexIndex == 0) {
world_pos += n * normalSize;
}
diff --git a/source/blender/draw/engines/overlay/shaders/edit_mesh_skin_root_vert.glsl b/source/blender/draw/engines/overlay/shaders/edit_mesh_skin_root_vert.glsl
index 944eb41058e..95c90b16551 100644
--- a/source/blender/draw/engines/overlay/shaders/edit_mesh_skin_root_vert.glsl
+++ b/source/blender/draw/engines/overlay/shaders/edit_mesh_skin_root_vert.glsl
@@ -17,7 +17,7 @@ void main()
vec4 pos_4d = ModelMatrix * vec4(local_pos + screen_pos, 1.0);
gl_Position = ViewProjectionMatrix * pos_4d;
/* Manual stipple: one segment out of 2 is transparent. */
- finalColor = ((gl_VertexID & 1) == 0) ? colorSkinRoot : vec4(0.0);
+ finalColor = ((gl_VertexIndex & 1) == 0) ? colorSkinRoot : vec4(0.0);
#ifdef USE_WORLD_CLIP_PLANES
world_clip_planes_calc_clip_distance(pos_4d.xyz);
diff --git a/source/blender/draw/engines/overlay/shaders/extra_lightprobe_grid_vert.glsl b/source/blender/draw/engines/overlay/shaders/extra_lightprobe_grid_vert.glsl
index 3746cbcf90b..3f537eb3db3 100644
--- a/source/blender/draw/engines/overlay/shaders/extra_lightprobe_grid_vert.glsl
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list