图形编程技术笔记整理2.1

本文主要介绍了OpenGL的功能,包括变换、光照与材质、纹理映射等,并探讨了其作为状态机的工作原理。同时,提到了学习OpenGL的两种路径:固定流水线模式和Shader编程模式,以及相关库如核心库、OpenGL实用程序库和freeglut库的作用。
摘要由CSDN通过智能技术生成

2.1 OpenGL的功能及其两种学习路线

  1. OpenGL是什么?

大约有150个函数组成,用户可以调用来完成各种绘图任务

调用图形硬件的程序接口,因为应用程序直接调用图形显卡驱动很困难,OpenGL相当于在其中加了一层辅助打交道

  1. OpenGL能做什么?

·变换(几何变化、投影、视口变换)

·光照与材质

·纹理映射

·图像功能

·特效

·建模

·.....

  1. OpenGL的学习

·OpenGL的学习不只是学习一堆离散的函数,而必须很好的理解图形流水线的整体流程及各个环节

·OpenGL是一个状态机

·整个绘制过程会按照固定的流程进行,如同一条流水线

·OpenGL函数只是用来设置这条流水线的一系列状态参数,而并不是用来真正执行绘制操作的

  1. OpenGL的两种学习路线
  1. .固定流水线模式——传统模式

·学习固定流水线,然后过渡到shader编程

·(红宝书)从第八版开始转成shader编程

·Nehe教程

  1. .Shader编程模式——现代模式

·直接学习shader编程模式

·蓝宝书

  1. .选择传统的理由

·现在依然有大量程序是固定流水线模式

·传统方式可以让我们更容易理解图形流水线

2.2 OpenGL相关的库

  1. 核心库

·包括115个函数,前缀“gl”

·例:glColor3f(),glTranslate3f()

·三个文件:gl.h,openGL32.lib,openGL32.dll

  1. OpenGL实用程序库

·包括43个函数,前缀glu

·gluPerspective()

·glu.h,glu.lib,glu.dll

  1. 辅助OpenGL编程的工具库

·如freeglut (free OpenGL Utility Toolkit)

·需要glut.h, freeglut.h, freeglut32.lib, freeglut32.dll

 

4.freeglut功能

·执行与窗口相关的功能

·鼠标、键盘交互功能

·右键菜单功能

·高层的建模命令(如glutSolidSphere( 1.0))

 

  1. 有时还有窗口连接的库

·“wgl”,”glx”......

·编外内容

 

跨平台性:OpenGL的核心库和实用库接口可以在任何OpenGL的实现平台上使用,如MS windows,Unix...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值