我正在使用 runAction(SKAction.playSoundFileNamed()在我的游戏中添加声音效果。但Xcode在此时发现了一个问题。播放声音时,屏幕滞后。我使用< strong> self.runaction(SKAction.playSoundFileNamed(),仍然不起作用。我该如何解决这个问题?这是我的代码:
class Player
{
public string Name {get; protected set;}
public Weapon CurrentWeapon {get; protected set;}
}
答案 0 :(得分:1)
在初始化课程时创建SKAction
,以便缓存声音文件,
class MyClass
{
let tink = SKAction.playSoundFileNamed("Tink", waitForCompletion: false);
.....
if(nodeTouched == ball)
{
runAction(tink)
}
}
然而,我会进一步编辑它。球应该是子类,然后你可以将你的触摸代码留在你的球内,并避免你的if(nodeTouched == ball)
class Ball : SKNode
{
let tink = SKAction.playSoundFileNamed("Tink", waitForCompletion: false);
.....
override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?)
{
runAction(tink)
}
}
答案 1 :(得分:1)
我遇到了SKAction.playsoundFileNamed的问题,代码还可以,但是当我尝试在iPhone上测试游戏时,声音无法正常工作。所以,我打开了项目属性,Build Phases选项卡,在Copy Bundle Resources中我添加了声音。它对我有用! ProjectProperties
答案 2 :(得分:0)
删除Xcode中的当前声音文件夹。打开声音的文件位置,然后创建新文件夹并将其命名为声音或任何您喜欢的名称,然后移动新创建的文件夹中的所有声音。最后将整个文件夹拖放到Xcode中。重点是首先将所有声音效果放在一个文件夹中,然后将整个文件夹移动到Xcode中。如果需要,请务必检查复印件。