参考帖子:http://bbs.osgchina.org/forum.php?mod=viewthread&tid=13912&highlight=osgAudio
http://blog.csdn.net/lovely20085901/article/details/8709539
参考以上的两篇帖子编译osgAudio,除了freealut不能编译外,别的都比较简单
我的机器环境:
XP x32
vs2010
OSG3.3.1
osgAudio支持两类后端,OpenAL and FMOD,必选其一,我选择了OpenAL。
FMOD没有尝试。
选择了OpenAL就需要以下插件:
•openal-1.15.1
•freealut-1.1.0
•libvorbis-1.3.4
•libogg-1.3.2
编译步骤:
1. 安装OpenAL11CoreSDK,无需编译
2. libvorbis和libogg自带了vs2010的工程,打开后只需要重新生成。
3. 编译FreeALUT,我编译FreeALUT的时候cmake总是出错,提示需要AL/alc.h和AL/al.h,但是CMake里面又没有配置openAL的头文件目录,所以被这个问题搞残了,在网上查找方法都不能解决。
最终打开CMakeLists.txt,屏蔽了下面的语句:
#CHECK_INCLUDE_FILES("AL/alc.h;AL/al.h" AL_HEADERS)
#IF(NOT AL_HEADERS)
# MESSAGE(FATAL_ERROR "OpenAL header files not found - aborting.")
#ENDIF(NOT AL_HEADERS)
保存CMakeLists.txt重新用CMake打开CMakeLists.txt,点Configure,没有提示错误,再点击Generate
打开生成的vs工程
重新生成会提示找不到AL/alc.h和AL/al.h头文件,这两个头文件在openAL下的include\AL文件夹下,把每一个项目的 “附加包含目录”都包含上AL这个文件夹,可能还提示需要OggVorbis和ogg的头文件以及
lib库,在配置CMake时,我选择的是生成静态库。
openAL的OpenAL32.lib在你安装的OpenAL11CoreSDK目录下。
上述三方库编译好后,就可以cmake osgAudio了
以下是必填项:
0_ENABLE_SUBSYSTEM_OPENAL 选上
0_ENABLE_SUBSYSTEM_FMOD 取消选择
0_ENABLE_EXAPLES_OSGAUDIO 选上
ALUT_INCLUDE_DIR
ALUT_LIBRARY
ALUT_LIBRARY_DEBUG(如果编译了DEBUG库,就填上,不填亦可)
OGG_INCLUDE_DIR
OGG_LIBRARY
OGG_LIBRARY_DEBUG
OPENAL_INCLUDE_DIR
OPENAL_LIBRARY
OPENAL_LIBRARY_DEBUG
OSG_ROOT
OSG_BUILD_DIR
VORBIS_INCLUDE_DIR
VORBIS_LIBRARY
VORBIS_LIBRARY_DEBUG
VORBISFILE_INCLUDE_DIR
VORBISFILE_LIBRARY
VORBISFILE_LIBRARY_DEBUG
以上都是刚编译好的库,大家应该明白怎么填