Libgdx Developer's Guide(Libgdx开发者手册)-1
来源:互联网 发布:9wifi九维网络官网下载 编辑:程序博客网 时间:2024/06/09 03:52
简介
Libgdx 是一个跨平台的游戏对象开发框架。目前支持的开发平台有:Windows, Linux, Mac OS X, Android, iOS 和 HTML5。
Libgdx 允许一次编码无需修改即可发布到多个平台。与其等待最新的修改被布置至设备或者编译为HTML5语言,你可以在桌面环境开发你的应用,主要受益于一个极快的迭代周期。你可以使用Java系列的所有工具用以开发。
Libgdx 使你可以尽可能地深入底层,它允许直接访问文件系统,输入设备,音频设备,通过统一的OpenGL ES 1.x 和 2.0接口来访问OpenGL。
在这些底层设备之上,我们建立了一组强大的API帮助你完成普通的游戏开发任务,例如:画面和文本的渲染,构建用户界面,播放声音效果和音乐流,线性代数与三角函数计算,解析JSON和XML等等。
必要时,Libgdx 抛开Java转而使用本地代码以获取尽可能好的性能。所以的这些功能都隐含在Java API中,因此你不用担心全平台的本地代码交叉编译。Libgdx的许多代码都在解决已知的平台问题,所以你不必自己处理。
Libgdx的目标是成为一个框架而不仅仅是引擎,尽管我们也承认根本没有一劳永逸的解决方案。然而,我们提供给你强大的抽象类让你自己选择怎样编写你的游戏或应用。
站在巨人的肩膀上
Libgdx使用了大量的第三方库来提供其功能:
目标与特点
Libgdx 是一个Java框架,提供跨平台API用以游戏或者实时应用开发。它有以下特点:
概述
- 跨平台开发: Windows, Linux, OSX, iOS, Android 和HTML5((32- 和 64-bit 可用).
- 多后台,基于 Jogl, LWJGL, Angle (NVIDIA 3D Vision), Android APIs, iOS APIs 和 WebGL/HTML5 APIs.
- 在桌面上编写和测试代码, 无缝部署至 Android, iOS, 纯 Javascript, Applets, Webstart 或简单的桌面应用.
- 在所有平台使用 OpenGL ES 1.0, 1.1 和 2.0 渲染.
- 通过自定义JNI绑定在Android2.0及以上版本支持 OpenGL ES 2.0.
- 底层:
- 顶点数组
- 顶点缓冲对象
- 纹理
- 纹理地图
- 同时为固定和可编码的管道提供易用灵活的网格类
- 帧缓冲对象
- 描影
- 即时模式渲染类(用以调试glBegin()/glEnd())
- 自动处理OpenGL上下文缺失 (纹理和 VBO游戏)
- 高级 2D:
- 批处理和缓存画面渲染
- 位图字体
- 粒子系统
- TMX 瓷砖地图渲染
- 基于位图操作为CPU自定义C 2D图形库
- 全面的2D场景图与补间框架
- 高级 3D (正在编写):
- OBJ和MD5模型装载器
- 关键帧骨骼动画
- 正投影与透视相机
- .. 待添加 ..
音频
- 流媒体音乐和音效播放,格式:WAV, MP3 and OGG
- 通过JNI桥接至 KissFFT 的快速傅里叶变换。
- 通过JNI桥接至Tremor and libmpg123 的OGG和MP3音频解码。 (libmpg123 因为许可证的问题目前已不使用)
- 直接的接口用以音频设备播放与录制。
文件 I/O
- 统一的抽象层,包括 Android资源,类路径资源和普通文件系统.
- 易存储的小数据可存储至优先选项(Preferences)
输入
- 轮询和基于事件的触屏和鼠键访问机制.
- 轮询访问指南针和加速度计
- 振动器支持 (yeah...)
- 远程输入事件处理允许你将Android手机连接至桌面应用
- 完整的 box2d JNI封装.
- 此封装非常优秀,其他所有的Android游戏框架和引擎都在使用。
数学
- 2D,3D线性代数向量和矩阵类
- 4元数
- Frustum with culling support
- 边界形状
- 交集重叠测试
- Catmull-Rom 曲线
- 任意平面多边形Ear裁剪
实用
- 自定义集合
- 排序
- JSON
工具与扩展
- 粒子编辑器
- Hiero点阵字形发生器
- 纹理打包器
- 主题化的 Widget 库 支持
- Awesomium JNI 桥 (仅支持Windows 32-bit)
优化
- 对Dalvik虚拟机的需求量身定做的最佳实践准则
- 运行时无临时对象分配 (除了一些文档部分)
- 关键部分的本地代码实现
- 开放-关闭 Dalvik/Harmony bug的工作
Libgdx是什么
一个高性能,跨平台的引擎和游戏开发基础框架。作为一个框架,我们把重点放在建造坚实的基础,而不是实现最新最大的游戏引擎架构。Libdgx提供所有的灵活性来帮助你而不是让你使用严格的方法。
Libgdx不是什么
一个除了厨房水槽之外几乎包括了所有东西的游戏引擎.
(本想逐章翻译,无奈实在没多少时间,这里做一个简介,下节开始动手实践)
- Libgdx Developer's Guide(Libgdx开发者手册)-1
- Libgdx Developer's Guide(Libgdx开发者手册)-5(生命周期)
- Libgdx Developer's Guide(Libgdx开发者手册)-2(项目创建、运行和调试)
- Libgdx Developer's Guide(Libgdx开发者手册)-3(运行示例与测试)
- Libgdx Developer's Guide(Libgdx开发者手册)-4(应用框架)
- Libgdx Developer's Guide(Libgdx开发者手册)-6(启动类与配置)
- Libgdx Developer's Guide(Libgdx开发者手册)-8(一个简单的游戏)
- Libgdx Developer's Guide(Libgdx开发者手册)-7(查找,日志,线程,特定平台代码的接口)
- Libgdx Developer's Guide(Libgdx开发者手册)-9(一个简单的游戏2--扩展示例游戏)
- libGDX
- LibGDX
- Libgdx's Files
- (转)WTL开发者指南(WTL Developer’s Guide翻译)
- libgdx 学习历程 - 1
- libgdx 学习笔记(1)
- Libgdx桌面项目1
- (libgdx学习)pixmap(1)
- libgdx 1.4.1发布
- 十、Android关于蓝牙四个常用类
- ios 键盘类型
- css hack技巧
- 杭电 1249 三角形
- JavaScript总结
- Libgdx Developer's Guide(Libgdx开发者手册)-1
- 如何使用Viz Artist脚本更改场景中的文字字体
- DOM总结
- Linux入门学习-文件操作_第六章
- 5 Reasons It’s Time to Ditch MySQL
- JVM调优总结(十)-调优方法
- [项目]银行业务调度系统
- VC++ 表格、完整性约束、视图、触发器、存储过程的创建SQL语句
- 基于Ifilter接口的文档解析