ShaderJoy —— 实现“抗锯齿的黑白格”并原理解析【GLSL】
【摘要】
效果图:
完整 代码与分析 如下:
#extension GL_OES_standard_derivatives:enable //precision highp float; uniform int u_frequency; // ❤ 小格子的个数 = (2*freq)^2, 大格子的个数 = freq...
效果图:
完整 代码与分析 如下:
-
#extension GL_OES_standard_derivatives:enable
-
-
//precision highp float;
-
-
uniform int u_frequency; // ❤ 小格子的个数 = (2*freq)^2, 大格子的个数 = freq^2
-
uniform vec4 u_color0; // 白色
-
uniform vec4 u_color1; // 黑色
-
-
varying vec2 v_st;
-
-
void
-
main()
-
{
-
vec4 color;
-
vec2 st_width;
-
vec2 fuzz;
-
vec2 pmod;
-
float fuzz_max;
-
-
st_width = fwidth(v_st);
-
fuzz = st_width * float(u_frequency) * 2.0;
-
fuzz_max = max(fuzz.s, fuzz.t);
-
pmod = fract(v_st * float(u_frequency)); // ❤ 创建大网格,每个格子的 pmod 都 ∈ [0, 1)
文章来源: panda1234lee.blog.csdn.net,作者:panda1234lee,版权归原作者所有,如需转载,请联系作者。
原文链接:panda1234lee.blog.csdn.net/article/details/52142843
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)