【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函数实现角色移动的功能。

相关推荐
SmalBox1 天前
【节点】[SampleTexture3D节点]原理解析与实际应用
unity3d·游戏开发·图形学
JCHwa1 天前
UE5 GAS 源码深度解析 | 第2篇:AttributeSet 源码导读
游戏开发·unreal engine
SmalBox2 天前
【节点】[SampleTexture2DLOD节点]原理解析与实际应用
unity3d·游戏开发·图形学
fetasty2 天前
Godot游戏练习01-第15节-敌人生成动画,翻转,碰撞
游戏开发
SmalBox4 天前
【节点】[SampleTexture2D节点]原理解析与实际应用
unity3d·游戏开发·图形学
UWA4 天前
如何降低Animator的调用次数
性能优化·memory·游戏开发·animation
龙智DevSecOps解决方案5 天前
邀请函 | 诚邀您参加Perforce on Tour 2026 游戏研发效能进阶沙龙(广州站),探索AI时代如何更高效、安全地开发游戏
游戏·ai·游戏开发·perforce·龙智
C蔡博士5 天前
Unity游戏物体渲染顺序
unity·游戏引擎·游戏开发
SmalBox5 天前
【节点】[SamplerState节点]原理解析与实际应用
unity3d·游戏开发·图形学
Invincible_6 天前
3D Tiles 2.0 技术审查整理稿
程序员·unity3d