首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
Zekegu1997
掘友等级
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
0
文章 0
沸点 0
赞
0
返回
|
搜索文章
最新
热门
learnOpenGL 4.9 几何着色器
在顶点着色器和片元着色器之间还有一个可选的几何着色器。 几何着色器的一大特点,是它可以输入和输出图元(点,线,三角形)。以下是具体可以输入的类型 points:绘制GL_POINTS图元时(1)。 lines:绘制GL_LINES或GL_LINE_STRIP时(2) lines_...
learnOpenGL 4.8.2 uniform缓冲
在多个shader中可能使用相同的uniform变量,比如projection和view矩阵,此时多次填入数据较为麻烦。利用uniform缓冲就可实现多个shader共用uniform数据。gl_Position = projection * view * model * vec...
learnOpenGL 4.8 高级GLSL
gl_PointSize 我们能够选用的其中一个图元是GL_POINTS,如果使用它的话,每一个顶点都是一个图元,都会被渲染为一个点。gl_VertexID 整型变量gl_VertexID储存了正在绘制顶点的当前ID。当(使用glDrawElements)进行索引渲染的时候,这个...
learnOpenGL 4.7 高级数据
通常我们使用交错布局处理顶点数据,与交错布局123123123123不同,我们也可以采用分批(Batched)的方式111122223333。我们可以先用glBufferData函数预留一块内存,如果我们将它的data参数设置为NULL,那么这个函数将只会分配内存,但不进行填充。...
learnOpenGL 4.5 帧缓冲
到目前为止,我们已经使用了很多屏幕缓冲了:用于写入颜色值的颜色缓冲、用于写入深度信息的深度缓冲和允许我们根据一些条件丢弃特定片段的模板缓冲。这些缓冲结合起来叫做帧缓冲(Framebuffer)。实际上我们平时做的一些操作都是在默认帧缓冲中的渲染缓冲(Renderbuffer)中进...
learnOpenGL 4.4 面剔除
在实际显示中,我们一般只能看到一个物体少于等于50%的部分,比如一个立方体,我们最多看到三个面。如此一来,我们只绘制面向我们的面就可以大大提升渲染效率。这就是所谓的面剔除。面剔除的原理主要是,通过构成三角形的顶点的顺序判断正反。 如果在正面三个点为逆时针顺序,则在反面看它们成顺时...
learnOpenGL 4.3 透明混合
在实际场景中,我们会遇到一些透明的物体,如何显示透明物体是一个问题。 RGBA值中A即为透明度,当A非常小,接近或等于零时,我们可以直接在fragment shader中将这些部分舍弃。if(texColor.a < 0.注意,当采样纹理的边缘的时候,OpenGL会对边缘的值和纹...
learnOpenGL 4.2 模板测试
除了深度测试,OpenGL还有一种较为自由的测试,称为模板测试stencil。深度测试默认取深度浅的,因为这符合我们的常识。模板测试中,哪些值能通过,必须通过函数设定好。举例如下,第一个参数是测试模式,可用的选项有:GL_NEVER、GL_LESS、GL_LEQUAL、GL_GR...
learnOpenGL 学习拾遗纠错
OpenGL中的一个片段是OpenGL渲染一个像素所需的所有数据。
learnOpenGL 4.1 深度测试
OpenGL允许我们修改深度测试中使用的比较运算符。我们可以调用glDepthFunc函数来设置比较运算符。默认情况下,我们使用LESS。在进行深度测试之前,我们需要把物体的坐标转化为观察空间的深度值(范围【0,1】)。 转换方式有线性与非线性两种公式如下: 在实际应用中,一般采...
下一页
个人成就
文章被阅读
7,340
掘力值
84
关注了
0
关注者
0
收藏集
0
关注标签
7
加入于
2022-08-15