Spritekit 添加音效
Posted
技术标签:
【中文标题】Spritekit 添加音效【英文标题】:Spritekit adding a sound effect 【发布时间】:2014-02-27 00:53:40 【问题描述】:我正在尝试在触摸屏幕时为游戏添加声音效果。我已经有一个可以移动角色的 touchesBegan 方法,我可以把:
[SKAction playSoundFileNamed:@"sfx.wav" waitForCompletion:NO];
进入那个方法还是我需要做一个新方法。另外,我应该在我的项目中将声音文件存储在哪里?它是否有特定的位置,或者它可以在任何地方?
【问题讨论】:
【参考方案1】:试试这个:
首先确保您已输入self.userInteractionEnabled = YES;
点击屏幕时触摸委托方法:
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
// For play your wav file here
[self runAction:[SKAction playSoundFileNamed:@"sfx.wav" waitForCompletion:NO]];
// if you want do with touches point do here
for (UITouch *touch in touches)
CGPoint touchLocation = [touch locationInNode:self];
//do your stuff here
我应该将声音文件存储在我的项目中的什么位置?
你必须把它放在你应用程序的文档目录中,意思是资源文件夹。【讨论】:
【参考方案2】:随便放
[self runAction:[SKAction playSoundFileNamed:@"sfx.wav" waitForCompletion:NO]];
插入touchesBegan
方法。
您可以将音频文件放在项目中的任何位置。
【讨论】:
【参考方案3】:您的代码有效。 对于文件,您可以将其放在项目中的任何位置。 你甚至可以创建一个像“sfx”之类的新文件夹,之后你不需要担心它的路径(你不必把文件夹放在路径中,如果你把你的“sfx.wav”放在sfx文件夹,你不需要像“sfx/sfx.wav”那样加载它)呵呵,这就是我上次做的。只是一个抬头。 顺便说一句,您确实需要包含该 .wav 祝你好运
【讨论】:
以上是关于Spritekit 添加音效的主要内容,如果未能解决你的问题,请参考以下文章
如果 spritekit 中正在播放来自另一个应用程序的音乐,如何使 AVAudioPlayer 静音
为啥我的声音让我的游戏在 Swift Spritekit 中滞后?
SpriteKit:向场景中添加多个 SKSpriteNode
SpriteKit - 节点未添加到 SKCameraNode - Swift
SpriteKit: NSInvalidArgumentException - 试图添加一个已经有父节点的 SKNode