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:
authorClément Foucault <foucault.clem@gmail.com>2019-03-27 17:18:33 +0300
committerClément Foucault <foucault.clem@gmail.com>2019-03-27 21:15:32 +0300
commit6d1921dd81664c74318b62ae1b2d5e609abce1b4 (patch)
tree21df4315fcd2807b4801b979abe82b698307c94e /source/blender/draw
parent021333ae3afc4ce03dd5a657f0ee2966fe9867b5 (diff)
Fix T62862 Eevee: Glitchy reflections in ortographic view
This was caused by sign(cubevec.xy) returning 0.0 when one component was 0. Thus making the resulting component component 0.0 instead of 0.0.
Diffstat (limited to 'source/blender/draw')
-rw-r--r--source/blender/draw/engines/eevee/shaders/octahedron_lib.glsl7
1 files changed, 4 insertions, 3 deletions
diff --git a/source/blender/draw/engines/eevee/shaders/octahedron_lib.glsl b/source/blender/draw/engines/eevee/shaders/octahedron_lib.glsl
index ec13c885bbb..dfd8fa8a56c 100644
--- a/source/blender/draw/engines/eevee/shaders/octahedron_lib.glsl
+++ b/source/blender/draw/engines/eevee/shaders/octahedron_lib.glsl
@@ -2,11 +2,12 @@
vec2 mapping_octahedron(vec3 cubevec, vec2 texel_size)
{
/* projection onto octahedron */
- cubevec /= dot( vec3(1), abs(cubevec) );
+ cubevec /= dot(vec3(1.0), abs(cubevec));
/* out-folding of the downward faces */
- if ( cubevec.z < 0.0 ) {
- cubevec.xy = (1.0 - abs(cubevec.yx)) * sign(cubevec.xy);
+ if (cubevec.z < 0.0) {
+ vec2 cubevec_sign = step(0.0, cubevec.xy) * 2.0 - 1.0;
+ cubevec.xy = (1.0 - abs(cubevec.yx)) * cubevec_sign;
}
/* mapping to [0;1]ˆ2 texture space */