gpt4 book ai didi

ios - 无论速度如何,如何对每次碰撞施加相等的力? - swift ,场景套件

转载 作者:行者123 更新时间:2023-11-30 13:01:55 25 4
gpt4 key购买 nike

我需要让我的球体每次与盒子碰撞时以相同的距离和相同的速度反弹。截至目前,球将与第一个盒子碰撞,并施加力使其到达下一个盒子。随着时间的推移,球会向下一个盒子弹跳更短的距离,直到不再到达它。如何使球在第一个盒子上弹向第二个盒子,然后一旦击中第二个盒子,就以与从第一个盒子到第二个盒子完全相同的距离移动?场景套件, swift

最佳答案

我能想到的两种方法:

夸大的、人为的赔偿值(value):

您可以尝试恢复原状(反复试验),直到找到一个在大多数情况下都有效的值。该值需要大于 1.0,但也不能超过 1.0。而且它将是不可靠的。帧速率的任何中断或其他系统延迟都会毁掉它。有可能,但缺点十足。

或者...

人工诱导正确的力量:

将球在其中一个盒子上的速度归零(使其静止),即它通常接触时的位置。然后找到产生“弹跳”的确切脉冲量。一旦你知道了这一点,当球与另一个盒子碰撞时,将其速度归零,并施加相反的力。当它到达第一个盒子时,再次为零速度,并应用第一个发现的力......一遍又一遍。看起来像弹跳,每次都完美运行,但实际上是假弹跳。

警告:由于 SpriteKit 和 SceneKit 物理特性(不是 delta-d)的不可靠特性,您甚至可能希望每次都将球重新定位到理想的起始点。以防万一发生一些漂移。

关于ios - 无论速度如何,如何对每次碰撞施加相等的力? - swift ,场景套件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39823429/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com