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

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

在写完上一篇[如何实现横版游戏中角色的移动控制]后,有朋友留言:再来个跳跃的。所以,这篇就来了,这篇教程中我将带大家来了解两种实现角色跳跃的方法,一种是利用"物理"实现跳跃控制,另外一种是使用工具为我们提供的“平台角色”行为,来实现角色的跳跃。


利用物理实现角色的跳跃控制


我们继续使用上一节教程中的移动示例,在移动的基础上,给角色增加跳跃行为。



首先,选中要增加跳跃行为的角色,为其开启“物理”行为。



开启后,可以在图层属性的下方看到与“物理”有关的属性。“能够倾倒”默认是开启状态,这里我们把它关掉,因为我们不需要角色倾倒。



另外,在积木区的“行为”中,你会看到与“物理”有关的一大堆的积木块。先不要慌,要实现跳跃功能,其实我们只需要理解并使用其中的两块积木块就可以了。


第一个积木块“设置全局的重力加速度大小和方向”,重力加速度即物体由于重力的作用从空中下落的加速度(不懂的话请自行搜索关键词“重力加速度”,补上初中的物理知识),这里我把重力加速大小设置为了 98(这个数值越大,起跳和下落的速度越快),方向 -90度(垂直向下)。


第二个积木块“设置力的大小和方向”,这个积木块的作用就是我们给游戏中的物体一个指定方向指定大小的力,例如当前角色要向上跳,那么我就给他一个向上的力。


你可以把跳跃想象成这样的一个过程,我们在角色的脚底下狠狠的向上踹了一脚,角色被踹的飞了起来(受到了垂直向上的力),但是因为受到的重力的作用,他向上飞的会越来越慢,直到达到最高点,转而开始下落,最终又落回到地面上。



如图,就是角色的逻辑积木,在之前的移动控制逻辑的基础上,我们只增加了 2 块与“物理”有关的积木块,就实现了跳跃功能。


在跳跃按钮上,当精灵被“按下”时,向角色发送一个“跳跃”的通知即可。



最后,我们为角色的脚下增加一个地面,因为角色受到物理影响,如果脚下没有地面的话,由于重力的作用就会掉下去。所以需要有一个地面,才能够“脚踏实地”。


这里需要注意,在为地面增加物理行为后,“物理”属性中的类型要设置为“静态刚体”,因为地面是不会动的。


最后,预览一下,来看看移动加上跳跃的效果。



利用平台角色行为实现角色的移动和跳跃控制


第二种控制移动和跳跃的方式就是直接使用小游戏制作工具为我们提供的“平台角色”行为这一工具,只需要简单的配置,就可以实现角色的移动和跳跃控制了。


创建一个新场景,这里我们重新布置一下。



如图,包含一个可以控制的角色,一些可以跳跃的平台,以及用于控制移动和跳跃的 3 个按钮。


首先,选中需要控制的角色,在属性区中点击“管理行为”按钮,为其开启“平台角色”行为。



开启了这个行为之后,游戏的角色就具备了一个与“平台跳跃”游戏有关的各种各样的能力了,包括跑动,跳跃,二段跳等等。


与平台角色有关的各种属性可以在“属性区”下方的行为中调整。



看一下,角色身上的积木逻辑。



其实逻辑很简单,监听了 3 个事件,不论是移动和跳跃,我们都是直接使用“平台角色”中提供的对应的积木块。因为需要调整精灵的朝向,所以这里我们使用了一个变量“是否面向右”,根据这个变量的值来判断角色的造型是否需要进行“水平”翻转。


对于 3 个按钮上的积木逻辑就更简单直白了,使用对应的事件,触发时给角色发送对应的通知即可。



最后,为地面以及各种可跳跃的平台开启“固体”行为。另外,如果你希望创建一个可向上穿透的平台,可以选择开启“跳跃穿透”行为。



最终,预览一下,看看第二种跳跃方式。



好了,今天的内容就到这里了,掌握了角色的控制和跳跃技能,你就能够发挥想象力做出一些有意思的东西啦!做个平台跳跃游戏?还是做个小的跑酷游戏呢?期待你的游戏作品。

