【Unity3D实例-功能-移动】角色移动-通过WSAD(Transform方式)

嘿,小伙伴们!你是否曾经梦想过在游戏世界里自由驰骋,像风一样掠过每一个角落?今天,我们一起来探讨游戏中最基础,但又是重中之重的功能------"角色移动"。我们今天就使用unity中最为简单直接的方式------"Transform"。

废话不多说,走,让我们的角色动起来!

目录:

1.准备模型

2.动画的处理

3.编写移动功能的脚本

4.测试和运行


一.准备模型

在这里我已经把模型和动画准备好了。如果有不懂的小伙伴们可以去查看我之前"导入模型"的视频(导入模型的视频连接在文章底部,抖音或其他平台的个人主页中找到)。

第一步我们先把我们的主角拖拉到开发场景中。

二.动画的处理

1.刚导入的动画一般需要进行一些设置。我们选中动画 -> 选中"Rig" -> 把站立动画和跑步动画的动画类型改成人形(Humanoid)

2.然后我们选中跑步动画 -> 选中"Animation" -> 勾选上循环播放(Loop Time)

3.在Assets文件夹下面创建一个空的文件夹,命名为Animation Controllers(可以自定自己喜欢的名字),用于存放动画控制器。

4.点击鼠标右键Assets -> Animation Controllers,点击选择Create -> Animetor Controller,创建动画器。

5.选中创建好的Animetor Controller,按住鼠标左键把Animetor Controller拖拉到我们的主角模型上。

6.双击打开我们创建的动画器,把我们准备好的角色"站立动画"和"跑步动画"拖进去。

7.创建动画过渡关系。选中"站立动画"和"跑步动画",点击鼠标右键,选择"Make Transition"为动画创建过渡(也就是从站立状态切换到跑步状态,跑步状态也可以切换回站立状态)。

8.为动画创建切换条件

第一步为动画创建一个Bool变量,用于控制切换动画的条件。

第二步选中动画过度线,为过度线添加变量(当Run变量为true的时候,进入跑步动画。为false的时候重新变回站立状态)。

最后勾选掉Has exit time(是否有动画退出时间),因为我们是实时切换动画

三.编写移动功能的脚本

1.在Assets文件夹下面创建一个空的文件夹,命名为Scripts(可以自定自己喜欢的名字),用于存放脚本。

2.在Scripts文件夹下,创建C#脚本。

3.实现移动功能代码

代码、模型和动画都已经上传到我的个人博客了,大家可以自行下载。

原创来源于-谷宇博客:www.biguyu.top/home

四.测试和运行

通过测试运行案例,成功使用Transform的translate函数实现角色移动的功能。

相关推荐
技术小甜甜6 小时前
[Godot] 解决导出APK安装失败的常见问题:深入分析与调试方法
游戏引擎·godot·游戏开发
SmalBox9 小时前
【节点】[RGBtoGrayscale节点]原理解析与实际应用
unity3d·游戏开发·图形学
技术小甜甜11 小时前
[Godot][入门] 安装与版本选择:3.x 还是 4.x?(按项目类型一键决策)
游戏引擎·godot·游戏开发·2d
SmalBox1 天前
【节点】[RGBtoLuminance节点]原理解析与实际应用
unity3d·游戏开发·图形学
SmalBox2 天前
【节点】[ColorspaceConversion节点]原理解析与实际应用
unity3d·游戏开发·图形学
_大学牲3 天前
Flutter 勇闯2D像素游戏之路(三):人物与地图元素的交互
flutter·游戏·游戏开发
wonder135793 天前
UGUI重建流程和优化
unity·游戏开发·ugui
SmalBox3 天前
【节点】[Adjustment-WhiteBalance节点]原理解析与实际应用
unity3d·游戏开发·图形学
CreasyChan4 天前
Unity 中的反射使用详解
unity·c#·游戏引擎·游戏开发
SmalBox4 天前
【节点】[Adjustment-Saturation节点]原理解析与实际应用
unity3d·游戏开发·图形学