1
0
mirror of https://github.com/LearnOpenGL-CN/LearnOpenGL-CN.git synced 2025-08-23 04:35:28 +08:00

Merge pull request #2 from LearnOpenGL-CN/new-theme

update with master branch
This commit is contained in:
Aillieo
2017-05-20 11:50:59 +08:00
committed by GitHub
5 changed files with 6 additions and 6 deletions

View File

@@ -170,7 +170,7 @@ glUniform4f(vertexColorLocation, 0.0f, greenValue, 0.0f, 1.0f);
首先我们通过<fun>glfwGetTime()</fun>获取运行的秒数。然后我们使用<fun>sin</fun>函数让颜色在0.0到1.0之间改变,最后将结果储存到<var>greenValue</var>里。
接着,我们用<fun>glGetUniformLocation</fun>查询uniform `ourColor`的位置值。我们为查询函数提供着色器程序和uniform的名字这是我们希望获得的位置值的来源。如果<fun>glGetUniformLocation</fun>返回`-1`就代表没有找到这个位置值。最后,我们可以通过<fun>glUniform4f</fun>函数设置uniform值。注意查询uniform地址不要求你之前使用过着色器程序但是更新一个unform之前你**必须**先使用程序(调用<fun>glUseProgram</fun>)因为它是在当前激活的着色器程序中设置unform的。
接着,我们用<fun>glGetUniformLocation</fun>查询uniform `ourColor`的位置值。我们为查询函数提供着色器程序和uniform的名字这是我们希望获得的位置值的来源。如果<fun>glGetUniformLocation</fun>返回`-1`就代表没有找到这个位置值。最后,我们可以通过<fun>glUniform4f</fun>函数设置uniform值。注意查询uniform地址不要求你之前使用过着色器程序但是更新一个uniform之前你**必须**先使用程序(调用<fun>glUseProgram</fun>)因为它是在当前激活的着色器程序中设置uniform的。
!!! Important
@@ -444,4 +444,4 @@ while(...)
1. 修改顶点着色器让三角形上下颠倒:[参考解答](http://learnopengl.com/code_viewer.php?code=getting-started/shaders-exercise1)
2. 使用uniform定义一个水平偏移量在顶点着色器中使用这个偏移量把三角形移动到屏幕右侧[参考解答](http://learnopengl.com/code_viewer.php?code=getting-started/shaders-exercise2)
3. 使用`out`关键字把顶点位置输出到片段着色器,并将片段的颜色设置为与顶点位置相等(来看看连顶点位置值都在三角形中被插值的结果)。做完这些后,尝试回答下面的问题:为什么在三角形的左下角是黑的?[参考解答](http://learnopengl.com/code_viewer.php?code=getting-started/shaders-exercise3)
3. 使用`out`关键字把顶点位置输出到片段着色器,并将片段的颜色设置为与顶点位置相等(来看看连顶点位置值都在三角形中被插值的结果)。做完这些后,尝试回答下面的问题:为什么在三角形的左下角是黑的?[参考解答](http://learnopengl.com/code_viewer.php?code=getting-started/shaders-exercise3)

View File

@@ -26,7 +26,7 @@ Phong光照很棒而且性能较高但是它的镜面反射在某些条件
![](../img/05/01/advanced_lighting_halfway_vector.png)
当视线方向恰好与反射向量对时,半程向量就与法线向量重合。这样观察者距离原来的反射方向越近,镜面反射的高光就会越强。
当视线方向恰好与(想象中的)反射向量对时,半程向量就与法线向量重合。这样观察者的视线越接近原本的反射方向,镜面反射的高光就会越强。
这里你可以看到无论观察者往哪里看半程向量和表面法线之间的夹角永远都不会超过90度当然除了光源远远低于表面的情况。这样会产生和Phong反射稍稍不同的结果但这时看起来会更加可信特别是发光值参数比较低的时候。Blinn-Phong着色模型也正是早期OpenGL固定函数输送管道fixed function pipeline所使用的着色模型。

View File

@@ -127,7 +127,7 @@ $$
\begin{bmatrix} \Delta U_1 & \Delta V_1 \\ \Delta U_2 & \Delta V_2 \end{bmatrix}^{-1} \begin{bmatrix} E_{1x} & E_{1y} & E_{1z} \\ E_{2x} & E_{2y} & E_{2z} \end{bmatrix} = \begin{bmatrix} T_x & T_y & T_z \\ B_x & B_y & B_z \end{bmatrix}
$$
这样我们就可以解出\(T\)和\(B\)了。这需要我们计算出delta纹理坐标矩阵的拟阵。我不打算讲解计算逆矩阵的细节但大致是把它变化为1除以矩阵的行列式再乘以它的共轭矩阵
这样我们就可以解出\(T\)和\(B\)了。这需要我们计算出delta纹理坐标矩阵的拟阵。我不打算讲解计算逆矩阵的细节但大致是把它变化为1除以矩阵的行列式再乘以它的伴随矩阵(Adjugate Matrix)
$$
\begin{bmatrix} T_x & T_y & T_z \\ B_x & B_y & B_z \end{bmatrix} = \frac{1}{\Delta U_1 \Delta V_2 - \Delta U_2 \Delta V_1} \begin{bmatrix} \Delta V_2 & -\Delta V_1 \\ -\Delta U_2 & \Delta U_1 \end{bmatrix} \begin{bmatrix} E_{1x} & E_{1y} & E_{1z} \\ E_{2x} & E_{2y} & E_{2z} \end{bmatrix}

View File

@@ -1,6 +1,6 @@
# 渲染文本
| 原文 | [Particles](https://learnopengl.com/#!In-Practice/2D-Game/Render-text) |
| 原文 | [Render text](https://learnopengl.com/#!In-Practice/2D-Game/Render-text) |
| ---- | ---------------------------------------- |
| 作者 | JoeydeVries |
| 翻译 | [aillieo](https://github.com/aillieo) |

View File

@@ -72,7 +72,7 @@ pages:
- 后期处理: '06 In Practice/2D-Game/07 Postprocessing.md'
- 道具: '06 In Practice/2D-Game/08 Powerups.md'
- 音效: '06 In Practice/2D-Game/09 Audio.md'
- 渲染文: '06 In Practice/2D-Game/10 Render Text.md'
- 渲染文: '06 In Practice/2D-Game/10 Render Text.md'
- 结语: '06 In Practice/2D-Game/11 Final thoughts.md'
site_name: 'LearnOpenGL CN'