字节流动
技术人,8 年大厂经验,熟悉 OpenGL、FFmpeg、Vulkan、Camera 开发,日常技术干货、个人总结、职场经验分享。
展开
-
Shader GLSL 3D旋转函数
【代码】Shader GLSL 3D旋转函数。原创 2024-05-24 16:45:43 · 133 阅读 · 0 评论 -
Shader 编程:发光效果
其实你注意观察光源的边界就可以发现:光的亮度在光源的边界出现了急剧的变化,光亮度在边界区域快速变弱,但是亮度并没有直接减少到 0。可明显看到光源边界位置的亮度急剧变弱,但是亮度没有减少到 0 , 从而在物理上给人一种越过边界的感觉,这就是发光的效果。从函数的曲线可以看出来,函数值在某个位置附近急剧减小,超出边界之后又缓慢地减小到 0 ,基本上符合我们的判断。我们把里面的发光效果的函数拿出来仿真一下:pow(0.06/abs(x), 2.8)一个面试题引发的思考:OpenGL 发光效果的本质是什么?原创 2023-09-24 16:19:08 · 20144 阅读 · 0 评论 -
Shader 编程:绘制心形
该原创文章首发于微信公众号:字节流动未经作者(微信ID:Byte-Flow)允许,禁止转载今天讲一下绘制心形的两种方式,主要是为了扩展一下绘制复杂形状的思路,为后面讲特效做一些简单的铺垫。心形绘制可以参考 ShaderToy 上的代码:上述代码绘制心形,首先将原点从左下角移至屏幕坐标系中央,这样所有片元的向量均以屏幕中心为起点,则向量 uv 就是画布中心与像素点坐标之间的方向向量。然后利用反正切函数值和当前片元(像素)与屏幕中心点的距离相比较,来确定心形状的边界。原创 2023-08-27 23:31:09 · 22678 阅读 · 0 评论 -
Shader 编程:三角形、矩形等多边形绘制
该原创文章首发于微信公众号:字节流动未经作者(微信ID:Byte-Flow)允许,禁止转载。原创 2023-08-13 21:46:05 · 22743 阅读 · 0 评论 -
Shader 编程:圆和曲线
该原创文章首发于微信公众号:字节流动未经作者(微信ID:Byte-Flow)允许,禁止转载前面发了一些关于 Shader 编程的文章,有读者反馈太碎片化了,希望这里能整理出来一个系列,方便系统的学习一下 Shader 编程。由于主流的 Shader 编程网站,如 ShaderToy, gl-transitions 都是基于 GLSL 开发 Shader ,加上 MSL 和 GLSL 语法上差别不大,后面系列文章将以 GLSL 为主来介绍 Shader 编程。原创 2023-08-06 17:55:16 · 22766 阅读 · 1 评论 -
Shader 编程:GLSL 重要的内置函数
前面发了一些关于 Shader 编程的文章,有读者反馈太碎片化了,希望这里能整理出来一个系列,方便系统的学习一下 Shader 编程。由于主流的 Shader 编程网站,如 ShaderToy, gl-transitions 都是基于 GLSL 开发 Shader ,加上 MSL 和 GLSL 语法上差别不大,后面系列文章将以 GLSL 为主来介绍 Shader 编程。后面 Shader 编程将使用 VSCode + ShaderToy 插件作为编程环境,步骤如下:下载安装 VSCode;原创 2023-08-06 17:32:17 · 22922 阅读 · 0 评论 -
Shader 编程:解决图片拉伸变形问题
前面发了一些关于 Shader 编程的文章,有读者反馈太碎片化了,希望这里能整理出来一个系列,方便系统的学习一下 Shader 编程。由于主流的 Shader 编程网站,如 ShaderToy, gl-transitions 都是基于 GLSL 开发 Shader ,加上 MSL 和 GLSL 语法上差别不大,后面系列文章将以 GLSL 为主来介绍 Shader 编程。原创 2023-07-27 23:03:55 · 325 阅读 · 0 评论 -
Shader 编程:ShaderToy 内置全局变量
OpenGL & Metal Shader 编程:ShaderToy 内置全局变量前面发了一些关于 Shader 编程的文章,有读者反馈太碎片化了,希望这里能整理出来一个系列,方便系统的学习一下 Shader 编程。由于主流的 Shader 编程网站,如 ShaderToy, gl-transitions 都是基于 GLSL 开发 Shader ,加上 MSL 和 GLSL 语法上差别不大,后面系列文章将以 GLSL 为主来介绍 Shader 编程。原创 2023-07-27 22:55:52 · 271 阅读 · 0 评论