首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否有一种优雅的方法可以用RigidBody对象填充一个区域?

是否有一种优雅的方法可以用RigidBody对象填充一个区域?
EN

Stack Overflow用户
提问于 2022-04-11 20:24:18
回答 1查看 24关注 0票数 0

我正在创建一个推硬币机(就像你在拱廊中找到的游戏机器),在我的业余时间里在Unity游戏中,这显然意味着我需要用硬币填充架子,这样玩家产生的硬币才有实际的功能。

我的问题是,我还没有想出如何以一种优雅的方式孕育出这么多的硬币,这既不会减缓游戏的节奏,也不会同时产生这么多的物体,也不会导致一堆硬币的集中,而不是我所需要的整齐的铺张。我甚至尝试过几次加速模拟,并把一堆硬币扔到推架上,这样他们就可以在玩家输入之前“解决”问题。它没有起作用。

所以我问是否有一个很好的方法来做到这一点,作为游戏初始化和任何统一或C#功能的一部分,这将产生预期的效果。

提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2022-04-12 15:20:56

如果我正确理解你的请求,它确实是依赖的。问题是,当您必须进行许多物理交互时,您的游戏滞后。因此,即使你在没有大量物理相互作用的情况下孕育了它们,一旦你移动一枚硬币,它就会开始滞后。

我会寻找另一种方法,然后用物理学来处理它们。也许你可以想出一个更简单的计算,你可以做你自己,在每一帧上你有较少的互动。

这意味着一种硬币产卵的方法是计算一个固定高度(最大高度)的随机位置,然后找出硬币可以放置的最低位置(这样它就不会与另一枚硬币共享空间)。现在把它放在那里。更好的方法是计算它是否真的可以被放置在那里,而不会瞬间坠落。

我认为最好的方法是有预定义的“硬币塔”(它们的预制件),你有10个变体,然后把它们放在不同的位置,但不允许在另一个上产生任何“硬币塔”。这将导致更少的物理相互作用时,也产生。

也许也有帮助:https://www.youtube.com/watch?v=pTz3LMQpvfA

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71833873

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档