相关文章
|
3月前
|
前端开发 图形学 开发者
【独家揭秘】那些让你的游戏瞬间鲜活起来的Unity UI动画技巧:从零开始打造动态按钮,提升玩家交互体验的绝招大公开!
【9月更文挑战第1天】在游戏开发领域,Unity 是最受欢迎的游戏引擎之一,其强大的跨平台发布能力和丰富的功能集让开发者能够迅速打造出高质量的游戏。优秀的 UI 设计对于游戏至关重要,尤其是在手游市场,出色的 UI 能给玩家留下深刻的第一印象。Unity 的 UGUI 系统提供了一整套解决方案,包括 Canvas、Image 和 Button 等组件,支持添加各种动画效果。
182 3
|
4月前
|
开发者 图形学 C#
深度解密:Unity游戏开发中的动画艺术——Mecanim状态机如何让游戏角色栩栩如生:从基础设置到高级状态切换的全面指南,助你打造流畅自然的游戏动画体验
【8月更文挑战第31天】Unity动画系统是游戏开发的关键部分,尤其适用于复杂角色动画。本文通过具体案例讲解Mecanim动画状态机的使用方法及原理。我们创建一个游戏角色并设计行走、奔跑和攻击动画,详细介绍动画状态机设置及脚本控制。首先导入动画资源并添加Animator组件,然后创建Animator Controller并设置状态间的转换条件。通过编写C#脚本(如PlayerMovement)控制动画状态切换,实现基于玩家输入的动画过渡。此方法不仅适用于游戏角色,还可用于任何需动态动画响应的对象,增强游戏的真实感与互动性。
122 0
|
3月前
|
图形学 开发者
透视与正交之外的奇妙视界:深入解析Unity游戏开发中的相机与视角控制艺术,探索打造沉浸式玩家体验的奥秘与技巧
【8月更文挑战第31天】在Unity中,相机不仅是玩家观察游戏世界的窗口,更是塑造氛围和引导注意力的关键工具。通过灵活运用相机系统,开发者能大幅提升游戏的艺术表现力和沉浸感。本文将探讨如何实现多种相机控制,包括第三人称跟随和第一人称视角,并提供实用代码示例。
170 0
|
6月前
|
图形学
【unity小技巧】unity最完美的CharacterController 3d角色控制器,实现移动、跳跃、下蹲、奔跑、上下坡、物理碰撞效果,复制粘贴即用
【unity小技巧】unity最完美的CharacterController 3d角色控制器,实现移动、跳跃、下蹲、奔跑、上下坡、物理碰撞效果,复制粘贴即用
617 0
|
7月前
|
人工智能 vr&ar 开发者
Genie:用一张草图开启无限游戏世界的大门!
【2月更文挑战第9天】Genie:用一张草图开启无限游戏世界的大门!
64 2
Genie:用一张草图开启无限游戏世界的大门!
|
7月前
俄罗斯方块游戏开发实战教程(3):玩家如何控制形状
俄罗斯方块游戏开发实战教程(3):玩家如何控制形状
87 1
|
7月前
横版游戏中角色的移动控制是如何实现的?
横版游戏中角色的移动控制是如何实现的?
60 0
|
图形学
【unity每日一记】--控制游戏人物移动的细节
【unity每日一记】--控制游戏人物移动的细节
198 0
如何实现横版游戏中角色的跳跃控制
在写完上一篇[如何实现横版游戏中角色的移动控制]后,有朋友留言:再来个跳跃的。所以,这篇就来了,这篇教程中我将带大家来了解两种实现角色跳跃的方法,一种是利用"物理"实现跳跃控制,另外一种是使用工具为我们提供的“平台角色”行为,来实现角色的跳跃。 利用物理实现角色的跳跃控制
101 0
如何实现横版游戏中角色的移动控制
今天分享一下横版游戏中角色的移动控制,在一个 2D 的横版游戏中,对于游戏角色的移动控制,其实只需要考虑水平方向上即可。如果角色可以跳跃的话,才需要去考虑垂直方向上的移动,这篇文章只涉及到水平方向上的角色移动控制。
93 0

热门文章

最新文章