OpenGL
OpenGL系列教程
Shuan999
这个作者很懒,什么都没留下…
展开
-
LearnOpenGL - 纹理
纹理©shuan99991. 了解纹理简而言之就是一张图,把他附着在一个物体上,让这个物体看起来更逼真。说白了,OpenGL不就是为了渲染更真实的物体,让虚拟的物体在屏幕上看起来更像一个真实的物件,但是前面说了,计算机绘制就会画点线三角形,而那些特别复杂的形状无非就是成千上万的三角形组成的,完了我们在这每一个三角形上上一上色,贴上贴纸让这个物体看起来更真实,而这些贴纸就是纹理。其实就是让...原创 2020-04-19 21:48:01 · 324 阅读 · 1 评论 -
LearnOpenGL - 向量、矩阵变换
向量、矩阵变换©shuan99991. 矩阵OpenGL在渲染的时候是通过模型视图矩阵和投影矩阵运算得到最终显示的坐标。模型矩阵(Model): 将顶点从局部坐标系转换到世界坐标系中;视图矩阵(View): 将顶点从世界坐标转化到视图坐标系下;投影矩阵(Projection): 将顶点从视图坐标系转换到规范立方体中(即屏幕中);模型视图投影矩阵(MVP) = 投影矩阵 * 模...原创 2020-04-12 18:52:45 · 350 阅读 · 0 评论 -
LearnOpenGL - 渲染技巧
渲染技巧©shuan99991. 隐藏⾯消除((Hidden surface elimination)先看如下图的问题:出现这种问题的原因在于我们将其背面也绘制出来了,正常来说我们是看不到也不需要看到背面的,所以先看第一种解决办法:油画算法先绘制场景中的离观察者较远的物体,再绘制较近的物体例如下⾯的图例: 先绘制红⾊部分,再绘制⻩⾊部分,最后再绘制灰⾊部分,即可解决隐藏⾯消...原创 2020-04-11 21:49:03 · 240 阅读 · 0 评论 -
LearnOpenGL - 渲染基础
渲染基础©shuan99991. OpenGL 渲染架构架构图:Client:客户端,不同于我们理解的,此处指存储在CPU存储器上,在应用程序上执行或在主系统内存执行的代码。譬如,我们写的C\C++代码。Server:服务端,同样的也不是我们理解的服务器,而是GPU端,我们写的shader就是在GPU上执行。总的来说我们就是编写程序通过OpenGL库不断将我们的一些数据发送给GPU...原创 2020-04-11 15:27:43 · 157 阅读 · 0 评论 -
LearnOpenGL - 专业名词解析
专业名词解析©shuan99991. Context (OpenGL上下文)在应⽤用程序调⽤用任何OpenGL的指令之前,需要安排⾸首先创建⼀一个OpenGL的 上下⽂文。这个上下⽂文是⼀一个⾮非常庞⼤大的状态机,保存了了OpenGL中的各种状 态,这也是OpenGL指令执⾏行行的基础;OpenGL的函数不不管在哪个语⾔言中,都是类似C语⾔言⼀一样的⾯面向过程的函 数,本质上都是对Op...原创 2020-03-29 15:32:01 · 343 阅读 · 0 评论 -
LearnOpenGL - 搭建Mac环境
搭建Mac环境©shuan99991. 创建Xcode工程,如图:2. 添加OpenGL.framework和*GLUT.framework *,如图:3. 添加libGLTools.a,并配置好头文件将libGLTools.a拖到Frameworks中删除文件:AppDelegate.h、AppDelegate.m、main.m、ViewController.h 、View...原创 2019-09-15 17:56:01 · 393 阅读 · 0 评论