Having troubles with the OgreAL

terrykim426

16-09-2008 22:24:38

Hi, im very new to this whole ogre stuffs.
I only had just manage to get a workable ogre engine via building from the ogreSDK 1.6.

Now im trying to integrate the ogreAL, so that i can start working for my final year project. I had a problem with the linker, which already linked to my openal folder via the enviroment variable OPENAL_SDK, i checked and the link is correct, but it just wont link up. So i end up, setting the absoute pathname, and it works.

Now it come to this main issue im having right now. I read thru the ogreal forum, i just dun get it and have totally no idea on how to solve this.

I read from one of the thread, is it true that the ogreal is not compatible with ogreSDK 1.6? will it be much compatible with ogreSDK 1.4.9?

btw, i have compiled both ogg and vorbis, only some warning from the vorbis. And i do installed the openal sdk.

Here's my error log
1>------ Build started: Project: OgreAL, Configuration: Debug Win32 ------
1>Compiling...
1>OgreALListener.cpp
1>c:\ogreal\ogreal-eihort\src\ogreallistener.cpp(253) : error C2259: 'OgreAL::Listener' : cannot instantiate abstract class
1> due to following members:
1> 'void Ogre::MovableObject::visitRenderables(Ogre::Renderable::Visitor *,bool)' : is abstract
1> c:\ogresdk\include\ogremovableobject.h(484) : see declaration of 'Ogre::MovableObject::visitRenderables'
1>OgreALSound.cpp
1>c:\ogreal\ogreal-eihort\src\ogrealsound.cpp(938) : error C2259: 'OgreAL::Sound' : cannot instantiate abstract class
1> due to following members:
1> 'void Ogre::MovableObject::visitRenderables(Ogre::Renderable::Visitor *,bool)' : is abstract
1> c:\ogresdk\include\ogremovableobject.h(484) : see declaration of 'Ogre::MovableObject::visitRenderables'
1>c:\ogreal\ogreal-eihort\src\ogrealsound.cpp(949) : error C2259: 'OgreAL::OggSound' : cannot instantiate abstract class
1> due to following members:
1> 'void Ogre::MovableObject::visitRenderables(Ogre::Renderable::Visitor *,bool)' : is abstract
1> c:\ogresdk\include\ogremovableobject.h(484) : see declaration of 'Ogre::MovableObject::visitRenderables'
1>c:\ogreal\ogreal-eihort\src\ogrealsound.cpp(953) : error C2259: 'OgreAL::WavSound' : cannot instantiate abstract class
1> due to following members:
1> 'void Ogre::MovableObject::visitRenderables(Ogre::Renderable::Visitor *,bool)' : is abstract
1> c:\ogresdk\include\ogremovableobject.h(484) : see declaration of 'Ogre::MovableObject::visitRenderables'
1>Generating Code...
1>Build log was saved at "file://c:\OgreAL\OgreAL-Eihort\OgreAL\Debug\BuildLog.htm"
1>OgreAL - 4 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========


thanks.

stickymango

16-09-2008 23:29:57

Its very simple to correct those errors, you just need to add the missing functions to the classes complaining about them, just an empty definition wil do. Alternatively you could go back to Ogre 1.4.x and you shouldn't have any compilation problems. A third option is OgreOggSound which is already Shoggoth (1.6.x) compatible...

HTH

terrykim426

17-09-2008 08:59:20

Hey thanks for the advises. I tried the OgreOggSound, but i had some problem with the boost stuff, so i tried to install the ogre1.4.x which work fine with the ogreal. Just that the demos seems not to be able to work.

I place the demo.exe to the folder where the ogremain_d.dll is and copied the ogreal_d.dll to the same folder. The exe run but crash right after.

My ogreal seems to build nicely for both debug and release, so i assume its workable.

Thanks for the help (^_^)

stickymango

17-09-2008 12:37:51

OgreOggSound comes predefined to use boost for multi-threading but you can of course disable that in OgreOggSoundPreReqs.h, remove any references to $(BOOST_ROOT) in the project paths and it should compile fine.

Regarding OgreAL, I know from experience that there are a few bugs with the library and the demos but its still a useable library. The main bugs are with the multi-threaded version but there's also been mention of random crashes and random sounds being played so just be aware.

terrykim426

17-09-2008 19:55:51

Thanks for the advice, im sure it will help in my progression on my project.

Lolicious

27-09-2008 11:51:33

From http://www.ogre3d.org/phpBB2addons/viewtopic.php?p=47978#47978

To compile OgreAL rev 115 with Ogre 1.6 you must change a few lines in the OgreAL headers because the author hasn't update for a few months, the #ifdef guard still check for 1.5 instead of 1.6

OgreALSound.h line 310 and OgreALListener.h line 143
From
#if(OGRE_VERSION_MAJOR == 1 && OGRE_VERSION_MINOR == 5)
To
#if(OGRE_VERSION_MAJOR == 1 && OGRE_VERSION_MINOR == 6)

terrykim426

15-10-2008 04:02:46

Oh, thanks thanks.

I using OgreSDK 1.4.9 instead of 1.6, as i thought it will be more stable.

Thanks for the help anyway ^^