位置: 编程技术 - 正文

OpenGL 入门教程1(opengl入门视频教程)

编辑:rootadmin
说起编程作图,大概还有很多人想起 TC 的#include <graphics.h>吧?但是各位是否想过,那些画面绚丽的 PC 游戏是如何编写出来的?就靠 TC 那可怜的 * 分辨率、色来做吗?显然是不行的。本帖的目的是让大家放弃 TC 的老旧图形接口,让大家接触一些新事物。OpenGL 作为当前主流的图形 API 之一,它在一些场合具有比 DirectX 更优越的特性。1、与 C 语言紧密结合。OpenGL 命令最初就是用 C 语言函数来进行描述的,对于学习过 C 语言的人来讲,OpenGL 是容易理解和学习的。如果你曾经接触过 TC 的 graphics.h,你会发现,使用 OpenGL 作图甚至比 TC 更加简单。2、强大的可移植性。微软的 Direct3D 虽然也是十分优秀的图形 API,但它只用于 Windows 系统(现在还要加上一个 XBOX 游戏机) 。而 OpenGL 不仅用于 Windows,还可以用于 Unix/Linux 等其它系统,它甚至在大型计算机、各种专业计算机(如:医疗用显示设备)上都有应用。并且,OpenGL 的基本命令都做到了硬件无关,甚至是平台无关。3、高性能的图形渲染。OpenGL 是一个工业标准,它的技术紧跟时代,现今各个显卡厂家无一不对 OpenGL 提供强力支持,激烈的竞争中使得 OpenGL 性能一直领先。总之,OpenGL 是一个很 NB 的图形软件接口。至于究竟有多 NB,去看看 DOOM3 和 QUAKE4 等专业游戏就知道了。OpenGL 官方网站(英文) Windows 下的 OpenGL 编程进行简单介绍。学习 OpenGL 前的准备工作第一步,选择一个编译环境现在Windows系统的主流编译环境有Visual Studio, Broland C&#;&#; Builder, Dev-C&#;&#;等, 它们都是支持OpenGL的。但这里我们选择 Visual Studio 作为学习 OpenGL 的环境。第二步,安装 GLUT 工具包GLUT 不是 OpenGL 所必须的,但它会给我们的学习带来一定的方便,推荐安装。Windows 环境下的 GLUT 下载地址: (大小约为 k) 环境下安装 GLUT 的步骤:1、将下载的压缩包解开,将得到 5 个文件2、在“我的电脑”中搜索“gl.h”,并找到其所在文件夹(如果是 VisualStudio,则应该是其安装目录下面的“C:Program Files (x)Windows Kits8.1Includeumgl 文件夹”) 。把解压得到的 glut.h 放到这个文件夹。3、把解压得到的 glut.lib 和 glut.lib 放到静态函数库所在文件夹(如果是 VisualStudio,则应该是其安装目录下面的“C:Program Files (x)Windows Kits8.1Lib”文件夹) 。4、把解压得到的 glut.dll 和 glut.dll 放到操作系统目录下面的 system 文件夹内。 (典型的位置为:C:WindowsSystem)第三步,建立一个 OpenGL 工程这里以 VisualStudio 为例。选择 File->New->Project,然后选择 Win控制台程序,点击确定第一个 OpenGL 程序

