OpenGL ES 3D 图形编程入门
1. 从 2D 到 3D 的过渡
在之前的开发中,我们借助 OpenGL ES 成功创建了 2D 游戏,如 Super Jumper。现在,是时候迈入 3D 图形编程的领域了。其实,在定义视锥体和精灵顶点时,我们已经在 3D 空间中进行操作了,只不过默认情况下每个顶点的 z 坐标都被设为 0。3D 渲染与 2D 渲染的差异主要体现在以下几个方面:
- 顶点坐标 :顶点不仅有 x 和 y 坐标,还增加了 z 坐标。
- 投影方式 :采用透视投影而非正交投影。
- 物体显示 :离相机越远的物体看起来越小。
- 变换自由度 :旋转、平移和缩放等变换在 3D 中有更多的自由度,可以在三个轴上自由移动顶点。
- 相机定义 :可以在 3D 空间中定义任意位置和方向的相机。
- 渲染顺序 :物体三角形的渲染顺序变得重要,离相机近的物体必须覆盖离相机远的物体。
幸运的是,我们之前搭建的框架已经为 3D 开发奠定了基础,只需对几个类进行微调即可。
2. 准备工作
在开始 3D 编程之前,我们需要做一些准备工作。和之前一样,我们会编写几个示例。首先会有一个启动活动展示示例列表,并且会复用之前创建的整个框架,包括 GLGame、GLScreen、Texture 和 Vertices 类。
启动活动名为 GL3DBasicsStarter
超级会员免费看
订阅专栏 解锁全文
1429

被折叠的 条评论
为什么被折叠?



