位置: 编程技术 - 正文

openGL ES 2.0开发流程(opengl es应用开发实践指南(android卷)pdf)

编辑:rootadmin

推荐整理分享openGL ES 2.0开发流程(opengl es应用开发实践指南(android卷)pdf),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:opengl es应用开发实践指南,opengl es 3.0编程指南,opengl es 3.0编程指南,opengl es2.0应用,opengl es3.2,opengl es2.0应用,opengl es2.0编程指南pdf,opengl es应用开发实践指南,内容如对您有帮助,希望把文章链接给更多的朋友!

一:添加必须的framework(框架)

OpenGLES.frameworks和QuartzCore.framework

二:修改OpenGLView.h

引入OpenGl的Header,创建一些后面会用到的实例变量

CAEAGLLayer* _eaglLayer;

EAGLContext* _context;

GLuint _colorRenderBuffer;

三:设置layer class为CAEAGLLayer

&#; (Class)layerClass{

return [CAEAGLLayer class];

}

想要显示OpenGL的内容,需要把它缺省的layer设置为一个特殊的layer。(CAEAGLLayer)。这里通过直接复写layerClass的方法。

四:设置layer为不透明(Opaque)

- (void)setupLayer{

_eaglLayer = (CAEAGLLayer*)self.layer;

_eaglLayer.opaque = YES;

}

因为缺省的话,CALayer是透明的。而透明的层对性能负荷很大,特别是OpenGL的层。(如果可能,尽量都把层设置为不透明。另一个比较明显的例子是自定义tableView cell)

五:创建OpenGL context

-(void)setupContext{

openGL ES 2.0开发流程(opengl es应用开发实践指南(android卷)pdf)

EAGLRenderingAPI api = kEAGLRenderingAPIOpenGLES2;

_context = [[EAGLContext alloc] initWithAPI:api];

if(!_context) {

NSLog(@“Failed to initialize OpenGLES 2.0 context”);

exit(1)

}

if(![EAGLContext setCurrentContext:_context]) {

NSLog(@“Failed to set current OpenGL context”);

exit(1);

}

}

无论你要OpenGL帮你实现什么,总需要这个EAGLContext。EAGLContext管理所有通过OpenGL进行draw的信息。这个与Core Graphics context类&#;。当创建一个context,要声明需要哪个version的API。这里,选择OpenGL ES 2.0。(容错处理,如果创建失败了,我们的程序会退出)

六:创建render buffer(渲染缓冲区)

-(void)setupRenderBuffer{

glGenRenderbuffers(1, &_colorRenderBuffer);

glBindRenderbuffer(GL_RENDERBUFFER, _colorRenderBuffer);

[_context renderbufferStorage:GL_RENDERBUFFER fromDrawable:_eaglLayer];

}

Render buffer是OpenGL的一个对象,用于存放渲染过的图像。有时候你会发现render buffer会作为一个color buffer被引用,因为本质上它就是存放用于显示的颜色。

创建render buffer的三步:

1.调用glGenRenderbuffers来创建一个新的render buffer object。这里返回一个唯一的integer来标记render buffer(这里把这个唯一&#;赋&#;到——colorRenderBuffer)。有时候你会发现这个唯一&#;被用来作为程序内的一个OpenGL的名称。(反正它是唯一的)

2.调用glBindRenderbuffer,告诉这个OpenGL:我在后面引用GL_RENDERBUFFER的地方,其实是想用_colorRenderBuffer。其实就是告诉OpenGL,我们定义的buffer对象是属于哪一种OpenGL对象。

3.最后,为render buffer分配空间。renderbufferStorage

七:创建一个frame buffer(帧缓冲区)

C#+OpenGL编程之OpenGL 变换(机器人) 本文基础:C#OpenGL编程之环境搭建原书第三章使用了一个机器人完成变换。正如基础教程所述,我们现在使用C#继承来修改基础场景。usingSystem;usingSystem.C

C#+OpenGL编程之OpenGL 光照 本文基础:C#OpenGL编程之环境搭建现在是第四章OpenGL光照,这章开始,我遇到麻烦了,因为原书的auxSolidSphere这个函数,C#没有封装,我就把例程修改为

C#+OpenGL编程之环境搭建(windows) 现在各种引擎红红火火,为什么还要开图像基础呢?现在的游戏开发中游戏引擎有什么样的地位,是不是不可缺少的。我觉得游戏引擎或多或少的会对

标签: opengl es应用开发实践指南(android卷)pdf

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

上一篇:视锥裁剪(视锥是什么意思)

下一篇:C#+OpenGL编程之OpenGL 变换(机器人)(c#怎么使用opencv)

  • 跨年发票入账账务处理
  • 二手房交易需缴纳哪些费用
  • 一般纳税人开劳务发票几个点
  • 代扣代缴个人所得税有滞纳金吗
  • 公司交房租没有开票能记账?
  • 海关完税凭证抵扣清单在哪里
  • 企业所得税预缴少申报案例
  • 通行费电子发票可以抵扣吗
  • 固定资产净残值率是多少
  • 接受捐赠材料支付的运费 扣除
  • 不在境内劳务是否付企业所得税
  • 计提的费用年底要冲回吗
  • 材料折扣率
  • 处理报废的固定资产
  • 公司之间有哪些关系
  • 收取的职工房租如何入账
  • 2018年房地产行业分析
  • 单位的审计
  • 工会经费的会计分录2023
  • 研发样机转销售合法吗
  • 物业公司收空调费怎么交税
  • 什么叫保理支付
  • 银行承兑汇票背书会计分录
  • 广告法 保险公司承保
  • php怎么做网页
  • 分享php源码批量运行
  • 重装系统j
  • linux相关命令及用法
  • pavmail.exe - pavmail进程是什么文件 有什么用
  • bug is
  • win11怎么清理电脑垃圾
  • 收入成本科目
  • 销售方收到购买方的红字信息表
  • 网络层IP协议的配套协议有哪些
  • 小规模纳税人减半征收的六税两费
  • 网站伪静态有什么用
  • 简单描述php中的数组
  • 工资一定要对公发吗
  • vue要怎么学
  • js基本数据类型和复杂数据类型的区别
  • 多交的城建税可以抵减扣除吗
  • 若依idea
  • 企业销售旧固定产品
  • mysql unique null
  • 利润是非限定净现值吗
  • 无法在common files上设置新的所有者
  • 小规模纳税人是什么意思
  • 付款金额与增值金额区别
  • 固定资产的计提折旧方法有哪些
  • 固定资产出售账面价值计入什么科目
  • 来料加工的增值税怎么核算
  • 上月未记账
  • 收到上月已付款的材料
  • 消费税什么时候计入成本
  • 差旅费包干管理办法
  • 用友t6生成常用凭证
  • 工业企业发生的各项费用都应计入产品成本对不对
  • 企业投资人类型怎么选
  • 收缩后对数据库有影响吗
  • innodb_index_stats导入备份数据时报错表主键冲突的解决方法
  • 怎么设置win7密码
  • mac链接其他屏幕
  • linux find -perm 详解
  • linux 添加ipv6路由
  • optimize error by column count
  • ubuntu系统应用
  • ubuntu发行版介绍
  • ssh可防止什么攻击
  • linux 操作系统
  • win10极限模式
  • win7系统无法共享win10系统打印机
  • shell while
  • shell脚本自动化
  • 在js中如何判断数据类型
  • 使用Raygun对Node.js应用进行错误处理的方法
  • node.js开发实战
  • nodejs cli
  • Javascript字符串对象函数
  • h5实现微信分享
  • 陕西国家电子税务局2.0
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设