摘要: 。。这个blog标题有点长 =_= 学习混合的时候,偶然发现了深度测试存在的一些问题(也可以说是特性)。经过google之后明白了问题所在,对深度测试也有了进一步的了解。 如上所示,在进行混合的时候,发现有一些本该因为透明度混合出现的窗却没有出现,进一步观察又会发现,有的透明度混合窗口却照常出现。 阅读全文
posted @ 2019-10-30 19:02 jckcoenf 阅读(420) 评论(0) 推荐(0) 编辑
摘要: 模板测试(stencil test)应该说是对于深度测试的另外一种补充,锦上添花类型的。可以拿来实现一些效果:比方说RTS游戏中选中人物的时候,人物外围有一层光圈(表明被选中)。 和深度测试一样,模板测试有模板缓冲(stencil buffer),由GLFW自动创建(别的库的话当然要看文档,看有没有 阅读全文
posted @ 2019-10-28 17:51 jckcoenf 阅读(801) 评论(0) 推荐(0) 编辑
摘要: 深度测试内容并不难,但是一开始对一些概念性质的东西还是有点迷迷糊糊的,这里写篇bolg帮助理解一下。对应的Learn OpenGL的章节:深度测试 以及 坐标系统。 首先是透视投影(perspective)中的透视除法。相对的,也有平行投影。注:透视除法是当坐标变换到裁剪空间之后进行的,并且透视除法 阅读全文
posted @ 2019-10-26 13:40 jckcoenf 阅读(1022) 评论(0) 推荐(0) 编辑
摘要: 上一节的Mesh类主要的目标是将加载进来的模型相关数据做处理,然后绘制出来。那么在Mesh类之前,我们还需要一个Model类去加载这些模型,将其转化为数据并对另外的一些数据做一些处理。 话不多说,直接上code: Draw函数没什么好讲的啦,遍历所有的网格(处理过的),并且调用网格各自的Draw函数 阅读全文
posted @ 2019-10-23 17:43 jckcoenf 阅读(1118) 评论(0) 推荐(1) 编辑
摘要: OpenGL 学习到模型加载的时候,介绍了一个模型导入库(Open Asset Import Library,Assimp)的用法。初学的时候觉得稍微有些复杂,故借由这篇blog来简单地捋一下其中的细节。 首先,当我们使用Assimp导入模型的时候,它通常会将整个模型加载到一个场景(Scene)对象 阅读全文
posted @ 2019-10-23 16:19 jckcoenf 阅读(4021) 评论(1) 推荐(1) 编辑
摘要: 生活中我们所看到的物体所呈现出来的颜色,其实是它反射光源造成的,我们在OpenGL里面模拟光照,实质上就是通过各种方式计算出反射光源。 首先,我们学习了“颜色”这一小章节,核心知识就是物体本身的颜色(矩阵)乘以光源颜色(矩阵),得到的就是物体反射的颜色。 为了模拟物体更加真实的效果,我们接着学习了“ 阅读全文
posted @ 2019-10-17 09:10 jckcoenf 阅读(336) 评论(0) 推荐(0) 编辑
摘要: 本篇blog讲一下关于材质的知识。 在前面中,我们通过设定几个光照分量以及物体本身的颜色,实现了物体的视觉输出(就是人眼看到的啦)。 设置材质:我们可以通过进一步地整合数据,来对物体的颜色进行更加严格的控制,既环境光照,漫反射光照,镜面光照三个分量,再加上反光度(为了方便理解,我们把这几个分量看成是 阅读全文
posted @ 2019-10-11 14:48 jckcoenf 阅读(258) 评论(0) 推荐(0) 编辑
摘要: 本片blog主要是为了整理脑内一些混杂的知识。 颜色: 大自然中的物体都有着自己独一无二的颜色,我们需要用电脑去模拟这种颜色(尽管是用有限的电脑颜色去模拟无限的自然界存在的颜色,但是你基本看不出来区别)。 严格地说,平时生活中我们看到的某一个物体的颜色并不是它本身的颜色,而是它所反射(reflect 阅读全文
posted @ 2019-10-10 21:53 jckcoenf 阅读(501) 评论(0) 推荐(0) 编辑
摘要: 最后一篇博客讲一下Perspective(透视)。 在顶点运算器的最后,OpenGL希望所有的坐标落在一个特定的范围内,超出这个范围的物体就会被裁剪或者重新渲染。而从观察空间变化到裁剪空间,所需要的就是投影矩阵,投影矩阵有两种,一种是正射投影(ortho),另一种是透视投影(perspective) 阅读全文
posted @ 2019-10-06 15:20 jckcoenf 阅读(253) 评论(0) 推荐(0) 编辑
摘要: 这篇blog写的是观察空间(从世界空间到观察空间)里的观察矩阵(view matrix),也称之为摄像机(camera)。 本质上来说,并不存在什么摄像机。所谓对空间的观察,实际上是物体自己在变换(反方向变换),造成一种我们人为观测的感觉,这也就是观察矩阵的功能:观察矩阵把所有的世界坐标变换为相对于 阅读全文
posted @ 2019-10-06 14:37 jckcoenf 阅读(306) 评论(0) 推荐(0) 编辑