10 2019 档案

摘要:在理解opengl中的光照之前,先理解一下颜色。在我们现实生活中,我们看到的物体颜色,是物体反射的颜色,即没有被物体吸收掉的部分。opengl利用这个,在系统中模拟的颜色,就是定义一个表示对象的颜色向量A,再顶一个一个表示光源的颜色向量B,然后在片段着色器中将两个向量相乘得到表示物体的颜色。因此大致 阅读全文
posted @ 2019-10-25 16:59 Le Ciel 阅读(697) 评论(0) 推荐(0)
摘要:在上一篇写opengl坐标系统的文章中,有提到视图空间(View Space),也可以称之为摄像机空间,即从摄像机角度去观察对象。MVP转换矩阵中,上篇文章给了一个简单的视图矩阵(View Matrix)将世界空间坐标转换到视图空间坐标,即相对于摄像机的坐标。 opengl中实际上并没有直接提供摄像 阅读全文
posted @ 2019-10-15 17:58 Le Ciel 阅读(969) 评论(0) 推荐(0)
摘要:在前面的文章中我们有了解到,opengl的顶点坐标要求是介于-1.0到1.0之间的NDC(标准化设备坐标)。但是我们日常使用到的坐标可能有多种不同的坐标系统,比如针对对象本身有一套坐标系统,描述对象内部各个组件的坐标关系。对象与对象之间有一套坐标系统,描述对象间的坐标关系等等。opengl针对不同的 阅读全文
posted @ 2019-10-14 17:13 Le Ciel 阅读(565) 评论(0) 推荐(0)
摘要:转换(Transformations),主要是指位移(Translate),缩放(Scaling),旋转(Rotation)三种,opengl实现这三种转换,主要是通过矩阵的运算来实现的。在这里就会涉及到一定的矩阵、向量的运算了。 opengl没有提供现成的矩阵、向量运算的库,这个需要我们自己引入第 阅读全文
posted @ 2019-10-10 18:25 Le Ciel 阅读(809) 评论(0) 推荐(0)
摘要:之前绘制的图形,只加上简单的颜色,现在尝试绘制出图片。在opengl中可以理解为一个存储了多种多样颜色信息的对象,称之为纹理。 在使用着色器处理图形的颜色信息的时候,我们需要使着色器程序知道哪个顶点用哪种颜色。同理,在使用纹理的时候,我们也需要使着色器程序知道哪个顶点用哪部分的纹理信息。在这里就引入 阅读全文
posted @ 2019-10-10 11:19 Le Ciel 阅读(597) 评论(0) 推荐(0)