Changeset View
Changeset View
Standalone View
Standalone View
source/blender/draw/modes/shaders/paint_texture_frag.glsl
| in vec2 uv_interp; | in vec2 uv_interp; | ||||
| out vec4 fragColor; | out vec4 fragColor; | ||||
| uniform sampler2D image; | uniform sampler2D image; | ||||
| uniform float alpha = 1.0; | uniform float alpha = 1.0; | ||||
| uniform bool nearestInterp; | uniform bool nearestInterp; | ||||
| void main() | void main() | ||||
| { | { | ||||
| vec2 uv = uv_interp; | vec2 uv = uv_interp; | ||||
| if (nearestInterp) { | if (nearestInterp) { | ||||
| vec2 tex_size = vec2(textureSize(image, 0).xy); | vec2 tex_size = vec2(textureSize(image, 0).xy); | ||||
| uv = (floor(uv_interp * tex_size) + 0.5) / tex_size; | uv = (floor(uv_interp * tex_size) + 0.5) / tex_size; | ||||
| } | } | ||||
| fragColor = vec4(texture(image, uv).rgb, alpha); | vec4 color = texture(image, uv); | ||||
| color.a *= alpha; | |||||
| fragColor = color; | |||||
| } | } | ||||