Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器

首页 / 操作系统 / Linux / OpenGL超级宝典学习笔记——Using OpenGL(一)

OpenGL超级宝典 第4版 中文版PDF+英文版+源代码 见  http://www.linuxidc.com/Linux/2013-10/91413.htm

第二章 使用OpenGL

(一)OpenGL 的工作原理

OpenGL是过程式的而非描述性的图形API。开发人员只须规定必要的步骤去实现显示的效果。这些步骤包含了许多OpenGL的命令。这些命令用于绘制许多的几何图元,例如点,线,多边形。OpenGL支持光照和阴影,纹理映射,混合,透明效果,动画,还有许多特殊的效果。

(二)通用实现

通用实现是指软件实现,软件实现的好处是跨硬件。但是性能不佳,没有硬件加速。软件通用实现的OpenGL API所处的位置如下图:其首先用软件实现去光栅化绘制3D图像,然后传给GDI,GDI负责与显示设备交互显示图像。

(三)硬件实现

OpenGL API调用直接传给硬件驱动。硬件驱动不会把图形传给Windows GDI进行显示。而是直接与图形显示设备交互。

(四)图形管线

管线是用于描述一系列的处理流程。下图是一个简化版本的图形管线一个应用程序调用了许多OpenGL的API,这些命令被传送到Commond Buffer这个buffer填充着许多命令,顶点数据,纹理数据等等,当缓冲区的数据被刷新时,命令和数据就被传递给管线的下一阶段。顶点数据首先会进行变换和光照。这个阶段完成之后,数据被传输到管线的光栅化部分。最后图像被放入到帧缓冲区。早期的OpenGL硬件加速器只是对光栅化阶段进行了加速。然而现在的硬件加速器都提供了变换和光照阶段。  OpenGL编程指南(原书第7版)中文扫描版PDF 下载 http://www.linuxidc.com/Linux/2012-08/67925.htm OpenGL 渲染篇 http://www.linuxidc.com/Linux/2011-10/45756.htm Ubuntu 13.04 安装 OpenGL http://www.linuxidc.com/Linux/2013-05/84815.htm OpenGL三维球体数据生成与绘制【附源码】 http://www.linuxidc.com/Linux/2013-04/83235.htm Ubuntu下OpenGL编程基础解析 http://www.linuxidc.com/Linux/2013-03/81675.htm 如何在Ubuntu使用eclipse for c++配置OpenGL http://www.linuxidc.com/Linux/2012-11/74191.htm 更多《OpenGL超级宝典学习笔记》相关知识 见 http://www.linuxidc.com/search.aspx?where=nkey&keyword=34581本文永久更新链接地址:http://www.linuxidc.com/Linux/2015-02/113984.htm