如何创建基础和高级的俯视视角(上下左右)移动!我注意到这里缺乏关于如何编写代码的合适指南,因此作为GameMaker的顶级评测者,我决定亲自来做一份 :) 欢迎! 这是我的第一份指南,所以如果内容有些混乱,还请见谅! 本指南假设你是GameMaker的新手,或者只是在寻找一份快速易懂的指南! 如果你是GameMaker新手,我强烈建议你手动输入代码,而不是复制粘贴,这比你想象的更有帮助。 对象和精灵 在本指南中,我们只需要一个对象,我将其命名为oPlayer。你也可以使用objPlayer、obj_player甚至o_player!这些命名方式都是可以的!要创建对象,请转到资源浏览器(默认情况下位于窗口最右侧)。右键点击对象文件夹,将鼠标悬停在“创建”上,此时会展开一系列选项。然后找到并点击“对象”(撰写本文时,它应该是第5个选项)。我会将其命名为oPlayer,你也可以这样做!

对精灵执行与之前相同的操作,你可以随意命名,但我会将我的精灵命名为sPlayerIdle。

请确保在继续操作前导入或绘制玩家精灵,并将其添加到玩家对象中。 设置房间 警告:以下操作仅用于测试,请勿按此方式构建游戏。 1. 在资源浏览器中创建和/或打开room1! 2. 选择room1后,将注意力转移到通常位于最左侧的检查器。 3. 将房间设置更改为以下内容(你可以随意调整这些设置,这完全是一个学习过程!): - 房间设置:宽度=320,高度=180 - 视口和相机:启用视口✔️ - 视口0:可见✔️ - 相机宽度和高度=房间设置 - 视口宽度=1280,视口高度=720

找到玩家对象并将其拖入房间中心

我强烈建议你观看相关视频来了解如何在游戏中添加相机! 编写代码(创建) 这里我会讲解如何添加事件!你可以直接跳转到下一个标题——【代码】部分。 基础操作 在添加代码之前,我们需要先添加事件!我不会深入讲解事件的工作原理,简单来说,事件决定了代码的运行方式和时机! 在资源浏览器中双击玩家对象。此时工作区会打开一个窗口。 在玩家对象的【事件】选项卡中,右键点击并选择【添加事件】。

添加创建事件和步事件。 不要添加开始步或结束步。 代码部分 现在到了有趣的环节(至少对我来说是这样♥️) 在开始之前,你的窗口应该看起来类似这样。

首先,我们要添加移动变量,请仔细按照步骤操作,并且在我换行的地方也进行换行! // 任何以//开头的文本都表示注释,不会产生任何影响,你可以选择不添加。 moveX = 0; moveY = 0; moveSpeed = 1; // 可以改成你喜欢的任何数字!(低分辨率游戏不要使用小数) currentMoveSpeed = moveSpeed; // 设置输入变量 inputX = 0; inputY = 0; 创建事件部分我们已经完成了!:0 编写代码(步事件) 开始之前,请确保你处于步事件窗口! 规则和之前一样! 请仔细按照步骤操作,并且在我换行的地方也进行换行! // 任何以//开头的文本都表示注释,不会产生任何影响,你可以选择不添加。编写代码//设置移动输入按键 右移 = 键盘检测(ord("D")) 左移 = 键盘检测(ord("A")) 上移 = 键盘检测(ord("W")) 下移 = 键盘检测(ord("S")) //为输入添加控制 //这是一个基本等式,用于设置移动的正确x/y值 输入X = 右移 - 左移; 输入Y = 下移 - 上移; //归一化向量,确保玩家在所有方向上以一致速度移动 变量 移动长度 = 平方根(输入X * 输入X + 输入Y * 输入Y); 如果 (移动长度 > 0) { 输入X /= 移动长度; 输入Y /= 移动长度; } //获取移动量 移动X = 输入X * 当前移动速度; 移动Y = 输入Y * 当前移动速度; //将移动添加到实例 x += 移动X; y += 移动Y; //行走动画




换一换 
















