游戏开发论坛

 找回密码
 立即注册
搜索
查看: 3359|回复: 2

OpenAL需要不需要初始化devicelist?

[复制链接]

63

主题

181

帖子

181

积分

注册会员

Rank: 2

积分
181
发表于 2008-7-10 09:26:00 | 显示全部楼层 |阅读模式
用的它的framework的例子为什么找不到ALDeviceList?不初始化的话似乎没声音啊。

ALboolean ALFWInitOpenAL()
{
        ALDeviceList *pDeviceList = NULL;
        ALCcontext *pContext = NULL;
        ALCdevice *pDevice = NULL;
        ALint i;
        ALboolean bReturn = AL_FALSE;

        pDeviceList = new ALDeviceList();
        if ((pDeviceList) && (pDeviceList->GetNumDevices()))
        {
                ALFWprintf("\nSelect OpenAL Device:\n");
                for (i = 0; i < pDeviceList->GetNumDevices(); i++)
                        ALFWprintf("%d. %s%s\n", i + 1, pDeviceList->GetDeviceName(i), i == pDeviceList->GetDefaultDevice() ? "(DEFAULT)" : "");
       
                do {
                        ALchar ch = _getch();
                        i = atoi(&ch);
                } while ((i < 1) || (i > pDeviceList->GetNumDevices()));

                pDevice = alcOpenDevice(pDeviceList->GetDeviceName(i - 1));
                if (pDevice)
                {
                        pContext = alcCreateContext(pDevice, NULL);
                        if (pContext)
                        {
                                ALFWprintf("\nOpened %s Device\n", alcGetString(pDevice, ALC_DEVICE_SPECIFIER));
                                alcMakeContextCurrent(pContext);
                                bReturn = AL_TRUE;
                        }
                        else
                        {
                                alcCloseDevice(pDevice);
                        }
                }

                delete pDeviceList;
        }

        return bReturn;
}

63

主题

181

帖子

181

积分

注册会员

Rank: 2

积分
181
发表于 2008-7-10 10:06:00 | 显示全部楼层

Re:OpenAL需要不需要初始化devicelist?

搞定了~ 终于能发声了>_<不是在库里定义的,而是在sample的framework里定义的。 似乎是需要初始化的。
code比Direct Sound还乱。

2万

主题

2万

帖子

6万

积分

论坛元老

Rank: 8Rank: 8

积分
66489
QQ
发表于 2008-7-10 10:33:00 | 显示全部楼层

Re:OpenAL需要不需要初始化devicelist?

不需要初始DeviceList

DeviceList枚举是1.1才加入的新功能,很多声卡驱动根本不支持。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-22 01:27

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表