diff --git a/01 Getting started/04 Hello Triangle.md b/01 Getting started/04 Hello Triangle.md new file mode 100644 index 0000000..38959ef --- /dev/null +++ b/01 Getting started/04 Hello Triangle.md @@ -0,0 +1,16 @@ +本文作者JoeyDeVries,由Geequlim翻译自[http://learnopengl.com](http://learnopengl.com/#!Getting-started/Hello-Triangle) + +##你好,三角形 + +未翻译完成... +--- + +由于OpenGL使用的是三维坐标系而我们的屏幕和窗口都是由二维像素组成的,所以OpenGL的一项重要工作就是将三维坐标系转换到二维像素使得我们的屏幕能够显示显示这些数据。将三维坐标转换为二维坐标的过程使用OpenGL的图形渲染管线来管理。图形渲染管线可以被分为两大部分: +1. 将三维坐标系转换为二维的屏幕坐标 +2. 将转换得到的二维坐标中的每一个点转换为具体的像素颜色 +在本教程中我们将简单的讨论OpenGL的渲染管线并使用它来创建一些给力的像素图。 +二维坐标系与像素坐标系有一点不同,一个二维坐标描述的是在二维空间中一个确切点的位置,而一个二维像素是一个由二维坐标和屏幕的分辨率所决定的近似值. +图形渲染管线将一系列的三维坐标转化为你屏幕中的像素颜色。图形渲染管线可以被分为若干个部分,每一个部分都需要上一部分的输出数据作为其输入数据。所有部分都是高效运行并且可以是同时进行的,由于这一并行的机制,现代的图形处理器(GPU)拥有成千上万个核心通过快速地执行一些小程序来处理渲染管线中每一部分的数据。这些小程序被称为着色器(Shader)。 +许多着色器都允许开发者进行配置,OpenGL允许我们写自己的着色器来替换已经存在的默认着色器。由于着色器程序是使用GPU执行的,这样我们就可以通过书写自己的着色器程序来对渲染进行更加细微的控制,也能减轻CPU的运算量。OpenGL的着色器程序使用GLSL(OpenGL Shading Language)语言编写,我们将在接下来的教程中探索如何使用它。 +下图是对渲染管线流程简介,其中蓝色的部分允许我们编写自己的着色器程序进行控制。 +(img) \ No newline at end of file diff --git a/02 Lighting/01Colors.md b/02 Lighting/01 Colors.md similarity index 99% rename from 02 Lighting/01Colors.md rename to 02 Lighting/01 Colors.md index 7b19265..3abcb37 100644 --- a/02 Lighting/01Colors.md +++ b/02 Lighting/01 Colors.md @@ -1,7 +1,3 @@ - - 本文作者JoeyDeVries,由Geequlim翻译自[http://learnopengl.com](http://learnopengl.com/#!Lighting/Colors) ## 颜色 @@ -14,9 +10,7 @@ 我们在现实生活中看到某一物体的颜色并不是这个物体的真实颜色而是它所反射的颜色。换句话说,那些不能被物体吸收的颜色(被反射的颜色)就是我们能够感知到的物体的颜色。例如,太阳光被认为是由许多不同的颜色组合成的白色光(如下图所示)。如果我们将白色的太阳光照在一个蓝色的玩具上,这个蓝色的玩具会吸收白色光中除了蓝色以外的所有颜色,不被吸收的蓝色光被反射到我们的眼中,使我们看到了一个蓝色的玩具。下图显示的是一个珊瑚红的玩具,它以不同强度的方式反射了几种不同的颜色。 -