Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Actionscript 3 物理对象交换层_Actionscript 3_Physics_Geometry_Game Physics_Physics Engine - Fatal编程技术网

Actionscript 3 物理对象交换层

Actionscript 3 物理对象交换层,actionscript-3,physics,geometry,game-physics,physics-engine,Actionscript 3,Physics,Geometry,Game Physics,Physics Engine,我有一个关于物理物体的问题。我有一个场景,屏幕上有一堆物理对象,这些对象是圆。这些对象分为两层。所以当我有100个圆圈时,50个在底层,50个在顶层。通过这个,我创造了一个深度效果。这意味着大多数底层中的对象都模糊且较小。这两个层不相互作用,碰撞只发生在同一层中的相同对象上 这就是踢球的人。我想让对象切换图层,这样圆圈就可以随机上下移动。我这样做没有问题,问题在于,当物体从底部向上移动到最上层,当它在最上层的物体下方或部分下方时,你有跳跃运动。物理对象必须为从任何地方出现的新对象腾出空间 问题是

我有一个关于物理物体的问题。我有一个场景,屏幕上有一堆物理对象,这些对象是圆。这些对象分为两层。所以当我有100个圆圈时,50个在底层,50个在顶层。通过这个,我创造了一个深度效果。这意味着大多数底层中的对象都模糊且较小。这两个层不相互作用,碰撞只发生在同一层中的相同对象上

这就是踢球的人。我想让对象切换图层,这样圆圈就可以随机上下移动。我这样做没有问题,问题在于,当物体从底部向上移动到最上层,当它在最上层的物体下方或部分下方时,你有跳跃运动。物理对象必须为从任何地方出现的新对象腾出空间


问题是,我如何防止这种跳跃运动?我希望最上面的对象通过平滑地远离新对象来为新对象腾出空间

不知道您使用的是十几个3d库中的哪一个,而是作为一个抽象:在视图中,将所有圆保持在同一层,但在代码中,将它们放在两个单独的数组中。切换状态时,在两个阵列上执行循环,如“此阵列中的所有圆位于顶部并消除模糊”和“其阵列中的所有圆位于底部并模糊”。您应该学习MVC模式以更好地构建项目。你不会相信你用它避免了多少头痛。纯MVC有点过时,但它很好。您可能会发现一个3D MVC实现,但我怀疑它是否为基础添加了任何内容。

您描述的所有内容我实际上已经完成了。英雄所见略同。我不明白你说的跳跃动作是什么意思。使用jinx记录正在发生的事情,我们可能会更好地理解。