Skip to content

Commit c1d2c0e

Browse files
SQwatermarkgreggman
authored andcommitted
zh-cn: fix translation of fragment: 片断->片段
1 parent f0fa9c7 commit c1d2c0e

20 files changed

+115
-115
lines changed

webgl/lessons/zh_cn/webgl-2d-drawimage.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ WebGL需要上传`x, y`, `x + width, y`, `x, y + height`, 和
5151
v_texcoord = a_texcoord;
5252
}
5353

54-
和一个简单的片断着色器
54+
和一个简单的片段着色器
5555

5656
precision mediump float;
5757

webgl/lessons/zh_cn/webgl-3d-lighting-directional.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -242,7 +242,7 @@ function setNormals(gl) {
242242

243243
现在让着色器使用它
244244

245-
首先在顶点着色器中只将法向量传递给片断着色器
245+
首先在顶点着色器中只将法向量传递给片段着色器
246246

247247
attribute vec4 a_position;
248248
-attribute vec4 a_color;
@@ -257,14 +257,14 @@ function setNormals(gl) {
257257
// 将位置和矩阵相乘
258258
gl_Position = u_matrix * a_position;
259259

260-
- // 将颜色传到片断着色器
260+
- // 将颜色传到片段着色器
261261
- v_color = a_color;
262262

263-
+ // 将法向量传到片断着色器
263+
+ // 将法向量传到片段着色器
264264
+ v_normal = a_normal;
265265
}
266266

267-
然后在片断着色器中将法向量和光照方向点乘
267+
然后在片段着色器中将法向量和光照方向点乘
268268

269269
```
270270
precision mediump float;
@@ -344,7 +344,7 @@ void main() {
344344
// 将位置和矩阵相乘
345345
* gl_Position = u_worldViewProjection * a_position;
346346
347-
* // 重定向法向量并传递给片断着色器
347+
* // 重定向法向量并传递给片段着色器
348348
* v_normal = mat3(u_world) * a_normal;
349349
}
350350
```
@@ -413,7 +413,7 @@ void main() {
413413
// 将位置和矩阵相乘
414414
gl_Position = u_worldViewProjection * a_position;
415415
416-
// 重定向法向量并传递给片断着色器
416+
// 重定向法向量并传递给片段着色器
417417
* v_normal = mat3(u_worldInverseTranspose) * a_normal;
418418
}
419419
```

webgl/lessons/zh_cn/webgl-3d-lighting-point.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -55,21 +55,21 @@ TOC: WebGL 三维点光源
5555
// 将位置和矩阵相乘
5656
gl_Position = u_worldViewProjection * a_position;
5757

58-
// 重定向法向量并传递给片断着色器
58+
// 重定向法向量并传递给片段着色器
5959
v_normal = mat3(u_worldInverseTranspose) * a_normal;
6060

6161
+ // 计算表面的世界坐标
6262
+ vec3 surfaceWorldPosition = (u_world * a_position).xyz;
6363
+
6464
+ // 计算表面到光源的方向
65-
+ // 传递给片断着色器
65+
+ // 传递给片段着色器
6666
+ v_surfaceToLight = u_lightWorldPosition - surfaceWorldPosition;
6767
}
6868

69-
在片断着色器中需要将表面到光源的方向进行单位化
69+
在片段着色器中需要将表面到光源的方向进行单位化
7070
注意,虽然我们可以在顶点着色器中传递单位向量,
71-
但是 `varying` 会进行插值再传给片断着色器
72-
所以片断着色器中的向量基本上不是单位向量了
71+
但是 `varying` 会进行插值再传给片段着色器
72+
所以片段着色器中的向量基本上不是单位向量了
7373

7474
precision mediump float;
7575

@@ -153,7 +153,7 @@ TOC: WebGL 三维点光源
153153
{{{diagram url="resources/specular-lighting.html" width="500" height="400" className="noborder" }}}
154154

155155
所以首先我们需要传入相机位置,计算表面到相机的方向矢量,
156-
然后传递到片断着色器
156+
然后传递到片段着色器
157157

158158
attribute vec4 a_position;
159159
attribute vec3 a_normal;
@@ -174,22 +174,22 @@ TOC: WebGL 三维点光源
174174
// 将位置和矩阵相乘
175175
gl_Position = u_worldViewProjection * a_position;
176176

177-
// 重定向法向量并传递到片断着色器
177+
// 重定向法向量并传递到片段着色器
178178
v_normal = mat3(u_worldInverseTranspose) * a_normal;
179179

180180
// 计算表面的世界坐标
181181
vec3 surfaceWorldPosition = (u_world * a_position).xyz;
182182

183183
// 计算表面到光源的方向
184-
// 然后传递到片断着色器
184+
// 然后传递到片段着色器
185185
v_surfaceToLight = u_lightWorldPosition - surfaceWorldPosition;
186186

187187
+ // 计算表面到相机的方向
188-
+ // 然后传递到片断着色器
188+
+ // 然后传递到片段着色器
189189
+ v_surfaceToView = u_viewWorldPosition - surfaceWorldPosition;
190190
}
191191

192-
然后在片断着色器中计算表面到光源和相机之间的 `halfVector`
192+
然后在片段着色器中计算表面到光源和相机之间的 `halfVector`
193193
将它和法向量相乘,查看光线是否直接反射到眼前。
194194

195195
// 从顶点着色器中传入的值

webgl/lessons/zh_cn/webgl-3d-lighting-spot.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ TOC: WebGL 三维聚光灯
4848

4949
让我们来实现它。
5050

51-
首先修改[上文](webgl-3d-lighting-point.html)的片断着色器
51+
首先修改[上文](webgl-3d-lighting-point.html)的片段着色器
5252

5353
```
5454
precision mediump float;

webgl/lessons/zh_cn/webgl-3d-orthographic.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -323,7 +323,7 @@ var m4 = {
323323

324324
拖动滑块很难看出它是三维的,让我们给矩形上不同的颜色。
325325
需要在顶点着色器中添加一个属性和一个可变量,
326-
将颜色值传到片断着色器中
326+
将颜色值传到片段着色器中
327327

328328
这是新的顶点着色器
329329

@@ -340,13 +340,13 @@ void main() {
340340
// 将位置和矩阵相乘.
341341
gl_Position = u_matrix * a_position;
342342
343-
+ // 将颜色传递给片断着色器
343+
+ // 将颜色传递给片段着色器
344344
+ v_color = a_color;
345345
}
346346
</script>
347347
```
348348

349-
然后在片断着色器中使用颜色
349+
然后在片段着色器中使用颜色
350350

351351
```
352352
<script id="fragment-shader-3d" type="x-shader/x-fragment">
@@ -494,7 +494,7 @@ WebGL可以只绘制正面或反面三角形,可以这样开启
494494
Z 也在裁剪空间或者 (-1 到 +1) 。这个值会被转换到深度空间( 0 到 +1),
495495
WebGL绘制一个着色像素之前会检查对应的深度像素,
496496
如果对应的深度像素中的深度值小于当前像素的深度值,WebGL就不会绘制新的颜色。
497-
反之它会绘制片断着色器提供的新颜色并更新深度像素中的深度值
497+
反之它会绘制片段着色器提供的新颜色并更新深度像素中的深度值
498498
这也意味着在其他像素后面的像素不会被绘制。
499499

500500
我们可以像这样开启这个特性

webgl/lessons/zh_cn/webgl-3d-perspective-correct-texturemapping.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ TOC: WebGL 纹理映射的透视纠正
99

1010
在"[工作原理](webgl-how-it-works.html)"中我们讲过了可变量的工作原理,
1111
顶点着色器可以声明可变量并给它赋值,一旦顶点着色器被引用 3 次就会画一个三角形。
12-
绘制这个三角形的每个像素都会调用片断着色器获得像素颜色
12+
绘制这个三角形的每个像素都会调用片段着色器获得像素颜色
1313
在三个顶点之间的点会得到差之后的可变量。
1414

1515
{{{diagram url="resources/fragment-shader-anim.html" width="600" height="400" caption="v_color is interpolated between v0, v1 and v2" }}}
@@ -27,14 +27,14 @@ TOC: WebGL 纹理映射的透视纠正
2727
gl_Position = a_position;
2828
}
2929

30-
还有一个简单的片断着色器提供固定的颜色
30+
还有一个简单的片段着色器提供固定的颜色
3131

32-
// 片断着色器没有默认的精度
32+
// 片段着色器没有默认的精度
3333
// 中等精度是个不错的默认值
3434
precision mediump float;
3535

3636
void main() {
37-
// gl_FragColor 是片断着色器需要设置的一个特殊变量
37+
// gl_FragColor 是片段着色器需要设置的一个特殊变量
3838
gl_FragColor = vec4(1, 0, 0.5, 1); // 返回红紫色
3939
}
4040

@@ -60,7 +60,7 @@ TOC: WebGL 纹理映射的透视纠正
6060

6161
{{{example url="../webgl-clipspace-rectangles.html" }}}
6262

63-
再添加一个浮点型可变量,并把它从顶点着色器直接传递到片断着色器
63+
再添加一个浮点型可变量,并把它从顶点着色器直接传递到片段着色器
6464

6565
attribute vec4 a_position;
6666
+ attribute float a_brightness;
@@ -70,11 +70,11 @@ TOC: WebGL 纹理映射的透视纠正
7070
void main() {
7171
gl_Position = a_position;
7272

73-
+ // 直接传递亮度到片断着色器
73+
+ // 直接传递亮度到片段着色器
7474
+ v_brightness = a_brightness;
7575
}
7676

77-
在片断着色器中使用可变量设置颜色
77+
在片段着色器中使用可变量设置颜色
7878

7979
precision mediump float;
8080

@@ -183,7 +183,7 @@ TOC: WebGL 纹理映射的透视纠正
183183

184184
事实是WebGL使用 `W` 实现纹理映射或者可变量插值的透视投影。
185185

186-
如果将片断着色器改成这样就更容以看出效果
186+
如果将片段着色器改成这样就更容以看出效果
187187

188188
gl_FragColor = vec4(fract(v_brightness * 10.), 0, 0, 1); // 红色
189189

@@ -231,7 +231,7 @@ void main() {
231231
+ // 手工除以 W
232232
+ gl_Position /= gl_Position.w;
233233
234-
// 将纹理坐标传到片断着色器
234+
// 将纹理坐标传到片段着色器
235235
v_texcoord = a_texcoord;
236236
}
237237
```

webgl/lessons/zh_cn/webgl-3d-perspective.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@ void main() {
122122
// 将 x y z 除以 zToDivideBy
123123
* gl_Position = vec4(position.xyz, zToDivideBy);
124124
125-
// 传递颜色到给片断着色器
125+
// 传递颜色到给片段着色器
126126
v_color = a_color;
127127
}
128128
</script>

webgl/lessons/zh_cn/webgl-3d-textures.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ TOC: WebGL 三维纹理
1010
中得到启发,如果我们讲的再深入一点可能更好理解。
1111

1212
首先需要调整着色器以便使用纹理,这里是顶点着色器的修改部分,
13-
我们需要传递纹理坐标,在这个例子中直接将它们传到片断着色器中
13+
我们需要传递纹理坐标,在这个例子中直接将它们传到片段着色器中
1414

1515
attribute vec4 a_position;
1616
*attribute vec2 a_texcoord;
@@ -23,11 +23,11 @@ TOC: WebGL 三维纹理
2323
// 将位置和矩阵相乘
2424
gl_Position = u_matrix * a_position;
2525

26-
* // 传递纹理坐标到片断着色器
26+
* // 传递纹理坐标到片段着色器
2727
* v_texcoord = a_texcoord;
2828
}
2929

30-
在片断着色器中声明一个 sampler2D 类型的全局变量,可以让我们引用一个纹理,
30+
在片段着色器中声明一个 sampler2D 类型的全局变量,可以让我们引用一个纹理,
3131
然后使用从顶点着色器传入的纹理坐标调用 `texture2D` 方法,
3232
在纹理上找到对应的颜色。
3333

webgl/lessons/zh_cn/webgl-boilerplate.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ TOC: WebGL 样板
77
学习WebGL似乎有些难度,因为大多数教程都想一次教完所有东西,
88
而我会尽量避免这样,在需要合适的时候讲一些小的知识点。
99

10-
WebGL复杂的原因之一是需要两个方法,一个顶点着色器和一个片断着色器
10+
WebGL复杂的原因之一是需要两个方法,一个顶点着色器和一个片段着色器
1111
这两个方法通常是在你的GPU上运行,也是高速运行的保障。
1212
所以它们是一种自定义语言,目的是能够在GPU上良好运行。
1313
这两个方法需要编译并链接在一起,而这个过程在 99% 的WbgGL应用中是一样的。
@@ -50,7 +50,7 @@ WebGL复杂的原因之一是需要两个方法,一个顶点着色器和一个
5050
*
5151
* @param {!WebGLRenderingContext) gl WebGL上下文。
5252
* @param {!WebGLShader} vertexShader 一个顶点着色器。
53-
* @param {!WebGLShader} fragmentShader 一个片断着色器
53+
* @param {!WebGLShader} fragmentShader 一个片段着色器
5454
* @return {!WebGLProgram} 程序
5555
*/
5656
function createProgram(gl, vertexShader, fragmentShader) {
@@ -125,7 +125,7 @@ WebGL复杂的原因之一是需要两个方法,一个顶点着色器和一个
125125
*
126126
* @param {!WebGLRenderingContext} gl WebGL上下文。
127127
* @param {string} vertexShaderId 顶点着色器的标签id。
128-
* @param {string} fragmentShaderId 片断着色器的标签id
128+
* @param {string} fragmentShaderId 片段着色器的标签id
129129
* @return {!WebGLProgram} 程序。
130130
*/
131131
function createProgramFromScripts(

webgl/lessons/zh_cn/webgl-environment-maps.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ gl.texParameteri(gl.TEXTURE_CUBE_MAP, gl.TEXTURE_MIN_FILTER, gl.LINEAR_MIPMAP_LI
148148

149149
既然我们了解了反射是如何工作的,我们可以使用它从立方体纹理中选取颜色值,我们改变着色器来实现它.
150150

151-
首先在顶点着色器中我们会计算世界坐标系中的顶点位置和顶点法线,然后用varing传递它们给片断着色器。这和[三维聚光灯](webgl-3d-lighting-spot.html)文章中我们所做的相似。
151+
首先在顶点着色器中我们会计算世界坐标系中的顶点位置和顶点法线,然后用varing传递它们给片段着色器。这和[三维聚光灯](webgl-3d-lighting-spot.html)文章中我们所做的相似。
152152

153153
```glsl
154154
attribute vec4 a_position;
@@ -165,15 +165,15 @@ void main() {
165165
// 将位置与矩阵相乘。
166166
gl_Position = u_projection * u_view * u_world * a_position;
167167
168-
// 传递世界位置给片断着色器
168+
// 传递世界位置给片段着色器
169169
v_worldPosition = (u_world * a_position).xyz;
170170
171-
// 转换法线并传递给片断着色器
171+
// 转换法线并传递给片段着色器
172172
v_worldNormal = mat3(u_world) * a_normal;
173173
}
174174
```
175175

176-
接下来在片断着色器中我们单位化worldNormal,因为顶点之间的法线会被插值。我们传递了世界坐标系中的相机位置接着用世界坐标系中的表面位置减去它我们得到了eyeToSurfaceDir。
176+
接下来在片段着色器中我们单位化worldNormal,因为顶点之间的法线会被插值。我们传递了世界坐标系中的相机位置接着用世界坐标系中的表面位置减去它我们得到了eyeToSurfaceDir。
177177

178178
最终我们用GLSL的内置函数`reflect`,它实现了我们之前介绍的公式。我们使用这个结果从立方体纹理中获得一个颜色值。
179179

0 commit comments

Comments
 (0)