From 510901518944874d22ae38ae1a22be5c93fa7596 Mon Sep 17 00:00:00 2001 From: ShinghoiXu <41323710+ShinghoiXu@users.noreply.github.com> Date: Tue, 4 Jan 2022 12:40:34 +0800 Subject: [PATCH] Small improvement --- 15/README-ch.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/15/README-ch.md b/15/README-ch.md index 9e3cf61..cb6936c 100644 --- a/15/README-ch.md +++ b/15/README-ch.md @@ -22,8 +22,8 @@ vec4 texture2D(sampler2D texture, vec2 coordinates) 现在既然你已经了解了如何正确的加载纹理,是时候来试验性地探索我们究竟能用这一技巧做些什么了。快试试下面这些: -* 把原前的纹理缩小到原先的一半。 -* 把原前的纹理旋转90度。 +* 把纹理缩小到原先的一半。 +* 把原先的纹理旋转90度。 * 将鼠标位置赋值给纹理坐标来移动纹理。 为什么你要为纹理痴狂呢?首先请忘了通道那可悲的255值吧;一旦你的图像被转换成了一个```uniform sampler2D```,所有的值都会在0.0和1.0的区间范围内(小数精度取决于你把```precision```设置成了多少)。这就是着色器能创造出美轮美奂的后处理效果的原因。 @@ -42,7 +42,7 @@ vec4 texture2D(sampler2D texture, vec2 coordinates) ![Joseph Nicéphore Niépce (1826)](nicephore.jpg) -我们该如何解决这个问题呢?我们需要知道这一图像的原始比例,好在放大或缩小纹理的时候正确地保持它原始的[*宽高比*](http://en.wikipedia.org/wiki/Aspect_ratio)。为此,纹理的宽和高是以```uniform```的形式传递进着色器的——在我们的示例框架里是以纹理名后跟```Resolution```的```uniform vec2```传递进来的。一旦着色器里有了这些信息,我们就可以将纹理分辨率的```宽度```除以```高度```来获得纹理的宽高比。最后,把这个比例和```y```坐标相乘,我们就可以实现伸缩这根轴来让纹理匹配其原始比例。 +我们该如何解决这个问题呢?我们需要知道这一图像的原始比例,才好在放大或缩小纹理的时候正确地保持它原始的[*宽高比*](http://en.wikipedia.org/wiki/Aspect_ratio)。为此,纹理的宽和高是以```uniform```的形式传递进着色器的——在我们的示例框架里是以纹理名后跟```Resolution```的```uniform vec2```传递进来的。一旦着色器里有了这些信息,我们就可以将纹理分辨率的```宽度```除以```高度```来获得纹理的宽高比。最后,把这个比例和```y```坐标相乘,我们就可以实现伸缩这根轴来让纹理匹配其原始比例。 取消 21 行的注释来实操一下吧。