本文整理汇总了C++中SoundInstance::setRoomSize方法的典型用法代码示例。如果您正苦于以下问题:C++ SoundInstance::setRoomSize方法的具体用法?C++ SoundInstance::setRoomSize怎么用?C++ SoundInstance::setRoomSize使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SoundInstance
的用法示例。
在下文中一共展示了SoundInstance::setRoomSize方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: handleEvent
void HelloApplication::handleEvent(const Event& evt)
{
if(evt.getServiceType() == Service::Wand)
{
xPos = evt.getPosition().x();
yPos = evt.getPosition().y();
zPos = evt.getPosition().z();
if( soundLoopInst != NULL )
soundLoopInst->setPosition( evt.getPosition() );
if( evt.getType() == Event::Down )
{
if( evt.getFlags() == Event::Button3 ) // Wand cross button
{
// playStereo() is for ambient music.
// Currently available functions:
// setVolume(float) - amplitude from (0.0 - 1.0)
// setLoop(bool)
// stop() - this means this instance is finished and a new
// sound instance will need to be created to play
SoundInstance* musicInst = new SoundInstance(music);
musicInst->setVolume(0.2f);
musicInst->playStereo();
}
else if( evt.getFlags() == Event::Button5 ) // Wand L1
{
env->getSoundManager()->stopAllSounds();
}
else if( evt.getFlags() == Event::ButtonLeft ) // DPad
{
SoundInstance* soundInst = new SoundInstance(sound);
soundInst->setPosition( evt.getPosition() );
soundInst->play();
changeCubeColor = true;
}
else if( evt.getFlags() == Event::ButtonRight ) // DPad
{
if( soundLoopInst != NULL || !soundLoopInst->isPlaying() )
{
// Positional sounds use play()
// Currently available functions:
// stop() - this means this instance is finished and a new
// sound instance will need to be created to play
// setPosition(Vector3f)
// setVolume(float) - amplitude from (0.0 - 1.0)
// setLoop(bool)
// setMix(float) - wetness of sound (0.0 - 1.0)
// setReverb(float) - room size / reverb amount (0.0 - 1.0)
// setWidth(int) - number of speakers to spread sound across (1-20)
// This will eventually be replaced with a sound radius
soundLoopInst = new SoundInstance(sound1);
soundLoopInst->setPosition( evt.getPosition() );
soundLoopInst->setLoop(true);
soundLoopInst->setVolume(0.2f);
soundLoopInst->setWidth(3);
soundLoopInst->play();
}
else if( soundLoopInst != NULL )
{
soundLoopInst->stop();
}
changeCubeColor = true;
}
else
{
SoundInstance* soundInst = new SoundInstance(sound);
soundInst->setPosition( evt.getPosition() );
soundInst->setRoomSize(1.0);
soundInst->setWetness(1.0);
//soundInst->setVolume(0.5);
soundInst->play();
changeCubeColor = true;
}
}
else if( evt.getType() == Event::Up )
{
changeCubeColor = false;
}
}
}