![](https://img-blog.csdnimg.cn/31fa70d5692242fea48340273852e83d.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
opengl
文章平均质量分 71
opengl相关的
Jason_Chen__
计算机图形学,c++,3D打印,qt,qml,python
展开
-
LearnOpenGL之高级GLSL
高级GLSL文章目录高级GLSL一、GLSL的内建变量1.顶点着色器的内建变量(1)gl_PointSize(2)gl_VertexID2.片段着色器的内建变量(1)gl_FragCoord(2)gl_FrontFacing(3)gl_FragDepth二、接口块三、Uniform缓冲对象1.在着色器形式为uniform块:2.Uniform块布局有三种:3.std140布局规则4.使用Uniform缓冲(以绑定投影和观察矩阵为例)(1)定义每个着色器的Uniform块(2)每个着色器的Uniform块绑原创 2022-03-30 14:52:49 · 216 阅读 · 0 评论 -
LearnOpenGL之延迟渲染框架总结
LearnOpenGL之延迟渲染框架总结文章目录LearnOpenGL之延迟渲染框架总结一、链接二、initGL1.初始化和绑定shaderprogram,删除shader2.加载模型,顶点位置,纹理坐标,法向量等3.初始化帧缓冲gBuffer4.帧缓冲多目标绘制显式命令:绘制帧缓冲附件的3个颜色缓冲5.检查帧缓冲6.光处理着色器(处理生成纹理的着色器)里三个输入纹理位置确认三、Rendering1.绘制第一遍:绘制进帧缓冲的三个颜色缓冲,生成三个纹理:gPosition、gNormal、gAlbedoS原创 2022-03-30 11:58:29 · 339 阅读 · 0 评论 -
OpenGL超级宝典(第7版)之VS2019使用sb7框架搭建自己的程序
参考1:https://blog.csdn.net/Jason_Chen__/article/details/122835075?spm=1001.2014.3001.5501参考2:https://blog.csdn.net/Leo_LiangXuYuan/article/details/82957828?ops_request_misc=&request_id=&biz_id=102&utm_term=opengl%E8%B6%85%E7%BA%A7%E5%AE%9D%E5原创 2022-02-18 17:32:49 · 284 阅读 · 0 评论 -
OpenGL超级宝典(第7版)之第十三章渲染技巧
OpenGL超级宝典(第7版)之第十三章渲染技巧前言一、光照模型二、使用步骤1.引入库前言主要讲述实时渲染场景可能用到的算法一、光照模型Phong光照模型:环境反射、漫反射和镜面反射(用颜色值来表示)二、使用步骤1.引入库...原创 2022-02-17 14:48:56 · 1425 阅读 · 0 评论 -
OpenGL超级宝典(第7版)之第十二章管线监控
OpenGL超级宝典(第7版)之第十二章管线监控前言一、查询1.遮挡查询二、OpenGL同步前言查询命令在图形管线中的执行进程测量命令执行时间同步应用程序与OpenGL以及同步多重OpenGL语境一、查询简述:查询Opengl执行状态需要创建查询对象,一个对象查一个问题,查询完一个问题必须删除一个查询对象glGenQueries():生成查询对象glDeleteQueries():删除查询对象glGetError():查询上面函数执行的结果1.遮挡查询简述:用于对于渲染成本很高的,但原创 2022-02-15 15:30:07 · 323 阅读 · 0 评论 -
OpenGL超级宝典(第7版)之第十一章高级数据管理
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档OpenGL超级宝典(第7版)之第十一章高级数据管理前言一、取消绑定二、稀疏纹理三、压缩纹理四、压缩数据格式五、高质量纹理过滤总结前言如何将数据从着色器写入缓存与纹理如何使Opengl更灵活地解读数据CPU与GPU如何直接共享数据一、取消绑定简述:取消采样器变量与纹理单元的关联,使用纹理控制柄来代替原因:1.单一着色器可访问的纹理数量有限 2.绑定与解绑要花时间用法:使用GL_ARB_bindless_texture扩展,原创 2022-02-15 11:12:13 · 2912 阅读 · 0 评论 -
OpenGL超级宝典(第7版)之第十章计算着色器
OpenGL超级宝典(第7版)之第十章计算着色器前言一、使用计算着色器1.执行计算着色器2.计算着色器通信前言利用GPU的计算能力运算不同于其他着色器,它可以实现互相同步和共享数据无固定输入或输出,不与其他任何固定管线工序相接,灵活性高,具有其他工序不具备的功能一、使用计算着色器计算着色器必须是单独的程序,不能组合其他着色器(顶点、曲面细分、几何、片段)1.执行计算着色器简述:计算着色器在工作组中执行,有且只有一个全局工作组发送到opengl执行,全局工作组下有多个局部工作组,每个局部工作原创 2022-02-14 17:23:39 · 1215 阅读 · 0 评论 -
OpenGL超级宝典(第7版)之第九章片段处理与帧缓冲
第九章片段处理与帧缓冲前言一、片段着色器二、单片段测试1.裁剪测试2.模板测试3.深度测试三、颜色输出1.颜色混合2.逻辑运算3.颜色遮罩四、离屏渲染1.多个帧缓冲附件2.分层渲染3.帧缓冲的完整性4.立体渲染五.反混叠(抗锯齿)1.过滤法反混叠2.多样本反混叠(MSAA)3.多样本纹理4.采样率着色5.重心采样六、高级帧缓冲格式1.无附件渲染2.浮点帧缓冲3.整数帧缓冲4.sRGB颜色空间七、点精灵1.点纹理化2.渲染星空3.点参数4.有型点5.旋转点八、获取图像1.从帧缓存中读取2.帧缓冲之间复制数据3原创 2022-02-14 14:42:50 · 990 阅读 · 0 评论 -
OpenGL超级宝典(第7版)之第八章基元处理
基元处理一、曲面细分1.曲面细分基元模式2.曲面细分子分段模式3.数据在曲面细分着色器之间的传递4.着色器调用通信5.示例:地形渲染6.示例:三次贝塞尔面片二、几何着色器1.传递几何着色器2.在应用程序中使用几何着色器3.删除几何着色器中的几何4.修改几何着色器中的几何体5.在几何着色器中生成几何体6.修改几何着色器中的基元类型7.多条储存流8.通过几何着色器引入新基元类型9.多次视口转换一、曲面细分将一个三角形(或四边形等),网格化生成更多的内部三角形1.曲面细分基元模式gl_TessLevelI原创 2022-02-10 18:35:31 · 736 阅读 · 0 评论 -
OpenGL超级宝典(第7版)之第七章顶点处理与绘图命令
文章目录前言一、顶点处理1.顶点着色器输入2.顶点着色器输出二、绘图命令1.绘图命令:2.使用基元重启合并几何结构:3.实例化4.间接绘制三、变换顶点的保存1.使用变换反馈:2.开始、暂停和停止变换反馈四、裁剪自定义裁剪前言这章节主要研究管线的前两个阶段————顶点组装和顶点着色。一、顶点处理顶点读取——》顶点着色器1.顶点着色器输入(1) void glVertexAttribPointer()把缓冲数据和顶点着色器的输入联系到了一起(2) 主要辅助函数介绍了void glVertexAt原创 2022-02-10 11:43:10 · 1085 阅读 · 0 评论 -
OpenGL超级宝典(第7版)之清单的初始环境配置VS2019
系列文章目录文章目录系列文章目录前言编译环境一、编译步骤综述二、详细步骤编译glfw-3.0.4编译清单项目前言因工作需要opengl相关知识,记录一下opengl超级宝典(7th)的学习成果,这章主要讲述清单的初始环境配置,书里清单指的是示例。编译环境VS 2019Cmake 3.21.3一、编译步骤综述先编译glfw-3.0.4,在*/sb7code-master/bin下添加media文件里的文件,在编译书根目录。二、详细步骤编译glfw-3.0.41.先在/sb7code-原创 2022-02-09 10:18:10 · 748 阅读 · 1 评论