图像处理 图像处理是一种独立于顶点着色器的特殊处理程序。在不使用片段着色器的情况下绘制场景之后,可以按照各种方式应用卷积核。 为了保持着色器的简洁,使用硬件加速,我们限制总卷积的大...
目标: 有一个3D模型物体,想要它在屏幕的某个位置显示。简单的说原3D物体在屏幕的中心显示,现在我可以把他移动到相应的屏幕坐标进行显示。通过鼠标点击屏幕上的某个位置,把物体平移到那个...
在多数情况下,片段着色器和顶点着色器会成对出现。片段着色器扮演着显示的角色,而顶点着色器则在后面提供支持。为了减少工作,提升性能,尽可能把可以在顶点着色器阶段处理的工作放在在顶点...
在传统上,图形硬件设计的目标是快速地执行相同的硬编译的计算指令集。计算的步骤可以被跳过,参数可以被调整,但计算本身却是固定的。所以旧式的GPU设计被称为是“固定功能”的。现在的趋势...
之前我们介绍过简单的把物体压平到投影平面来制造阴影。但这种阴影方式有其局限性(如投影平面须是平面)。在OpenGL1.4引入了一种新的方法阴影贴图来产生阴影。 阴影贴图背后的原理是简单的。...
在一个场景中,如果有有些物体被其他物体遮住了不可见。那么我们就不需要绘制它。在复杂的场景中,这可以减少大量的顶点和像素的处理,大幅度的提高帧率。遮挡查询就是允许我们判断一组图形在...
反馈像选择一样也是一种渲染模式,不会往帧缓冲区中写数据,而是把信息填充到反馈缓冲区中。与选择模式返回名称栈不同,反馈的这些信息包括窗口坐标中经过变换的顶点数据,经过光照计算后的颜...
有时我们不仅仅是渲染场景,而且还要与渲染的场景进行交互。大多数情况下是使用鼠标进行交互。注:viewing volume(可视区域,视景体) 选择 OpenGL的选择模式允许你通过鼠标点击屏幕,来选择...
显示列表可以快速简单地优化立即模式(glBegin/glEnd)的代码。在最坏的情况下,显示列表的命令被预编译存到命令缓冲区中,然后发送给图形硬件。在最好的情况下,是编译后放在图形硬件中以减少...
<p>本文通过包含许多顶点数据的复杂模型来比较使用glBegin()/glEnd立即模式,显示列表,以及顶点索引数组的性能与内存。</p> <p>F-16 Thunderbird的飞机模型有3704个独立的三角形,通过Deep ...
<p>有时我们不需要物体的许多细节,而只需要其外围的轮廓来描绘物体大概的形状比如物体的阴影。</p> <p>如果我们简单的使用线框模式绘制一个立方体如下:</p> <p><a href="http://static.os...
顶点数组 当我们有来自模型的大量数据的时候,使用显示列表来对这些数据进行预编译,需要遍历这些顶点数据(一次一个顶点数据)把数据传给OpenGL。依赖于顶点的数量,这会带来潜在的性能损耗...
前言 在先前的章节中,我们已经讨论OpenGL基本的一些渲染技术。这些基本的技巧足够渲染简单的图像,然而在渲染精细的画面逼真的画面的时候(非常多的顶点和纹理),如果使用之前的方式渲染(...
NURBS 贝塞尔曲线的缺点是当我们增加很多控制点的时候,曲线变得不可控,其连续性会变差差。如果控制点很多(高阶曲线),当我们调整一个控制点的位置,对整个曲线的影响是很大的。要获得更高...
参数方程表现形式 在中学的时候,我们都学习过直线的参数方程:y = kx + b;其中k表示斜率,b表示截距(即与y轴的交点坐标)。类似地,我们也可以用一个参数方程来表示一条曲线。1962年,法国...
纹理组合器 OpenGL的纹理组合器可以控制多重纹理的片段是如何组合的。一般情况下,我们可以简单的为每个纹理单元设置一个纹理环境模式(GL_REPLACE,GL_DECAL,GL_ADD和GL_MODULATE),把每个纹理...
没有更多内容
加载失败,请刷新页面
文章删除后无法恢复,确定删除此文章吗?
动弹删除后,数据将无法恢复
评论删除后,数据将无法恢复