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

你是否曾梦想在虚拟世界中自由翱翔,像海豚一样在海洋自由穿梭,或者像宇航员一样在宇宙中尽情探索?今天,我们就来聊聊如何在Unity中使用Rigidbody来实现角色移动。

废话不多说,走,让我们马上来一探究竟!

目录:

1.准备模型

2.添加刚体组件和碰撞组件

3.编写脚本

4.测试运行


一.准备模型

模型已就绪!对于还不熟悉操作的朋友们,可以参考我先前发布的"导入模型"教程视频,视频链接位于本文末尾,或在我的Bilibili及其他平台个人主页上查找。

接着我们把飞船拖拉到开发场景中。

二.添加刚体组件和碰撞组件

1.我们需要为我们的飞船添加刚体组件,并且设置摩檫力为0.8,再冻结刚体组件的Y轴,避免飞船移动时受重力影响产生旋转。

2.为飞船添加碰撞组件,我这里直接添加盒子碰撞(Box Collider)。(注意:我这里没有调整Size,大家制作游戏的时候可以调整碰撞组件的Size,碰撞组件的框框越贴近模型越好)。

三.编写移动功能的脚本

1.在项目的Assets文件夹内新建一个空文件夹,并将其命名为Scripts(你可以根据个人喜好来命名),这个文件夹将用于存放所有的脚本文件。

2.在Scripts文件夹中,创建一个新的C#脚本文件。

3.实现移动功能

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

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

四.测试运行

使用刚体组件来实现角色移动,适用于实现带力学的移动。通过测试运行,成功实现当按下前进按键时,模型向前移动,而松开按键后,角色不是马上停止,而是惯性向前移动一段距离后再停下。

相关推荐
努力小陈114 小时前
Redis ZSet 排行榜实战:SLG 后端排行榜的 10 个坑
游戏开发
努力小陈115 小时前
SLG 后端最终选了 Actor
游戏开发
努力小陈115 小时前
玩家 Actor 的生命周期与阻塞 IO:全局协程池分流实战
游戏开发
SmalBox18 小时前
05-02-源码-全局入口与包管理(YooAssets & ResourcePackage)
unity3d·游戏开发
SmalBox1 天前
05-01-源码-运行时总览
unity3d·游戏开发
SmalBox2 天前
04-06-源码-调试与扫描工具
unity3d·游戏开发
RobinDevNotes3 天前
一套代码发布到十几个平台:Cocos入门速览
typescript·c#·游戏开发
应用市场4 天前
离线小游戏做“每日挑战”:日期当随机种子,整局存成 JSON,再加一个“我不是机器人”
android·kotlin·游戏开发
用户2788607285674 天前
战争雷霆换区记录:字段里的「未知」不能写成正常
网络协议·游戏开发
SmalBox4 天前
04-05-源码-清单生成与构建报告
unity3d·游戏开发