我应该为我的滚动球体播放器使用Unity刚体吗

本文关键字:Unity 播放器 我的 滚动 我应该 | 更新日期: 2023-09-27 18:27:16

我刚开始使用Unity/C#,但我以前做过一些编程。我已经创建了一个非常基本的原型;有一些平台在同一深度的场景和我的"播放器"是一个球体对象。它在运行时由自定义的玩家控制器脚本实例化,我已经在附加到玩家的玩家物理对象中使用Rays/RayCast实现了重力、加速度、"滚动效果"(使用eulerAngles在z轴上旋转球体)和与平台的碰撞检测。

如果在球体上使用刚体,当球员左右移动时向球施加扭矩,并让Unity处理其滚动/移动,我会更好吗?有什么理由不使用刚体吗?(或者我只是浪费了一个晚上?:)

我应该为我的滚动球体播放器使用Unity刚体吗

实际上,Unity3D的优势在于IDE允许您通过在场景中"只"放置一个刚体和一个标准脚本来轻松实现所有这些因素。Unity3D处理所有这些东西,比如重力和加速度。你最好使用内置的涂鸦和元素,改变你想看到的不同因素。

即便如此,手动编程还是很好的。它为您提供了一个很好的三维编程实践。但Unity3D已经处理好了,所以恐怕这可能是一个浪费的夜晚。

此外,当您有一个带有玩家移动脚本和刚体的对象时,脚本中的所有公共变量在编辑器中都是可见的。这意味着你可以很容易地改变重力或速度。

为了实现你所做的,我会添加你描述的所有对象,将PlayerMovement脚本附加到你的球体上,将刚体附加到所有对象上,将平面设置在一个固定的位置(以防止它们因重力下降,或者,当你将重力设置为0时,防止它们在你的玩家与它们碰撞时飞走,从而给它们一个力推),并编辑您希望在编辑器或脚本中看到的不同内容。

作为对滚动物理的补充(我最初可能理解错了这个问题),你最好还是添加一个刚体(滚动都是完成和实现的,所以看起来很自然),并通过使用AddForce向某个方向施加力。

如果你正在制作一款有平台和滚动球的游戏,我建议你在Unity资产商店看看"滚动球"。

这里有一个创建者网站的链接http://www.lemodev.com/products/roll-the-ball.php在那里你可以找到下载它的链接

该产品包括控球游戏所需的所有东西,例如:

玩家控制,声音管理器,硬币/积分管理器,跳跃助推器,调速器,传送机,音乐3D交互菜单,纹理字体,所有这些都可以很容易地更改以适应您的游戏。

控件:使用鼠标控制摄影机,并使用WSAD或箭头键。

球的运动是由物理学控制的。

要想获胜,请收集所有硬币并到达门口。包装中有6个预制级别。