Differential D16934 Diff 59810 source/blender/draw/engines/overlay/shaders/overlay_outline_detect_frag.glsl
Changeset View
Changeset View
Standalone View
Standalone View
source/blender/draw/engines/overlay/shaders/overlay_outline_detect_frag.glsl
| Show First 20 Lines • Show All 248 Lines • ▼ Show 20 Lines | #endif | ||||
| int edge_case = 0; | int edge_case = 0; | ||||
| edge_case += int(has_edge_pos_x) * XPOS; | edge_case += int(has_edge_pos_x) * XPOS; | ||||
| edge_case += int(has_edge_neg_x) * XNEG; | edge_case += int(has_edge_neg_x) * XNEG; | ||||
| edge_case += int(has_edge_pos_y) * YPOS; | edge_case += int(has_edge_pos_y) * YPOS; | ||||
| edge_case += int(has_edge_neg_y) * YNEG; | edge_case += int(has_edge_neg_y) * YNEG; | ||||
| if (edge_case == ALL || edge_case == NONE) { | if (edge_case == ALL || edge_case == NONE) { | ||||
| /* NOTE(Metal): Discards are not explicit returns in Metal. We should also return to avoid | |||||
| * erroneous derivatives which can manifest during texture sampling in | |||||
| * non-uniform-control-flow. */ | |||||
| discard; | discard; | ||||
| return; | |||||
| } | } | ||||
| if (!doAntiAliasing) { | if (!doAntiAliasing) { | ||||
| lineOutput = vec4(0.0); | lineOutput = vec4(0.0); | ||||
| return; | return; | ||||
| } | } | ||||
| vec2 line_start, line_end; | vec2 line_start, line_end; | ||||
| ▲ Show 20 Lines • Show All 95 Lines • Show Last 20 Lines | |||||