SpriteKit添加音效

4
我正在尝试在游戏中每当屏幕被触摸时添加一个声音效果。我已经有了一个touchesBegan方法来移动一个角色,我能把这个放到哪里?
[SKAction playSoundFileNamed:@"sfx.wav" waitForCompletion:NO];

需要将其放入该方法中,还是需要创建一个新方法?此外,我应该在项目的哪个位置存储声音文件?是否有特定的位置,或者可以随意放置?
3个回答

8

试试这个:

首先确保你已经设置了 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
      }
}

我应该把音频文件存储在项目的哪个位置?

  • 您需要将其放置在应用程序的文档目录中,也就是资源文件夹中。

6
只需要放置

标签


[self runAction:[SKAction playSoundFileNamed:@"sfx.wav" waitForCompletion:NO]];

将代码添加到touchesBegan方法中。

您可以将音频文件放置在项目的任何位置。


1
你的代码运行良好。 至于文件,你可以将它放在项目中的任何位置。
你甚至可以创建一个像“sfx”之类的新文件夹,这样你就不必担心它的路径(如果你把你的“sfx.wav”放在sfx文件夹中,你不需要像“sfx/sfx.wav”一样加载它)。嘿嘿,那是我上次做的。提醒一下。 顺便说一句,你确实需要包含那个.wav文件。 祝你好运。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接