OpenGL
文章平均质量分 75
Sunday
UE4 、工业仿真 、 Delta3D 、OpenGL、分布式仿真
展开
-
OpenGL 的渲染流水线
一、渲染:计算机根据模型创建图象。模型(或物体)是由几何图元构成的,而几何图元是通过顶点来指定的。最终渲染的图象由屏幕像素组成。像素(pixel)是显示硬件能够放置到屏幕上的最小的可视元素。有关像素的信息(如颜色)在系统内存中被组织为位面(bitplane)。位面构成了帧缓存(包含图形显示设备为控制屏幕上所有像素的颜色和亮度所需的信息)。 1、使用几何图元建立模型,从而得到物体的数学描述。(O转载 2013-03-31 17:12:19 · 2304 阅读 · 0 评论 -
Stencil Buffer(模板缓冲区)
作者:Nin+.Lee邮箱:lilei9110@gmail.com(红色部分为自己修改)与颜色缓冲区和深度缓冲区类似,模板缓冲区可以为屏幕上的每个像素点保存一个无符号整数值。这个值的具体意义视程序的具体应用而定。在渲染的过程中,可以用这个值与一个预先设定的参考值相比较,根据比较的结果来决定是否更新相应的像素点的颜色值。这个比较的过程被称为模板测试。模板测试发生在透明度测试(alpha test)之转载 2014-10-10 10:09:48 · 10772 阅读 · 0 评论 -
OpenGL 4.0 VAO VBO 理解
顶点数组对象(Vertex Array Object 即VAO)是一个包含一个或数个顶点缓冲区对象(Vertex Buffer Object, 即 VBO)的对象,一般存储一个可渲染物体的所有信息。VAO的编号最多在0 to GL_MAX_VERTEX_ATTRIBS - 1.之间。顶点缓冲区对象(Vertex Buffer Object VBO)是你显卡内存中的一块高速内存缓冲区,用来存原创 2014-02-15 17:19:13 · 7550 阅读 · 5 评论 -
比较简单的win32 OpenGL 程序
//// GLSAMPLE.CPP// by Blaine Hodge//// Includes#include #include // Function DeclarationsLRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);void EnableOpenG原创 2014-03-29 17:47:45 · 1912 阅读 · 0 评论 -
glViewport()函数和glOrtho()函数的理解(转)
在OpenGL中有两个比较重要的投影变换函数,glViewport和glOrtho。glOrtho是创建一个正交平行的视景体。 一般用于物体不会因为离屏幕的远近而产生大小的变换的情况。比如,常用的工程中的制图等。需要比较精确的显示。 而作为它的对立情况, glFrustum则产生一个透视投影。这是一种模拟真是生活中,人们视野观测物体的真实情况。例如:观察两条平行的火车到,在过了很远之后,这两条转载 2012-12-01 19:15:21 · 1381 阅读 · 0 评论 -
OpenGL 纹理单元 纹理目标 理解 glActiveTexture glBindTexture
可以这样简单的理解为:显卡中有N个纹理单元(具体数目依赖你的显卡能力),每个纹理单元(GL_TEXTURE0、GL_TEXTURE1等)都有GL_TEXTURE_1D、GL_TEXTURE_2D等,如下代码:struct TextureUnit{ GLuint targetTexture1D; GLuint targetTexture2D; GLuint target原创 2014-02-26 11:07:11 · 16840 阅读 · 2 评论 -
OpenGL FBO 对象
OpenGL中的FBO对象(含源码)作者:Nin+.Lee邮箱:lilei9110@gmail.com* 本文属原创,转载请注明出处。 概要在OpenGL的渲染管线中,几何数据和纹理通过一系列变换和测试,最终被渲染成屏幕上的二维像素。那些用于存储颜色值和测试结果的二维数组的几何被称为帧缓冲区(frame buffer)。这些二维数组按用途划分,可分为颜色缓冲区(转载 2014-02-07 15:17:54 · 1759 阅读 · 0 评论 -
OpenGL 法线贴图 切线空间 整理
1、 What`s Bump Mapping?Bump Mapping通过改变几何体表面各点的法线,使本来是平的东西看起来有凹凸的效果,是一种欺骗眼睛的技术:)。我们知道,如果几何体表面有高低不平的凹凸,那么表面上各点的法线方向就会不同,那么当光照射到这些点上时,各点光照产生效果就不一样,那么我们最终看到的各点就是凹凸不平的。如果几何体表面是平的,但是各点的法线方向各转载 2014-02-10 11:25:32 · 6407 阅读 · 1 评论 -
OpenGL 深度缓冲区 Z缓冲区 介绍
【颜色缓冲区】 颜色缓冲区(COLOR_BUFFER)就是帧缓冲区(FRAME_BUFFER),你需要渲染的场景最终每一个像素都要写入该缓冲区,然后由它在渲染到屏幕上显示.【深度缓冲区】 深度缓冲区(DEPTH_BUFFER)与帧缓冲区对应,用于记录上面每个像素的深度值,通过深度缓冲区,我们可以进行深度测试,从而确定像素的遮挡关系,保证渲染正确.【模板缓冲区】转载 2014-02-08 09:48:51 · 9566 阅读 · 0 评论 -
OpenGL 纹理映射
纹理映射 (texture mapping) 本章你将学到纹理映射基础知识纹理坐标纹理对象及绑定纹理过滤mipmap和自动生成mipmap纹理参数, 外包模式, 细节级别纹理环境和纹理函数Table of Contents1 概述2 预备知识: 纹理坐标3 使用纹理映射3.1 纹理对象3.2 纹理绑定3.3 删除纹理对象3.4 驻留纹理3.5转载 2014-02-06 11:11:37 · 2861 阅读 · 0 评论 -
OSG Transformations
Transformations9.001 I can't get transformations to work. Where can I learn more about matrices?A thorough explanation of basic matrix math and linear algebra is beyond the scope of this FAQ. Th转载 2013-09-24 17:58:27 · 2458 阅读 · 0 评论 -
OpenGL 渲染管线理论
原文地址http://www.cppblog.com/acmiyou/archive/2009/08/23/94191.html阶段1. 指定几何对象. 如:点 线 三角形.等一些几何图元..OpenGL绘制几何图元的方法有以下三种: 一次一个顶点.即使用glBegin() glVertex() glEnd() 指定几何对象. 使用顶点数组..如转载 2013-08-06 17:52:37 · 1466 阅读 · 0 评论 -
OpenGl 坐标转换
下面这篇文章详细讲述了OpenGL里的坐标转换,清晰,明了。但是其所谓的渲染管线只包括modelview 转换 和 投影变换,我觉得不是这样的。这只是从坐标角度吧。比如什么顶点着色、光栅化、送至帧缓存都没有涉及到。原文地址:http://blog.csdn.net/zhulinpptor/article/details/58971021. OpenGL 渲染管线OpenGL转载 2013-03-10 22:14:08 · 5821 阅读 · 4 评论 -
OpenGL 透视投影 齐次裁剪空间 深度缓存
对于从事三维方面的 ,透视投影公式应该不陌生,如下:glFrustum函数公式为:glPerspetive为:经过透视投影 (正射投影也一样)变换, 能够把点 从 观察空间(相机坐标系)转换到 齐次裁剪空间坐标系(又叫规则观察体(Canonical View Volume)中如下图)。这个转化后的空间体 不仅独立于 把三维场景转换为二维屏幕空间的投影类型(透视...原创 2015-05-14 15:30:24 · 10030 阅读 · 3 评论