65.9K
CodeProject 正在变化。 阅读更多。
Home

VideoGame: 开发引擎声音

starIcon
emptyStarIcon
starIcon
emptyStarIconemptyStarIconemptyStarIcon

1.11/5 (15投票s)

2006年4月23日

2分钟阅读

viewsIcon

37766

downloadIcon

190

Oki.lib 是一个库,供程序员在他们的项目中使用,这些项目使用 Visual Studio NET 2003 或更高版本以及 VC6 开发。

引言

Oki.lib 是一个为使用 Visual Studio NET 2003 或更新版本和 VC6 进行开发的程序员提供的库。
它允许在图形引擎或视频游戏中管理声音文件,可用于商业项目或学习目的。

Oki.lib 包含基于 DirectShow 的函数来处理 .mp3、.wav 和 .mid 文件,以及 DirectSound/3D 函数来处理 .wav 文件。

声音文件必须放置在主项目目录中自动启动 .exe 后创建的“Okisound”目录中。

此 oki.lib 版本可以处理的最大声音文件数量为 DirectShow 64 个,DirectSound 64 个,DirectSound3D 64 个。

初始化过程在运行时记录在 LogOki.htm 中。

下载源代码 2.70 Mb

下载演示 2.79 Mb

分发文件

描述文件
0. Oki_2003.vcproj
示例项目
1. Oki.h
要放入计划 vs 中的头文件
2. Oki.lib 和 Oki.dll
要包含在项目 vs 中的文件库和 dll
3. Oki.htm
Oki.lib 教程

配置

- 将 Oki.lib 和 Oki.dll 放入计划 vs 的主要目录中
- 在编译器的选项中包含 Oki.lib

为了包含 Oki.lib,请转到编译器的配置面板,单击鼠标键在 Project/propierties/linker/input 上
在“附加依赖项”中,如果存在,则删除所有声音,然后复制这些

oki.lib
strmiids.lib
dsound.lib
dxerr9.lib
dxguid.lib
d3dx9.lib
d3d9.lib
Dinput8.lib
winmm.lib
comctl32.lib

对调试和发布进行此步骤

要进行发布编译,请转到编译器的配置面板,单击
C/C++\代码生成
在运行时库中选择声音
单线程 (/ML)

要进行调试编译,请转到编译器的配置面板,单击
C/C++\代码生成
在运行时库中选择声音
单线程调试 (/MLd)

按下“应用”和“确定”按钮

- 将头文件 oki.h 包含在项目 vs 中,并在 main.cpp main 中放置此行
#include "oki.h"

示例代码:

//Init Game
//-----------------code-------------------
// Initialise sound
Inizializzazione(DXUTGetHWND(), GetModuleHandle(NULL));
// play sound DirectShow
SoundPlay_Show(1, 0);
// play sound DirectSound
SoundPlay_Sound(1, true, 0, 22050, 0);
// play sound DirectSound3D
SoundPlay_Sound3D(1);
//----------------end code--------------------

如你所见,这非常简单。教程中还有更复杂的示例,以便实现纯粹的声音引擎

关注点

使用 DirectShow 文件管理声音 .mp3、.wav 和 .mid。
DirectSound 和 DirectSound3D .wav

更新新版本和常见问题解答/评论
http://www.twork.it/public/oki/guestbook.asp

© . All rights reserved.