小编Lah*_*hav的帖子

沿运动方向旋转物体

是否有一种相对简单的方法来旋转SKSpriteNode,使其始终面向它正在移动的方向?我的类Gamescene有一个物体系统,它们的相对物理体在碰撞时互相施加冲动.这使得跟踪对象移动的确切方向变得相对困难.一些对象也没有规律地形状,这使得事情变得更加混乱.我尝试过使用三角函数(例如arctangent),但它只能在非常特殊的情况下使用.可能有办法找出SKSpriteNode轨迹的角度,以便我可以将对象旋转到该角度?感谢您的任何帮助,您可以提供!

编辑:

我为CGVector创建了一个扩展,并尝试在两个对象相撞时,在其速度方向上旋转SKSpriteNode(感谢0x141E),但它似乎没有正常工作

func didBeginContact(contact: SKPhysicsContact) {
    var firstBody : SKPhysicsBody = contact.bodyA
    var secondBody : SKPhysicsBody = contact.bodyB
    if ((firstBody.categoryBitMask == PhysicsCatagory.Blade) && (secondBody.categoryBitMask == PhysicsCatagory.Laser))
    {
        if (secondBody.node != nil)
        {
            if (saberAngle <= 0 && LCR == 1) // Blade pointing right
            {
                let rebound = CGVectorMake(-reboundStrength*sin(1.5707 + saberAngle), reboundStrength*cos(1.5707 + saberAngle))
                secondBody.applyImpulse(rebound)
            }
            else if (saberAngle > 0 && LCR == -1) // Blade pointing left
            {
                let rebound = CGVectorMake(reboundStrength*sin(1.5707 - saberAngle), reboundStrength*cos(1.5707 - saberAngle)) …
Run Code Online (Sandbox Code Playgroud)

vector rotation sprite-kit skspritenode swift

1
推荐指数
1
解决办法
1480
查看次数

如何将文件读入 Int 数组

在我的应用程序文档文件夹中,我有一个文件,我试图将每个字节读入一个数组,UInt8其中每个元素代表一个字节。我该怎么做呢?该文件恰好称为 Q1.dat。

这是我失败的尝试:

func readArray() -> [Int]? {
    if let arrayPath: String = createArrayPath() {
        if let arrayFromFile: [Int] = NSArray(contentsOfFile: arrayPath) as? [Int] {
            return arrayFromFile
        }
    }
    return nil
}

func createArrayPath () -> String? {
    if let docsPath: String = NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.DocumentDirectory, NSSearchPathDomainMask.UserDomainMask, true).last {
        return ((docsPath as NSString).stringByAppendingPathComponent("Q1") as NSString).stringByAppendingPathExtension("dat")
    }
    return nil
}
Run Code Online (Sandbox Code Playgroud)

arrays bits swift

1
推荐指数
1
解决办法
5036
查看次数

标签 统计

swift ×2

arrays ×1

bits ×1

rotation ×1

skspritenode ×1

sprite-kit ×1

vector ×1