小编Ped*_*aco的帖子

AVAudioPlayer产生滞后播放音效

我正在使用SKTAudioRay Wenderlich在他的Github上提供的库.这是我为播放声音效果而修改的代码,我每次播放时都会调用它:

public func playSoundEffect(_ filename: String) {
    let url = Bundle.main.url(forResource: filename, withExtension: nil)
    if (url == nil) {
        print("Could not find file: \(filename)")
        return
    }
    if !UserDefaults.standard.bool(forKey: "soundOff"){
    var error: NSError? = nil
    do {
        soundEffectPlayer = try AVAudioPlayer(contentsOf: url!)
    } catch let error1 as NSError {
        error = error1
        soundEffectPlayer = nil
    }
    if let player = soundEffectPlayer {
        DispatchQueue.global(qos: .background).async {
            player.numberOfLoops = 0
            player.prepareToPlay()
            player.play()
        }
    } else {
        print("Could not create audio …
Run Code Online (Sandbox Code Playgroud)

xcode avaudioplayer ios sprite-kit swift

5
推荐指数
0
解决办法
661
查看次数

Spritekit将完整游戏扩展到iPad

因此,我正在使用Spritekit在Xcode上为iPhone开发游戏。通过使用node.setScale()方法,它在所有iPhone设备上看起来都一样而且很棒。现在,我想使其在iPad上通用且可运行。我如何轻松做到这一点?规模有一些公式吗?

我已经尝试过的是:

if UIDevice.current.userInterfaceIdiom == .pad {
        sscale = frame.size.height / 768
    }else{
        sscale = frame.size.height / 320
    }
Run Code Online (Sandbox Code Playgroud)

然后为每个节点创建node.setScale(sscale)。

最终无法正常工作,因为在iPad Mini上,它看起来与iPad Air不同...即节点大小和位置...

有什么帮助吗?

xcode ios sprite-kit

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

标签 统计

ios ×2

sprite-kit ×2

xcode ×2

avaudioplayer ×1

swift ×1