skphysicsworld

    1热度

    2回答

    我已经设置了我的重力,以便在我的游戏开始时物体会变得非常缓慢,并且随着玩家收集这些物品,我希望重力增加。 override func didMove(to view: SKView) { self.physicsWorld.gravity = CGVector(dx: 0.0, dy: -3.0) initializeGame() } 我已经设定了像这样的重力,但我不确定

    1热度

    1回答

    我一直在使用iOS11/Swift4下的PhysicsWorld(一个基本的粒子系统)运行一个简单的多体(800)2x2像素SpriteKit仿真。 它包含一个简单的径向重力节点,其中有800个物体在没有碰撞或接触检测的情况下围绕它运行。 在我的测试硬件上,iPhone6S - 我对获得60FPS和超级平滑模拟印象深刻 - 这为更多探索打开了道路。 我一直遇到的唯一问题是性能确实不一致。 如果我将

    1热度

    1回答

    我正在制作一款俄罗斯方块类游戏,我希望我的方块能以等速度下落。我想用SpriteKit物理词重力来实现它。 问题是重力一定是加速度,因此阻止他们下降时开始移动得更快。我知道我可以关闭重力并使用动作来移动块,但我希望通过重力来完成。 有没有办法让SpriteKit世界中的引力成为线性恒定速度?

    1热度

    2回答

    我希望能够通过使用SKPhysicsBody的applyImpulse方法通过自定义贝塞尔路径跟随节点从点A移动到点B.我想使用applyImpulse的原因是因为它根据初始冲动来模拟一个很好的自然运动(快速开始并减速)。看起来,当一个物体通过applyImpulse施加脉冲时,它只会在与环境的摩擦导致其速度减小到零时停止。我希望它遵循我的道路,并在最后停下来。我怎么去解决它?

    7热度

    4回答

    我一直在努力争取在过去两天得到两个SKSpriteNodes来注册冲突并唤起didBegin#contact。 我已经为这两个对象设置了位掩码'categoryBitMask','contactTestBitMask'和'collisionTestBitMask'。 我还设置了“dynamic”属性都为“true” initPhysics()似乎建立physicsWorld还好。 所有我期待的是,

    1热度

    1回答

    我希望能够在我的游戏中“缩放”出来,但是当我缩放父“世界”SKNode时,关节不会相应地缩放,因为它们必须被添加到SKScene(它是根节点)。 更改SKScene的大小,但是随着儿童的规模一起变化,所有HUD图形都会随之变化。 我已经考虑创建我的HUD作为SKView的孩子,但它似乎违背了Apple推荐的内容。我也失去了使用SKScene转换的好处,并最终处理了许多ViewControllers

    1热度

    2回答

    我有一个用SKPhysicsBody(edgeLoopFrom:...)创建的大型长方形SKPhysicsBody。在那个物理体里面有一堆弹跳的球。当出现通知时,我会从屏幕底部显示一个视图。我想调整SKPhysicsBody的大小,以便球在屏幕上弹出此通知视图。 我现在要做的就是 func updateWalls() { let wallInsets = UIEdgeInsetsMake

    0热度

    1回答

    如果我在屏幕上有一个SKSpriteNode,我将如何轻弹它,以便模拟足球的踢球物理过程。 how to throw SKSpriteNode?我猜测,它会有点像这个问题,但不应该发生,而不是在它被轻弹之前首先跟随你的手指的节点。它应该看起来像当你轻弹时朝着节点滑动,然后一旦你的手指碰到节点,它就像足球的物理学一样移动它。任何人都可以给我一个地方,以实现这一目标?

    1热度

    1回答

    我有一个游戏,其中下降节点下降,击中基本数字雪碧节点和游戏逻​​辑运行从那里。当我从头开始创建一款新游戏时,碰撞检测的工作原理应该如何。我使用NSCoding从以前的保存中创建游戏时出现问题。在这两种情况下(新游戏和继续保存游戏)物理主体是相同的 - 动态,相同大小的主体,相同的contactTestBitMask,相同的categoryBitMask。我测试了所有这些,所以我知道这是真的。物理接

    1热度

    2回答

    我正在研究一个应用程序,当中央球颜色匹配一个较小的球,正在朝中央球颜色飞行球员得分。 所以为了这个工作,我需要didBeginContact函数来调用“敌人”和“mainBall”相撞的时候。唯一移动的是敌方球,因为它飞向固定的主球体 我相信我已经正确设置了位掩码,但didBeginContact函数没有被调用。 有人可以帮忙吗? 这里是我的代码 struct bitMasks{ static