推荐整理分享OpenGL 入门教程1(opengl入门视频教程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:opengl入门视频教程,opengl使用教程,opengl入门教程(精),opengl入门书,opengl入门教程(精),opengl入门视频教程,opengl教程48讲,opengl 入门教程,内容如对您有帮助,希望把文章链接给更多的朋友!

OpenGL 入门教程1(opengl入门视频教程)

一个简单的 OpenGL 程序如下: (注意,如果需要编译并运行,需要正确安装 GLUT,安装方法如上所述)

该程序的作用是在一个黑色的窗口中央画一个白色的矩形。下面对各行语句进行说明。怎么样?代码还不算长吧?首先,需要包含头文件#include <GL/glut.h>,这是 GLUT 的头文件。本来 OpenGL 程序一般还要包含<GL/gl.h>和<GL/glu.h>,但 GLUT 的头文件中已经自动将这两个文件包含了,不必再次包含。然后看 main 函数。int main(int argc, char *argv[]),这个是带命令行参数的 main 函数,各位应该见过吧?没见过的同志们请多翻翻书,等弄明白了再往下看。注意 main 函数中的各语句,除了最后的 return 之外,其余全部以 glut 开头。这种以 glut 开头的函数都是GLUT 工具包所提供的函数,下面对用到的几个函数进行介绍。1、glutInit,对 GLUT 进行初始化,这个函数必须在其它的 GLUT 使用之前调用一次。其&#;式比较死板,一般照抄这句 glutInit(&argc, argv)就可以了。2、 glutInitDisplayMode, 设置显示方式, 其中GLUT_RGB表示使用RGB颜色, 与之对应的还有GLUT_INDEX(表示使用索引颜色) 。 GLUT_SINGLE 表示使用单缓冲, 与之对应的还有 GLUT_DOUBLE (使用双缓冲) 。更多信息,请自己 Google。当然以后的教程也会有一些讲解。3、glutInitWindowPosition,这个简单,设置窗口在屏幕中的位置。4、glutInitWindowSize,这个也简单,设置窗口的大小。5、glutCreateWindow,根据前面设置的信息创建窗口。参数将被作为窗口的标题。注意:窗口被创建后,并不立即显示到屏幕上。需要调用 glutMainLoop 才能看到窗口。6、glutDisplayFunc,设置一个函数,当需要进行画图时,这个函数就会被调用。 (这个说法不够准确,但准确的说法可能初学者不太好理解,暂时这样说吧) 。7、glutMainLoop,进行一个消息循环。 (这个可能初学者也不太明白,现在只需要知道这个函数可以显示窗口,并且等待窗口关闭后才会返回,这就足够了。 )在 glutDisplayFunc 函数中,我们设置了“当需要画图时,请调用 myDisplay 函数”。于是 myDisplay 函数就用来画图。观察 myDisplay 中的三个函数调用,发现它们都以 gl 开头。这种以 gl 开头的函数都是 OpenGL的标准函数,下面对用到的函数进行介绍。1、glClear,清除。GL_COLOR_BUFFER_BIT 表示清除颜色,glClear 函数还可以清除其它的东西,但这里不作介绍。2、glRectf,画一个矩形。四个参数分别表示了位于对角线上的两个点的横、纵坐标。3、glFlush,保证前面的 OpenGL 命令立即执行(而不是让它们在缓冲区中等待) 。其作用跟 fflush(stdout)类&#;。

OpenGL 函数 gluLookAt() glScalef() glTranslatef() glRotatef() glFrustum() glPerspective() 的使用 转自:

解决安装OpenGL时程序运行提示glut.dll丢失的问题 今天开始第一次带实验,有点小紧张。虽然中途出现了一些小波折,比如教室安排有误和教室没有投影仪。。但同学们都比较主动,同时帮助我解决了

OpenGL编程逐步深入(一)创建一个窗口 原文地址:

标签: opengl入门视频教程

本文链接地址:https://www.jiuchutong.com/biancheng/373056.html 转载请保留说明!

上一篇:error C2258: illegal pure syntax, must be '= 0'

下一篇:OpenGL 函数 gluLookAt() glScalef() glTranslatef() glRotatef() glFrustum() glPerspective() 的使用(opengl 函数可以在子线程中调用吗)

  • 取得的证券投资业绩
  • 来料加工增值税率
  • 增值税专用发票有效期是多长时间
  • 支付转让费待摊怎么做账
  • 收到政府土地补偿,用于种植农作物
  • 印花税申报减免额不能为0怎么报
  • 自制原始凭证和原始凭证的区别
  • 非独立核算的分公司怎么做账
  • 公司未开展业务就没有债权债务吗
  • 网上银行 电子回单
  • 当月发票入库核销怎么算
  • 退货冲减收入
  • 花卉租赁发票税率是多少
  • 固定资产对外投资的税务处理
  • 房开公司需要资质吗
  • 企业财务月确定不当造成税务问题
  • 企业捐赠现金支出应在哪个项目反应
  • 坏账的计提和发生分录
  • 医疗卫生机构可以向其他单位或者个人分发第一类疫苗
  • 材料未到,货款尚未支付
  • 英雄联盟登录失效怎么回事
  • 收到投资款如何记账
  • 华为鸿蒙怎么打开5g
  • 专项储备属于什么科目代码
  • 车辆保险费计入车辆的入账成本吗
  • 王者荣耀中苏烈的最强出装
  • 外贸企业红字发票怎么冲
  • vue3.0项目
  • 企业怎么知道增值税的核定方法
  • 半球形的谢尔亨里克森天文台,挪威斯瓦尔巴群岛 (© Vincent Fournier/Gallery Stock)
  • php 集成环境
  • 关于php中一些字符的数据
  • consul框架
  • yii框架的优点及原理
  • 会计有哪几种
  • meta最新模型
  • chatplus
  • php入门实例
  • 转出未交增值税怎么算
  • 印花税减半征收减免性质代码
  • python的pillow库如何安装
  • 公司抽奖奖品怎么做账
  • 减值损失和减值损失区别
  • 收回多发的工资在上缴财政,可以用应缴财政款科目吗
  • 银行账户维护费怎么做账
  • 在线客服系统登录
  • 企业资产盘亏的定性依据
  • MySQL中Nested-Loop Join算法小结
  • 累计销售额怎么算
  • 增值税减免税在贷方
  • 什么是金税四期什么时候上线
  • 物流企业货损赔付标准
  • 债券到期的账面价值计算
  • 收到跨月的费用发票怎么入账
  • 国外工程合同类型
  • 申请国家知识产权的条件
  • 公司向个人借款利息可以税前扣除吗
  • 应收款挂账是什么意思
  • 食堂没发票如何记账
  • 会计凭证的粘贴顺序
  • 本年利润有余额么
  • sqlserver性能优化方案
  • 看过有趣的童话书,简单介绍下
  • win8.1关机没反应
  • 卷影复制是什么
  • linux常用帮助命令
  • 防盗信息
  • win7系统怎么启动讲述人
  • 升级win10错误
  • win7打不开任务栏
  • window10如何校色
  • win7怎么取消开机选择系统
  • win10一直重置
  • shell if-z
  • Node.js中的construct
  • jquery点击事件写法
  • javascript制作小程序
  • 年轻干部是什么意思
  • 地税局有实权吗
  • 教育培训行业的前景
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设