《OpenGL着色语言》理解点记录二

别人提到“OpenGL的处理管线”时,意味着什么?

准确的讲,应该是“OpenGL图形处理管线”,“管线”带有特定的顺序,在OpenGL中就是Graphics Processing Pipeline。在OpenGL中更像一个流程图,流程图基本架构从来都没有变过。

“向OpenGL发送几何数据”指的是什么?

顶点位置、颜色、法线、纹理坐标、雾化坐标等。

“向OpenGL发送几何数据”有几种方式?

一种三种:1.“一次一个顶点”,通过glBegin()...glEnd()实现

2.使用顶点数组,通过glDrawArrays,glDrawElements,glMultiDrawArrays,glMultiDrawElements等一次性绘制大量顶点

3.显示列表

前两种是“立即模式”,指的是立即渲染。第三种是“显示列表模式”。

glCullFace()的作用?

作用于裁剪、透视投影阶段,调用glCullFace可以指定将要消隐背面多边形还是正面多边形。

时间: 2024-12-19 18:00:50

《OpenGL着色语言》理解点记录二的相关文章

有关OpenGL着色语言(一)

刚接触OpenGL着色语言...,不定期增加内容 1.OpenGL着色语言(GLSL)是什么? 用于OpenGL的面向过程的高级着色语言,是近年来图形编程领域中出现的最重要的新型开发技术,使用OpenGL着色语言可以让开发人员控制图形处理管线中最重要的阶段.既然是一种面向过程的编程语言,那么就有语法和语义,有了语法和语义就可以编写程序实例(着色器,一个程序实例就是一个着色器).既然是基于OpenGL的,那么就说明可以使用OpenGL的函数去创建和操作这种语言(着色语言). 2.使用着色语言的好处

《OpenGL着色语言》理解点记录三

“帧缓冲区”中的“帧”的含义? “帧”是连续图像中的一幅,3D可视化程序最终都是转化为一幅幅的图像输出在显示器上,这一幅幅的图像叫做叫“帧”. 解释“glBlendFunc(GL_SRC_ALPHA,GL_ONE);”的含义. 假定源颜色值为(0.3,0.4,0.6,0.5),目标颜色值为(0.5,0.8,0.3,1.0),OpenGL则首先获得源物体的alpha值0.5,用它做混合因子,乘上源物体的各颜色分量,得到(0.15,0.2,0.3),然后选择1作为目标混合因子乘上目标物体各颜色分量得

WebGL中的OpenGL着色器语言

在webgl中,调用了OpenGL-ES-2.0的API,而在OpenGL-ES专为嵌入式设备设计,其和其它设备一样,都是使用GLSL(GL Shading Language)来编写片段程序并执行于GPU的着色器上,来完成对对象的渲染.GLSL在其中起着相当重要的作用,所以要玩好webgl,我们就得把GLSL搞懂,本文主要介绍shader的基础使用及组成. 整个管线处理过程: 1.指定几何对象 1.顶点数组(直接将顶点数据传送至shader里) 2.顶点索引(将顶点数据保存于缓冲区中,用索引来从

Windows API 编程学习记录<二>

恩,开始写Windows API编程第二节吧. 上次介绍了几个关于Windows API编程最基本的概念,但是如果只是看这些概念,估计还是对Windows API不是很了解.这节我们就使用Windows API 让大家来了解下Windows API的用法. 第一个介绍的Windows API 当然是最经典的MessageBox,这个API 的作用就是在电脑上显示一个对话框,我们先来看看这个API的定义吧: int WINAPI MessageBox(HWND hWnd, LPCTSTR lpTe

Android OpenGL ES(七)----理解纹理与纹理过滤

1.理解纹理 OpenGL中的纹理可以用来表示图像,照片,甚至由一个数学算法生成的分形数据.每个二维的纹理都由许多小的纹理元素组成,它们是小块的数据,类似于我们前面讨论过的片段和像素.要使用纹理,最常用的方式是直接从一个图像文件加载数据. 每个二维纹理都有其自己的坐标空间,其范围是从一个拐角的(0,0)到另一个拐角的(1,1).按照惯例,一个维度叫做S,而另一个称为T.当我们想要把一个纹理应用于一个三角形或一组三角形的时候,我们要为每个顶点指定一组ST纹理坐标,以便OpenGL知道需要用那个纹理

前端常用功能记录(二)—datatables表格(转)

前端常用功能记录(二)—datatables表格 并不是所有的后台开发都有美工和前端工程师来配合做页面,为了显示数据并有一定的美感,jQuery的DataTables插件对于像我这样的前端菜鸟来说真是雪中送炭,当然对于专业的前端开发者来说它更是锦上添花!DataTables提供了针对表格的排序.浏览器分页.服务器分页.筛选.格式化.统计等强大功能. 工作中对程序员的学习模式才深有体会,不是从入门到精通,而是从会用到了解.对于我来说,基本都是拿到一个知识先做个东西出来,再来细细品味个中的细节,然后

BERT论文翻译:用于语言理解的深度双向Transformer的预训练

Jacob Devlin Ming-Wei Chang Kenton Lee kristina Toutanova Google AI Language {jacobdevlin, mingweichang, kentonl, kristout}@google.com 摘要 本文介绍了一种新的语言表示模型BERT,意为“来自transformer的双向编码器表示”(Bidirectional Encoder Representations from Transformers).与最近的语言表示模

C语言快速入门教程(二)

C语言快速入门教程(二) C语言的基本语法 本节学习路线图: 引言: C语言,顾名思义就是一门语言,可以类比一下英语; 你要说出一个英语的句子需要:  单词  +  语法!  将单词按照一定的语法拼凑起来就成了一个英语句子了; C语言同样是这样,只不过单词可以理解为一些固定的知识点,而语法可以理解为算法(可以理解为解决问题的方法) 在这一节中我们就对固定知识点中的语言描述与数据存储进行解析! 1.C语言的基本元素 1.1  标识符 什么是标识符? 答:在C语言中,符号常量,变量,数组,函数等都需

I2C总线之(三)---以C语言理解IIC

I2C总线之(三)---以C语言理解IIC 为了加深对I2C总线的理解,用C语言模拟IIC总线,边看源代码边读波形: 如下图所示的写操作的时序图: 读时序的理解同理.对于时序不理解的朋友请参考"I2C总线之(二)---时序" 完整的程序如下: #include<reg51.h> #define uchar unsigned char #define uint unsigned int #define write_ADD 0xa0 #define read_ADD 0xa1