如何将动态形状调整到另一个形状

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将动态形状调整到另一个形状相关的知识,希望对你有一定的参考价值。

嗨,大家好,我想知道如何创建一个形状调整与两个对象,具体可以描述为独立的单元格,其中一个是静态的,第二个是动态的,并被“等离子”包围。活动对象的移动必须由用户(WSAD)控制。活动对象与静态对象的碰撞会导致静态对象坍塌,但不会改变它的位置始终保持原位。当活动对象移动时,传递堕落的物体并将其拉出。

见下图:

Image

  1. 玩家角色
  2. 当它足够接近粉红色的敌人时,它开始吞下它(环绕黄色物体)
  3. 当红色圆圈位于两者的中心时,粉红色的敌人完全被包围。
  4. 当它离开敌人时它会脱掉黄色的东西

我想知道最简单的方法是什么。我一直在考虑布料,物理接头,网状减法(甚至可能吗?),某种动画......我没有太多时间去做。你能告诉我最简单的方法吗?我应该使用哪些工具和方法?我不是要求完整的代码或完整的解决方案只是为了一些提示。

答案

Tim Hunter提到了一种非常完美的3D方式。

您可以在2D中使用其他方法:

  • OnCollisionEnter2D内部尝试使用Collision2D.contacts找到生命值。请参阅this参考。
  • 在那里创建一些粒子效果。
  • 禁用敌人
  • 现在玩玩家的吞咽动画。
  • 在动画结束时,再次启用敌人。

也许计算有点棘手,仍然有效。

以上是关于如何将动态形状调整到另一个形状的主要内容,如果未能解决你的问题,请参考以下文章

动态调整单个形状的大小而不缩放整个 SVG

关于将输入数组从一种形状广播到另一种形状的正确方法

如何使用 Apollo graphql 动态调整查询形状(字段)?

将形状从 UIView 复制到另一个 UIView

visio 如何按指定比例调整形状大小

在android活动中设置片段的形状和透明度