横版游戏中角色的移动控制是如何实现的?

简介: 横版游戏中角色的移动控制是如何实现的?

今天分享一下横版游戏中角色的移动控制,在一个 2D 的横版游戏中,对于游戏角色的移动控制,其实只需要考虑水平方向上即可。如果角色可以跳跃的话,才需要去考虑垂直方向上的移动,这篇文章只涉及到水平方向上的角色移动控制。



如图,是一个人物角色,我们需要考虑的有两点。


第一点是控制这个角色在水平方向上移动,按向右移动的按钮时,他的位置应该向右移动,按向左移动的按钮时,他的位置应该向左移动。


第二点是控制角色的朝向,向右移动时,角色应该面向右,向左移动时,角色应该面向左。


接下来,我们来到微信小游戏制作工具中,看一下如何实现这样的移动控制功能。


我们先来实现一下利用“摇杆”控制角色的移动。“摇杆”插件位于素材库中,点击“资源管理器”中的“添加素材”按钮,打开素材库。



在素材库的上选择“插件”,找到“摇杆”,添加到项目中。


接着,再添加一个用于控制的角色,可以在素材库中找到“丛林冒险”中的“奔跑人物”(这个素材是有跑步动画帧的),添加到项目中。



添加完成之后,我们的项目就变成了这样。



接下来我们将使用下方的这个摇杆来控制游戏角色的移动。


要实现精灵的移动控制,其实工具已经为我们提供了现成的“行为”了,选中“奔跑人物”,然后在属性区中点击“管理行为”,在打开的行为面板中,开启“方向控制”行为。



行为开启后,回到属性区的下方就可以看到关于“方向控制”行为的一些属性了。这里因为我们只需要控制水平方向上的移动,所以方向选择这里使用“左右”即可。



除此之外,在积木区中的“行为”类别中,也增加了与“方向控制”有关的积木块。



其实,在增加了“摇杆”插件,开启了“方向控制”行为之后,我们就已经完成第一步了,点击预览场景,看一下。



可以看到,这时我们已经可以使用摇杆来控制角色的移动了。


接下来,我们继续完成第二步,就是调整角色的朝向,让角色向右移动时,面向右,向左移动时,面向左。


想要实现这个功能,需要先了解 2 块积木块,第一块就是“方向控制”中的“移动方向”积木块。



调用这个积木块,我们可以获得一个角度值,通过判断当前的角度值,可以知道当前角色是在向哪里移动。



如图,如果当前正在向右移动的话,调用“移动方向”积木块会获得一个 0 的值,向左移动的话,会获得一个 180 的值。


接下来,我们了解一下第二块积木块。位于“外观”中的“将自己的造型水平翻转”。



这个积木块帮助我们解决的就是精灵图片的朝向。



如图,左侧的图片经过“水平”翻转后,就会变成右侧的样子。


在了解完这两块必须的积木块之后,我们直接来看一下实现逻辑,在角色上增加如下的积木块。



这里我们根据“是否向右”的变量的值,以及“移动方向”的数值,来判断何时进行水平翻转。如果当前角色面向右,那么只有在角色向左移动的时候,才应该进行一次翻转,让角色面向左,反之亦然。


再次预览一下,看看移动效果。



根据摇杆的控制,角色会向正确的方向移动,并且会面向正确的方向,这样控制角色移动的功能就完成了,


可能有人会说,这是一个 2D 横版游戏,根本没有必要使用一个包含 4 个方向的摇杆,只需要使用“一左一右”的两个按钮控制方向就可以了。使用两个按钮来控制方向其实也非常的简单。


我们在场景中增加两个按钮,表示左右键。



然后,新建 2 个通知,一个通知“向左移动”,一个通知“向右移动”。



这两个按钮的上的逻辑非常的简单,当我按住按钮时,它们给游戏中的角色发送对应的通知。



最后,来到角色上,接收这两个通知,然后只需要根据通知调用“行为”中的“向左/右移动”积木即可。



最后,我们来预览一下。



这样我们就实现两种移动控制方式,一种使用“摇杆”控制,一种使用“左右按钮”控制,其实“摇杆”插件只不过是自动给我们处理了向左向右的移动而已。


好了,今天的内容就到这里了,对于横版游戏中角色的移动控制技能,你掌握了吗?

