教程 > Lua 教程 > Lua 高级 阅读:144

Lua 游戏编程

Lua 因其简单的语言结构和语法而被用于许多游戏引擎中。 由于使用了丰富的图形,垃圾收集功能在消耗大量内存的游戏中通常非常有用。 一些使用 Lua 的游戏引擎包括

  • Corona SDK
  • Gideros Mobile
  • ShiVa3D
  • Moai SDK
  • LOVE
  • CryEngine

这些游戏引擎中的每一个都基于 Lua,并且每个引擎中都有一组丰富的 API 可用。 我们将简要介绍每个功能。


Corona SDK

Corona SDK 是一个跨平台的手机游戏引擎,支持 iPhone、iPad 和 Android 平台。 Corona SDK 有一个免费版本,可用于功能有限的小游戏。 我们可以在需要时升级到其他版本。

Corona SDK 提供了许多功能,其中包括:

  • 物理和碰撞处理 API
  • Web 和网络 API
  • 游戏网络 API
  • 广告 API
  • 分析 API
  • 数据库和文件系统 API
  • 加密和数学 API
  • 音频和媒体 API

使用上述 API 开发应用程序比单独使用 iOS 和 Android 的原生 API 更容易、更快捷。


Gideros Mobile

Gideros 提供跨平台 SDK 来为 iOS 和 Android 创建游戏。它可以免费与 Gideros 飞溅一起使用。 Gideoros 的一些显着优势包括:

  • Development IDE - 它提供了自己的 IDE,可以更轻松地开发 Gideros 应用程序。
  • 即时测试 - 在开发游戏时,只需 1 秒即可通过 Wifi 在真实设备上进行测试。我们无需在导出或部署过程上浪费时间。
  • Plugins - 我们可以使用插件轻松扩展核心。导入我们现有的(C、C++、Java 或 Obj-C)代码,绑定到 Lua 并直接解释它们。数十个开源插件已经开发并可以使用。
  • 干净的 OOP 方法 - Gideros 提供了自己的类系统以及所有基本的 OOP 标准,使您能够为未来的任何游戏编写干净且可重用的代码。
  • 本机速度- 在 C/C++ 和 OpenGL 之上开发,我们的游戏以本机速度运行,并充分利用下面的 CPU 和 GPU 的力量。

ShiVa3D

ShiVa3D 是 3D 游戏引擎之一,它提供了一个图形编辑器,旨在为 Web、控制台和移动设备创建应用程序和视频游戏。 它支持多种平台,包括 Windows、Mac、Linux、iOS、Android、BlackBerry、Palm OS、Wii 和 WebOS。

一些主要功能包括

  • 标准插件
  • 网格修改 API
  • IDE
  • 内置地形、海洋和动画编辑器
  • ODE 物理引擎支持
  • 全光照贴图控制
  • 材质、粒子、轨迹和 HUD 的实时预览
  • Collada 交换格式支持

Shiva3d 的网络版是完全免费的,我们订阅了其他版本。


Moai SDK

Moai SDK是一个跨平台的手游引擎,支持iPhone、iPad、Android平台。 Moai平台最初由开源游戏引擎Moai SDK和用于托管和部署游戏服务的云平台Moai Cloud组成。 现在摩艾云已经关闭,只有游戏引擎可用。

Moai SDK 可在多个平台上运行,包括 iOS、Android、Chrome、Windows、Mac 和 Linux。


LOVE

LOVE 是一个可用于制作 2D 游戏的框架。 它是免费和开源的。 它支持 Windows、Mac OS X 和 Linux 平台。

它提供了多种功能,包括,

  • 音频 API
  • 文件系统 API
  • 键盘和操纵杆 API
  • 数学 API
  • 窗口和鼠标 API
  • 物理 API
  • 系统和计时器 API

CryEngine

CryEngine 是由德国游戏开发商 Crytek 开发的游戏引擎。 它已经从第 1 代发展到第 4 代,是一种先进的开发解决方案。 它支持 PC、Xbox 360、PlayStation3 和 WiiU 游戏。

它提供了多种功能,包括,

  • 视觉效果,如自然光和动态软阴影、实时动态全局照明、光传播量、粒子着色、曲面细分等。
  • 角色动画系统和角色个性化系统。
  • 参数化骨骼动画和独特的专用面部动画编辑器
  • 人工智能系统,如多层导航网格和战术点系统。 还提供设计师友好的人工智能编辑系统。
  • 在游戏混音和分析,数据驱动的声音系统动态声音和互动音乐等方面。
  • 物理特性,如程序变形和高级绳索物理。

结束语

这些游戏 SDK/框架中的每一个都有自己的优点和缺点。 在它们之间进行适当的选择会使我们的任务更轻松,并且我们可以享受更好的时间。 因此,在使用它之前,我们需要了解游戏的需求,然后分析哪些满足您的所有需求,然后再使用它们。

查看笔记

扫码一下
查看教程更方便