位置: 编程技术 - 正文

【OpenGL基础篇】——使用面向对象方法封装OpenGL函数(一)(opengl使用教程)

编辑:rootadmin

推荐整理分享【OpenGL基础篇】——使用面向对象方法封装OpenGL函数(一)(opengl使用教程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:opengl基础教程,opengl详解,opengl使用教程,opengl详解,opengl使用教程,opengl基础知识,opengl基础教程,opengl基础知识,内容如对您有帮助,希望把文章链接给更多的朋友!

OpenGL是一个开源的图形库,既可开发二维图形软件,也可开发三维图形软件。许多知名应用就是基于OpenGL开发出来,如著名的Artoolkit和Unity3D。

GLUT是代表OpenGL应用工具包,英文全称为OpenGL Utility Toolkit,是一个和窗口系统无关的软件包,它由Mark Kilgard在SGI时写的。作为AUX库的功能更强大的替代品,用于隐藏不同窗口系统API的复杂性。(百度百科)

因为OpenGL的API是底层图形库API,使用起来还是有些复杂,所以,我打算使用面向对象的方法将OpenGL和GLUT库的函数封装成一个图形类库,顺便学习一下计算机图形学(这学期的课)的基础知识以及面向对象的编程方法。懂了这些底层的东西,对理解Unity3D这样的游戏引擎也有好处。

使用的是GLUT,所以只实现了一些简单的功能,以后慢慢扩展,这只是(一)。

虽然是使用C&#;&#;来编写类库,但还是融入了一点Java的东西,比如,类库中的所有类都是Object的子类(用于实现多态)。

下面是Object类:

然后是一个Window类,就是窗口(以前学MFC等语言时,最怕的就是API和可选择解决方案多,所以我在这里只写了少数几个函数,毕竟只是为了学习)【OpenGL基础篇】——使用面向对象方法封装OpenGL函数(一)(opengl使用教程)

下面是实现的Cpp文件:

然后是一个颜色Color类,暂时只支持RGB模式,从现在起,我会尽量把声明和定义都写在一个文件里,就像Java那样。

接下来就是绘图里面最重要的了——Point,有了点,才能有一切

最后就是最重要的应用程序Application类了,这个类用于添加窗口以及图像重绘刷新

下面是一个测试文件,只画了一条紫色虚线:

出来的效果如下图:

黑色的屏幕中间有一条紫色的虚线。

今天的代码漏了很多重要的东西,比如窗口背景颜色的设定等,以后随着学习的慢慢深入,会一一添加。

【OpenGL基础篇】——使用面向对象方法封装OpenGL函数(二) 今天封装了一个Line类,负责在昨天写的窗口上绘制线条。OpenGL绘图是通过给glBegin函数设置参数达成的,绘制线条有三个不同的参数:GL_LINES:绘制连接两

OpenGL编程—>error解析 错误1errorC:编译器的堆空间不足c:programfiles(x)microsoftvisualstudio.0vcincludeglglew.hConsoleApplication8解决方案:#ifdefined(__gl_h_)||defined(__GL_H__)||defined(__X

OpenGL编程->图形处理器的对比 最近初学GLSL编程,可是自己电脑出现的结果很是头痛,幸亏自己的电脑是双显卡的,设置改了一下,就得到一下的结果:

标签: opengl使用教程

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

上一篇:OpenGL 资源汇编(opengl源码在哪里)

下一篇:【OpenGL基础篇】——使用面向对象方法封装OpenGL函数(二)(opengl1)

  • 国际重复征税的前提条件是
  • 以前年度多计收入多交税怎么处理
  • 个人所得税手续费奖励是否交个税
  • 交易性金融资产的交易费用计入哪里
  • 研发费用属于哪个费用
  • 技术成果投资入股企业所得税递延纳税备案表
  • 计划成本下存货盘盈
  • 纳税人申请退税需要报送的资料和证件有
  • 销售企业资金风险点有哪些呢
  • 工业会计成本核算分录
  • 公司拓展训练入什么会计科目核算做分录?
  • 公司收个人不开票的货款是否可以收取现金?
  • 计提税费怎么写分录
  • 抵押贷款评估费用标准
  • 公司房产税如何征收税率
  • 金融企业发放贷款时发生的交易费用
  • 在年度汇算清缴前取得去年成本发票
  • 如何计算非居民用电量
  • 外贸企业当期认证的发票没申报影响退税吗?
  • 餐听发票可以开专用发票吗?
  • 2016的发票2017年还能用吗?
  • 发放工资的会计科目
  • 关联企业之间借款的处理
  • 对方承担税费怎么做会计分录
  • 银行承兑 贷款
  • 带息负债融资成本率意义
  • 投资收益科目的借贷方向
  • 购进土地会计分录
  • win7为什么现在不能用了
  • win10怎么推送win11
  • win10新版本21h1
  • 在php中,字符串有哪些表示形式
  • 公司转让自建厂房怎么办
  • PHP:pcntl_strerror()的用法_PCNTL函数
  • 银行发行债券要求
  • jsonobject忽略字段
  • yii框架安装
  • thinkphp框架介绍
  • php分页技术
  • 餐费进什么科目
  • python 批量
  • pytorch csdn
  • 会计证的作用和用途
  • 或有资产什么时候要披露
  • phpstudy配置php环境变量
  • sql server配置文件在哪
  • mysql集群三种方式
  • mongo mysql区别
  • 账簿启用交接表图片
  • 预付账款购进原材料怎么做账
  • 上月未结账本月是否能记账
  • 信用减值损失会影响营业利润吗
  • 用于维修安装服务的工具
  • 企业增资会计科目
  • 营改增之后账务怎么处理
  • 低值易耗品如何界定
  • 存货跌价准备的账务处理
  • 其他综合收益什么情况下转入留存收益
  • 运输公司赔偿账务处理
  • 不按规定纳税的违法行为
  • 一般纳税人怎样开3个点的专票
  • 以前年度多计提了费用
  • 防洪费的税率是多少
  • 残保金计算公式2023年
  • 如何理解应收账款平均余额
  • 利息税额计算公式
  • cmdexe文件损坏
  • 你能可能
  • 运维zabbix
  • win7点开始一直跳闪
  • js中的原型是什么
  • tensorflow for
  • python 处理mp3
  • 批处理 leq
  • 基拉大和 freedom
  • node服务器部署
  • jquery中删除节点方法
  • 广州车船税每年交多少
  • 辽宁房产税征收标准
  • 河南省纪检委网站
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设