相关文章
|
监控 C++ Windows
排错实战——使用process explorer替换任务管理器
可以使用 process explorer 替换任务管理器,本文使用 proccess monitor 监控整个过程
|
安全 网络安全 数据库
“小红书基于零信任的数据安全落地实践”演讲实录
11月,为期两天的FCIS 2023网络安全创新大会(以下简称:“FCIS 2023大会”)在上海张江科学会堂圆满落幕。来自全球的数十位网络安全人物、企业安全负责人、技术大拿、研究学者等发表主题演讲,累计线下参会观众突破6000人次。 在主论坛E-Tech企业安全实践分享中,亿格云行业标杆客户「小红书安全技术负责人、首席数据官」周达发表了“基于零信任的数据安全建设实践”的主题演讲。分别从办公场景下的数据安全挑战、小红书全链路零信任体系和安全思考与展望三方面详细阐述。
|
5月前
|
机器学习/深度学习 人工智能 自然语言处理
构建AI智能体:六十一、信息论完全指南:从基础概念到在大模型中的实际应用
摘要: 信息论是人工智能尤其是大语言模型的核心数学工具。本文系统介绍了八大核心概念: 信息量:衡量事件意外程度,公式为I(x)=-log₂P(x) 信息熵:评估系统不确定性,H(X)=-ΣP(x)log₂P(x) 联合熵/条件熵:分析多变量关系及条件不确定性 互信息:量化变量间共享信息量 KL散度:衡量概率分布差异 交叉熵:模型训练的核心损失函数 在大语言模型中,这些概念被广泛应用于: 训练阶段:交叉熵优化预测,KL散度防止过拟合 推理阶段:温度参数调节生成文本的创造性(高熵增加多样性)
739 2
|
10月前
|
消息中间件 SQL 供应链
如何开发供应商管理系统中的库存管理板块(附架构图+流程图+代码参考)
供应商管理系统(SMS)是企业供应链管理的核心工具,通过信息化手段实现从采购、入库、出库到库存盘点的全流程管理。系统以供应商为中心,整合订单、发货、验收、库存等环节,提升供应链协同效率。库存管理作为关键模块,通过入库单、出库单、调拨单和盘点等功能,实现库存数据的实时更新与可视化监控,有效避免缺货或积压风险。结合现代技术如Spring Boot、Vue3、MySQL等,系统具备高可用性与灵活扩展性,助力企业提升库存周转率与运营效率。
|
12月前
|
JSON 数据挖掘 API
京东商品评论API接口指南
京东商品评论API接口是京东开放平台提供的服务,支持开发者通过HTTP请求获取商品评论数据,适用于数据分析、情感分析等场景。接口采用GET或POST请求方式,需提供app_key、sku_id等参数,返回JSON格式的评论内容、时间、评分等信息。使用时需完成权限申请和签名计算,确保请求安全。示例代码展示了如何用Python的requests库调用该API并处理响应数据。
|
网络协议 网络虚拟化
eNSP华为模拟器使用——(11)eNSP模拟无线AC和AP
eNSP模拟无线AC和AP 1、拓扑 2、需求(实现AC和AP二层关联) 3、配置(dhcp enable; interface Vlanif 1; ip address 192.
7867 0
|
传感器 数据采集 物联网
基于STM32的光敏传感器数据采集系统-嵌入式系统与设计课程设计2
基于STM32的光敏传感器数据采集系统-嵌入式系统与设计课程设计
2103 0
|
机器学习/深度学习 编解码 API
《黑神话:悟空》中的光线追踪与DLSS技术解析
【8月更文第26天】《黑神话:悟空》是一款备受期待的国产动作冒险游戏,它采用了先进的图形技术,包括实时光线追踪和NVIDIA DLSS(Deep Learning Super Sampling),以提供令人震撼的视觉效果和流畅的游戏体验。本文将深入探讨这两种技术在游戏中的应用及其背后的原理。
677 1
|
存储 人工智能 关系型数据库
MySQL 8.0 字符集与比较规则介绍
我们都知道 MySQL 8.0 与 MySQL 5.7 的区别之一就是默认字符集从 latin1 改成了 utf8mb4 ,除此之外,MySQL 8.0 下的字符集和比较规则还有没有其他变化呢?本篇文章我们一起来学习下。
1135 1
|
存储 JSON 关系型数据库
【unity实战】制作unity数据保存和加载系统——大型游戏存储的最优解
【unity实战】制作unity数据保存和加载系统——大型游戏存储的最优解
1113 2