游戏开发论坛

 找回密码
 立即注册
搜索
查看: 8052|回复: 5

OpenAL编程?

[复制链接]

180

主题

3511

帖子

3520

积分

论坛元老

Rank: 8Rank: 8

积分
3520
发表于 2006-6-20 15:25:00 | 显示全部楼层 |阅读模式
播放"c:\sound.wav"文件,用 OpenAL怎么编?

要求:只要能我方就行,不需要任何操作.播放一次该文件,然后关不关闭无所谓.
当然最好是循环播放. [em3]

2万

主题

2万

帖子

6万

积分

论坛元老

Rank: 8Rank: 8

积分
66489
QQ
发表于 2006-6-20 18:23:00 | 显示全部楼层

Re:OpenAL编程?

官方的SDK中有示例

180

主题

3511

帖子

3520

积分

论坛元老

Rank: 8Rank: 8

积分
3520
 楼主| 发表于 2006-6-22 09:57:00 | 显示全部楼层

Re:OpenAL编程?

官方的SDK?
当然看过.

那为什么还来这里发帖?
因为官方的SDK代码"太长了"! 而且有些代码其实可以再省略.

有没有高人可以用4K以内的原代码编出 播放程序?

0

主题

61

帖子

61

积分

注册会员

Rank: 2

积分
61
发表于 2007-7-24 12:42:00 | 显示全部楼层

Re:OpenAL编程?

Windows的Shell函数。

楼上满意了?只需要1句而已。

当然了,不是用OpenAL。

有没有高人能够用348个字节实现一个蠕虫??

哦还有,用不大于17.5K的空间实现一个LOGO,要求用OpenGL来实现,播放时间不少于5分钟……

103

主题

1432

帖子

1458

积分

金牌会员

Rank: 6Rank: 6

积分
1458
QQ
发表于 2007-8-17 22:24:00 | 显示全部楼层

Re:OpenAL编程?

不是吧,这么简单的需求,都要4k以上的代码?汗

180

主题

3511

帖子

3520

积分

论坛元老

Rank: 8Rank: 8

积分
3520
 楼主| 发表于 2008-7-2 17:48:00 | 显示全部楼层

Re:OpenAL编程?

ALCcontext *context;
ALCdevice *device;
ALuint buf,sor;
device = alcOpenDevice("DirectSound3D");
context=alcCreateContext(device,NULL);
alcMakeContextCurrent(context);
alGenBuffers(1,&buf[0]);
ALenum format;
ALvoid* data;
ALsizei size;
ALsizei sfreq;
ALboolean loop;
alutLoadWAVFile("c:\sound.wav",&format,&data,&size,&sfreq,&loop);
alBufferData(buf[0],format,data,size,sfreq);
alutUnloadWAV(format,data,size,sfreq);
alGenSources(1,&sor[0]);
alSourcei(sor[0],AL_BUFFER,buf[0]);
alSourcePlay(sor[0]);

鄙视那些逃避主义者。
写不出代码,喜欢装B,写一大堆其他跑题内容来给自己脸上贴金。
我又没逼你们写代码,写不出来又没人怪你。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2026-1-22 03:00

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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