摘要:
使用DirectMusic在DirectAudio 中,DirectSound负责数字音频方面的处理,而DirectMusic则负责Midi文件(Musical Instrument Data Interface,数字音乐格式,.mid作为文件扩展名),DirectMusic固有音乐文件(.sgt文件)和数字录音设备录制的波形格式文件(.wav文件)等文件的播放操作。能体现DirectMusic的强大之处是DirectMusic固有文件格式,一首用DirectMusic固有文件格式制作的音乐包括数个小音乐格式,这些样式还能用不同的乐器组合一个接一个地播放。随机的样式和乐器的选取创造出了随时都在 阅读全文
摘要:
调整声道平衡所谓声道平衡就是调节左右声道的大小, DirectSound定义了两个宏帮助把声道平衡调节到最左边和最右边,使用DSBPAN_LEFT将声道调整到最左边,使用DSBPAN_RIGHT 将声道调整到最右边。通过调用IDirectSoundBuffer8::SetPan函数可以调节声道平衡。 The SetPan method sets the relative volume of the left and right channels.ParametersdwFrequency Frequency, in hertz (Hz), at which to play the audio 阅读全文
摘要:
音乐就是一系列的音符,这些音符在不同的时间用不同的幅度被播放或者停止。有非常多的指令被用来播放音乐,但是这些指令的操作基本相同,都在使用各种各样不同的音符。在计算机上进行作曲,实际上是存储了很多组音乐,回放时由音频硬件将这些音符播放出来。Midi格式(文件扩展名是.MID)是存储数字音乐的标准格式。DirectMusic 音乐片段(music segments)使用.SGT文件扩展名,其他的相关文件包括乐队文件(band file .BND),这种文件里面包含乐器信息;弦映射表文件(chordmaps file .CDM)包含在回放时修改音乐的和弦指令;样式文件(styles file .ST 阅读全文
摘要:
开始使用主音频缓存让缓存在程序启动的时候开始播放可以节省不少处理器时间。因为内存资源是有限的,特别是在硬件设备中,而你使用的数据缓存可能需要任意大小,因此主音频缓冲区和辅助缓冲区使用环形缓存。因为数据缓冲是一个一维数组,所以可以让这个缓冲区头尾相接。这是一个十分强大的技术,利用这个技术我们可以节省大量的内存。声音在进行混音处理后,被送入环形主音频缓存。一旦播放位置到达主音频缓存的终点,声音又从头开始播放,这样声音就被无间隙地连续播放。如果想要使用缓存的这种循环特性,需要指定启用循环播放的特性,若不然当播放到缓冲区终点时,播放就停止了。为了播放缓存中的音频数据(在开启循环选项的情况下播放),需要 阅读全文
摘要:
游戏要实现模型的突出显示,最好是边缘高亮的效果.刚听到这个东西时,第一个进入头脑中的就是:边缘检测.于是就写了一个:Pass 0:渲染模型到一个RenderTarget Model上,并把模型的形状写入Alpha通道.Pass 1:对上面得到的Alpha通道用拉普拉斯模板进行滤波,得到一个边缘,写入另一个RenderTarget Edge.Pass 2:把前面得到的两个RenderTarget进行合成,输出到屏幕.虽说效果还不错,但是用掉了两个RenderTarget,显然不合算.而且,用拉普拉斯在PixelShader中进行逐像素的处理,效率并不高.阿来在GameDev上求得另一种方法:把模 阅读全文
摘要:
作者:炎龙工作室 千里马肝版本:v1.0最后更新日期:2002-3-30绪言在游戏中,因为我们是中国人麻,通常都需要显示汉字,比方说交待剧情。而对于文字的显示,英文的显示要较其简单得多,因为只有26个字母,就算再加一些标点、符号什么的,用一张位图,就可以足以显示所有的单词了,而相关实现技巧,也比较轻松。而中文的显示方法,要复杂得许多。记得原来在DOS下,汉字的显示都是读的UCDOS的点阵字库,而点阵字库的读取方法,在UCDOS SDK中都有源代码可以参考。但是自从Windows操作系统开始,我们开始了解到一种更好的字库,它就是TTF。注:以下我所指的开发环境,除非明确说明,默认的平台是VC6. 阅读全文
摘要:
接口程序和API(Interfaces 和 API) 图14:各种流行的API技术 现在让我们讨论音频引擎中API编程的应用。可供选择的选项并不多:Windows Multimedia, Direct Sound, OpenAL, Aureal A3D。 不幸的是,Aureal A3D 的驱动仍旧臭虫(bug)连篇,在目前最流行的Windows 2000和XP操作系统,它工作效率的稳定性仍然非常差。 视窗媒体系统(Windows Multimedia system)是从早期的Windows 3.1继承而来的最基本的声音再现系统。它较大的缓冲会造成比较大的延迟,所以在游戏中很少有应用;但是,某 阅读全文
摘要:
3D 音响技术:声波追踪 VS 缠绕(wavetracing vs reverb) 图9:多种音效技术 在1997-1998年,每个芯片制造商都加大力度开发它们认为有前途的音频技术。Aureal,当时业界的领先者,将赌注放在极限真实的游戏上,它采用的技术为"声波追踪"(Wavetracing)。Creative 则认为使用缠绕的预前运算会更有更好的效果,于是它便开发了EAX。Creative 在1997年收购了Ensoniq / EMU:专门研究开发和制造音效芯片的公司 - 这也是为什么它在当时拥有缠绕技术的原因。Sensaura 出现在市场的时候,它使用了EAX作为基础,命名为Environ 阅读全文
摘要:
在最佳听音位置(sweet spots)听众能够理想地听到所有的3D音频效果,而在其它的区域声音会发生失真。这样我们在倾听声音的时候就就需要选择正确的位置。对于一对音箱来说,有一个平衡、声带、细节、立体感最好的听音位置,称作Sweet Spot。录音和制作的时候始终在这一点对监听具有重要的意义。Sweet Spot通常位于一对立体声音箱中间,前方数英尺的地方。许多专家认为从高音头的上方到听音者的鼻尖构成一个虚幻的等边三角形,就是Sweet Spot的所在。因为受到许多客观条件的影响,这个位置可能有一些偏移,例如调音台面板的反射就会有影响,音箱的差异也会影响到Sweet Spot,一些音箱具有较 阅读全文
摘要:
3D Sound vs Surround Sound 在游戏开发中,声音(Sound)的地位并不如图象那么重要。游戏开发者们会发费大部分的时间来增加3D图形的新功能和特效;但是,想要说服他们花更多的时间和金钱,来开发具有高质量音频效果的游戏可以说是非常的困难。同时,在硬件方面,玩家们也更乐意购买最新款式的3D图象加速卡,而对新的声卡似乎也并不是那么感冒。 然而,随着显示卡的发展正在呈现出顶峰的状态,玩家对游戏也表现出越来越挑剔的姿态,认为优秀的游戏除了具有赏心阅目的图象和绚丽的特效外,音效也是不可缺少的,所以现在的形势似乎有急转的趋势 - 用户和开发者比以往任何时候都专著于音频系统的效果。在 阅读全文