用C语言开发NES游戏(CC65)16、声音效果

粘贴到CSDN格式没调,想看格式好的点下面

https://happysoul.github.io/nes/nesdoug/

即使你没有音乐天赋,你也可以制作一些很酷的音效。

 

再次用到了famitracker。

你可以用 fx或者其他的,存到一个文件夹中,每个音效都是一个"song",再模块属性中添加音乐

 

 

尝试编写音乐,使脉冲通道1或三角形播放主旋律。然后使用脉冲通道2(或噪声通道)进行声音效果。这样不会发生冲突。如果您遇到sfx切割问题,您还可以尝试使音效音量大于音乐(至少一点点)。我实际上让我的sfx比音乐更安静,但比Square 2频道更响亮(大多数sfx播放)

 

他们不能太长,用C00结束音效,C00要单独占一行。

 

保存,导出 NSF文件

 

 

16.声音效果

即使你没有音乐天赋,你也可以制作一些很酷的音效。音乐很好,但如果感觉像是真正的游戏,音效会变得更好。

 

再次,开放的famitracker。你几乎可以使用所有的fx和任何笔记。将所有声音效果放在1个文件中,每个声音效果都是自己的“歌曲”。在模块属性中添加歌曲...

 

18_FT

 

尝试编写音乐,使脉冲通道1或三角形播放主旋律。然后使用脉冲通道2(或噪声通道)进行声音效果。这样他们就不会发生碰撞。如果您遇到sfx切割问题,您还可以尝试使音效音量大于音乐(至少一点点)。我实际上让我的sfx比音乐更安静,但比Square 2频道更响亮,大多数sfx播放。

 

它们应该相当短。用C00结束每个效果,并将C00放在自己的行上。

 

保存。现在,导出到NSF文件。

 

19_FT

 

打开命令提示符并使用nsf2data和-ca65选项。我正在使用famitone 2 v1.15。声音效果代码在上次更新中发生了变化,因此请使用1.15来制作数据。

 

在sounds_data:中包含crt0.s中的声音数据,并确保FT_SFX_ENABLE设置在顶部,并且FT_SFX_STREAMS也是1.初始化代码将初始化我们的声音效果。拥有1个流意味着一次只能播放1个sfx。

 

我们只需要调用声音效果,如...

sfx_play(sfx,channel)。通道意味着流,使用channel = 0,因为我们只有1个激活。

 

如果要定义2-4个流,可以将通道设置为1,2,3。更高的优先级。我会警告不要太多,他们可能会发生冲突。我之前用了2个。

 

我做了它,以便跳转调用sfx_play(SFX_JUMP,0)。B按钮播放噪音sfx,选择按钮播放“ding”sfx。我稍后会用在吃硬币时候。

 

START 按钮依旧可以改变音乐

 

https://github.com/nesdoug/19_SFX/blob/master/platformer3.c

 

https://github.com/nesdoug/19_SFX

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值