问题标签 [skphysicsbody]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - 精灵套件中的完美弹性碰撞
我有两个质量相等的球,它们直接相互撞击。我似乎无法弄清楚为什么传入的球会有反弹效应。我正在使用精灵套件。
我以为是归还财产。我将它设置为 1(这是我认为应该的),但尝试了很多。
我可以杀死反弹的唯一方法是改变质量,这会弄乱其他事情。
如果速度很慢,它几乎会停止。但是在更高的速度下会有反弹。他们应该只交换速度,因为它是碰撞的正面。可能是高速数字舍入还是什么?
sprite-kit - 无法对 SKSpriteNode 物理体施加脉冲
我是 xcode 的精灵套件的新手,我正在尝试对SKSpriteNode's
物理体施加冲动。这是我创建场景的方式:
以下是我创建播放器并赋予其冲动的方式:
因为我一直在完美地遵循iOS 开发人员库 Sprite Kit编程指南,所以有什么明显的遗漏吗?在此先感谢您的帮助!
objective-c - SpriteKit 检测联系人结束
我试图弄清楚如何检测两个身体之间的接触何时结束。我正在开发类似高山爬行者的汽车游戏,只有当后轮接触地面时,汽车才能加速。
这是我现在的代码,但它不能正常工作:
ios - SKPhysicsContactDelegate Not Working
I have the following code:
in my scene:
As you can see, I set both ship and energy at the same location to start with, so they will always collide.
For both classes, I have the following code in their init method:
What I found is that the NSLog is never get called, so that the physical collision detection never works, I've read a lot from apple developer tutorials and it seems all the same of what they had, not sure why is not working. I can see the ship and energy images on screen collide each other.
sprite-kit - 如何使 SKSpriteNode 仅对某些碰撞做出反应
在这个项目中,有两个玩家,都可以射击。当对面玩家的子弹击中一艘船时,它会降低他们的健康并消失,这很好用。问题是我不希望船只或子弹对相互碰撞做出反应。
这是制作第一个播放器的代码:
第二个玩家:
类别的初始化:
玩家一的子弹制作:
玩家二的子弹制作:
这样做的方式是否有任何明显的问题会导致第一个玩家和子弹对碰撞做出反应?在此先感谢您的帮助,并为长期阅读感到抱歉。
ios - physicsBody 与 spriteNode 未对齐
我正在创建一个 spritenode,设置它的位置并将其锚点更改为 (0, .5),然后创建一个 phyicsbody。
物理体愚蠢地认为我的锚点仍在 (.5, .5) 处。
此处引用了相同的问题,但未解决:Physicsbody 不坚持节点的锚点
我做事的顺序是正确的,只是我的物理身体很固执。
ios - Ellipse SKPhysicsBody
我将使用哪种 SKPhysicsBody 身体类型来创建椭圆物理身体?
我知道我可以用直线制作一条曲线,只是让它不是一个真正的椭圆,但似乎必须有某种方法来挤压一个圆或创建一个圆?
ios - Sprite Kit 物理碰撞问题
我遇到了一些碰撞问题。我有两个大小和质量相同的物体。当一个人与另一个静止的人发生碰撞时,我会得到正确的行为(图像中的灰色区域)。当我有两个彼此相邻的对象时,行为不太正确。Spritekit 结果在左侧。右边的预期/需要的结果。
我想我知道发生了什么,但不知道该怎么办。如果对象是一个具有两倍质量的对象,那么 spritekit 的行为将是正确的,但它们是独立的对象,最上面的对象应该采用传入粒子的速度。似乎将它们视为一个对象。
在两者接触后,我尝试作弊并缩小半径以缩小差距,但随后一切都变得一团糟。有人知道我可以在这里做什么吗?谢谢。
ios - 在 Sprite Kit 中为碰撞执行您自己的物理计算
我正在尝试使用 Sprite Kit 设置一些弹性碰撞。正如我在Sprite Kit 物理碰撞问题中所问的那样,多个对象彼此靠近的情况存在问题
我对发生碰撞情况的时间感到困惑。
我尝试在委托方法中设置为,计算最终速度,然后dynamic
设置为,然后正确设置速度。NO
-didBeginContact:
-didEndContact:
dynamic
YES
我希望它在碰撞之外是动态的原因是因为我希望摩擦/重力等可用。顺序/逻辑有什么问题?我查看了-didSimulatePhysics
方法,但它似乎不是要走的路。
objective-c - -(void)didBeginContact 没有被调用。想法?
它永远不是 NSLogging 任何东西。我尝试过更改位掩码等等。CGRectIntersects 函数可以工作,但它不够准确。此外,这两个节点是完美的盒子形状。我可能做错了什么?先感谢您!