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:
authorJeroen Bakker <jeroen@blender.org>2022-01-19 13:32:34 +0300
committerJeroen Bakker <jeroen@blender.org>2022-01-19 13:32:34 +0300
commit952a4fa4561986da467c16a04b1b23530df26b8d (patch)
tree3c72eff4d9f6da0f3266296e919163393aac9263 /source/blender/gpu/GPU_shader_shared.h
parent71386c08f110d402a7b4f5fbd5a7629829d8364f (diff)
Fix T94987: Dragged node links are invisible.
Route cause was data alignment mismatch between GPU and CPU. This mismatch would not allow us to bind the UBO where data wasn't available on the GPU. Fixed by using float4 in stead of float2. This could eventually be packed, but that would lead to less readable code.
Diffstat (limited to 'source/blender/gpu/GPU_shader_shared.h')
-rw-r--r--source/blender/gpu/GPU_shader_shared.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/source/blender/gpu/GPU_shader_shared.h b/source/blender/gpu/GPU_shader_shared.h
index f400e151487..334b974acd8 100644
--- a/source/blender/gpu/GPU_shader_shared.h
+++ b/source/blender/gpu/GPU_shader_shared.h
@@ -34,7 +34,9 @@ using blender::float4x4;
struct NodeLinkData {
float4 colors[3];
- float2 bezierPts[4];
+ /* bezierPts Is actually a float2, but due to std140 each element needs to be aligned to 16
+ * bytes. */
+ float4 bezierPts[4];
bool1 doArrow;
bool1 doMuted;
float dim_factor;