GameMaker Studio 2 Language 参考


本手册的这一部分是 GameMaker Studio 2 语言(GML)的参考指南。你可以找到此处记录的所有可用函数以及所需的参数和代码示例,以说明如何使用它们。 有关如何使用 GML 的信息,请参阅手册的 GML 概述 部分。

以下部分介绍了你可以操作项目中的不同资源的函数,包括创建新的动态资源或编辑和更改通过资源树添加到游戏中的资源。

精灵

  1. 通用精灵函数
  2. 骨骼动画精灵

音频

  1. 通用音频函数
  2. 音频发射器
  3. 音频侦听器
  4. 音频组
  5. 音频缓冲区
  6. 音频同步

路径

  1. 通用路径函数
  2. 更改路径
  3. 路径信息

脚本


着色器

  1. 着色器函数
  2. 着色器常量

字体


时间轴


实例

  1. 实例变量
  2. 实例函数
  3. 冻结实例

房间

  1. 全局
  2. 背景
  3. 精灵
  4. 图块集

有两个与游戏资源处理相关的额外函数。这些函数可用于查找任何给定资源的唯一索引值及其所属的资源类型,这为从字符串动态创建游戏资源打开了大门(例如):


此部分包含与游戏特定功能相关的函数和变量,如加载 / 保存或重新启动等...


GameMaker Studio 2 有许多方法可以在游戏房间内移动实例,包括设置速度和方向向量,只需将实例 “放置” 在特定位置,以及使用更复杂的方法,如路径 - 寻找。 还有很多不同的方法可以检测两个实例之间的碰撞,你选择的方法在很大程度上取决于你正在进行的游戏类型以及使用碰撞函数所需的确切情况。以下部分涵盖所有与移动、路径寻找和碰撞相关的函数:

移动


运动设计


碰撞



以下部分都以某种方式与图形操作相关,无论是在屏幕上绘制内容,操纵曲面,还是创建自己的相机或顶点格式:

颜色


GPU 控制


绘制基本窗体


绘制精灵和图块


绘制文本


绘制和创建图元


表面层


粒子


纹理


着色器


以下部分包含用于设置 视图摄像机视口 和游戏 窗口 的所有函数和内置变量,以及为游戏项目设置 GUI 显示

相机


屏幕显示



你可以通过多种不同的方式让玩家控制游戏内容,从使用键盘和鼠标到创建虚拟按键或使用游戏手柄,它们都列在以下部分中:

键盘输入


Mouse Input


设备输入


手势输入


游戏手柄输入


Virtual Keys And Virtual Keyboards



数据结构基本上是你可以存储大量数据的不同方式。 你使用哪一个将完全取决于具体情况的需要,你应该阅读每个部分的介绍页面,以更好地了解它们的工作方式以及何时可以使用它们:

数据结构


栈数据结构


队列数据结构


列表数据结构


映射数据结构


优先队列数据结构


栅格数据结构



以下部分列出了使用实例和全局变量以及使用数组的函数(请注意,变量函数设计用于将 DnD™ 代码转换为 GML 代码或用于兼容性脚本而不是用于新项目中):

变量函数


数组函数



以下部分包含用于处理字符串的所有函数和内置变量:

字符串



以下部分包含用于处理不同数字值和内置变量的所有函数:

日期和时间


实数函数


矢量函数


矩阵函数



以下部分都涉及 GameMaker Studio 2 Box 2D 物理实现的不同方面:

物理概述


物理世界


支架


关节


作用力


柔体粒子


物理变量



以下部分包含与应用内购系统相关的所有函数(请注意,这些函数与 IAP 异步事件 一起使用):

应用内购



以下部分包含所有与 异步事件 一起使用或触发的函数集合,包括 HTTP 函数,云函数和其他一些函数:

异步函数


Facebook


成就和排行榜



此部分具有与创建网络游戏相关的所有函数(即:通过互联网相互通信的游戏):

联网



本节包含特定于创建 HTML5 Web 应用程序的函数,以及一些用于打开 URL 等的一般 Web 功能...

Web(网页端)



GameMaker Studio 2Steamworks API 完全集成,因此你可以考虑使用该平台创建游戏,并从开发的第一天开始集成它提供的不同服务。 有关更多信息,请参阅以下部分:

Steam API


Steam 用户生成内容



在制作游戏时,你需要在某些时候将有关游戏状态的信息存储到文件中。为此,GameMaker Studio 2 具有许多不同的函数,使你能够读取和写入各种不同文件类型的数据:

文件系统概述


文件处理


文件系统函数


INI 文件


文本文件


二进制文件



缓冲区使你可以直接访问内存区域,添加、删除和保存信息作为原始数据。你可以在下面找到缓冲区的详细说明以及如何使用它们以及与它们相关的所有函数:

使用缓冲区


缓冲区



本节中的函数专门用于 UWP 目标平台,然后仅在使用以 Xbox One 为目标平台的 UWP 时使用。这些函数使你可以基本访问 XBox Live 功能:

UWP and Xbox Live



本节包含许多函数,这些函数用于在创建游戏时执行非常具体的操作,并且不完全适合此页面上的任何其他函数组:

杂项



调试代码是制作游戏的重要部分,除了 GameMaker Studio 2 提供的工具(如 调试模块)之外,还有一些额外的函数可以帮助你:

调试



Please note that there are certain functions that have been added to the IDE which will show up only in the compatibility scripts when you import a game made with a previous version of GameMaker Studio. 不应使用 这些功能,仅为兼容性而设计。本手册的以下部分列出了这些功能,以便在你看到它们时知道它们是什么,但请避免在项目中使用它们:.