Android 中使用OpenGL ES进行2D开发(介绍篇)

本文介绍了OpenGLES的基本概念及其与OpenGL的区别,重点讲述了OpenGLES的应用场景及3D图像编程中的关键要素,包括物体、光照、照相机和Viewport的概念,并解释了透视投射和平行投射两种主要的投射方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


1.先来看下什么是OpenGL ES

OpenGL是(Open Graphics Library)的缩写,
OpenGL ES 的目标设备包括手机,家电,以及车辆。因为OpenGL ES 必须比OpenGL 小,所以它删减了许多功能。例如,OpenGL ES 无法直接支持矩形的绘制,必须绘制两个三角形来构成一个矩形。
两个都是由Khronos Group维护,该协会由ATI, NVIDIA, and Intel等公司


2.编程的模型


从上面的这张图我们可以看到一般模型有这么4个东西组成:物体,光照,照相机,Viewport
最后一个ViewPort就是我们要关注的地方,整个虚拟3D这么大,我们不可能关注整个,一般关注一点范围内的。
这里要说明的是OpenGL ES 是 3D 图像编程 API。所以我们所做的所有事情都是在3D当中,这里讲的2D开发,只是我们做的让它看起来只有两个纬度(dimension),把z轴设置为0.

3.投射( Projections)


投射主要分下面的两种。
1.透视投射 (perspective projection) ,远处的物体会小些,像我们现实中眼睛看到的样子
2.平行投射(parallel projection) 不管物体离摄像机多远,物体大小不变,一般用在2D编程

先讲到这里吧。 注意这里的文章参考了《Beginning Android Game》和《精通Android 2》两本书

文章源地址 http://www.waitingfy.com/?p=23

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

瓦力冫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值