Wednesday, December 12, 2007

eqOgre has been included by Equalizer

Yesterday I was told that eqOgre has been included by Equalizer.
Thanks a lot for the great work by Eile, thank you all the guys!

Of course eqOgre is not stable enough by now, it just be put in the 'contrib\eqOgre' subdirectory in the project's path. It still need more work to improve eqOgre. :)

Tuesday, November 27, 2007

Remove the blank window from eqOgre

I'v find the method about removing the blank window of eqOgre.

If you want to change sources by yourself, it's also very easy.

firstly, change "initialise()" in Ogre::Root from true to false, that disable the root to create the blank window automaticly.
secondly, move two lines of
bool carryOn = configure();
if (!carryOn) return false;
in OgreWindow::setup() to the very begin of this method. that measons the ogre's resource must init after
the window (or opengl context) being created.

I'v updated the files for download.

Saturday, November 24, 2007

eqOgre: OGRE integrating with Equalizer


eqOgre is my test project for integrating Ogre application with Equalizer. You can get the executable files from here, and you can find some previews from my last post.

Features
1.Simple Ogre application integrated with Equalizer.
2.Load ply file as mesh data.
3.Interact by mouse and keyboard.
4.Realtime textured shaddow for each mesh object.
5.Support multi-window, multi-channel, or cluster running by equalizer.
6.Just support WindowXP by now.

Important
Because of ogre's limitation, thread safeness is poor, so
1.each node can only contain one pipe, that means you must change the config of 2-window.2d.eqc to use one pipe that contains tow windows.
2.there will be a blank window to be created automaticly, which is needed to initialize some opengl extensions by ogre.

What's needed
1. Ogre 1.4.4 for vc8
2. Equalizer v0.4
3. visual c++ 8.0 with sp1.
4. Ply files, you can find from http://graphics.stanford.edu/data/3Dscanrep/
5. eqOgre source from http://www.esnips.com/doc/64e8e015-571f-41a2-9df4-12a4ce5f7274/eqOgre-full
For lower bandwidth, you can get just source from http://www.esnips.com/doc/5c49c8f1-158f-4b6c-8bd4-027ed960088a/eqOgre-source

How to build?
After prepared IDE and SDKs, you can open the solution in './scripts' folder and build it.
Exacutable files will be outputed to './build/debug' or './build/release' as what configuration you choosed.

How to run?
If you just build with ogre 1.4.4 and Equalizer 0.4, the result can run directly and skip these.
But if you want to change the exacuting directory or edit the code, I hope these would be helpful.

1. Copy these files from Ogre's output directories to your executable directory.
for debug solution, you will need these files at least:
  • CEGUIBase_d.dll
  • CEGUIExpatParser_d.dll
  • CEGUIFalagardWRBoard_d.dll
  • OgreGUIRender_d.dll
  • OgreMain_d.dll
  • OIS_d.dll
  • ReferenceAppLayer_d.dll
  • RenderSystem_GL_d.dll

for release solution, you will need:
  • CEGUIBase.dll
  • CEGUIExpatParser.dll
  • CEGUIFalagardWRBoard.dll
  • OgreGUIRender.dll
  • OgreMain.dll
  • OIS.dll
  • ReferenceAppLayer.dll
  • RenderSystem_GL.dll

2. Copy these files from Equalizer's output directories to your executable directory.
btw, for both configurations, the files have the same names:
  • Equalizer.dll
  • EqualizerServer.dll
  • pthreadVC2.dll

3. Move ply model files to the parent 'models' directory of your executable directory.
ie. if './build/release' is your executable directory, your can copy the ply file into
'./build/models'
The directory of ply files can be set in EqOgreWindow::setupPlyMesh for each PlyMesh object, you can change that as you want.
The default model used in eqOgre is 'rockerArm.ply', which could be found in equalizer's
examples directory also.

4. If you have changed the executable directory, please check the ogre config files are
set correcttly, just as './build/debug/plugins.cfg', './build/debug/plugins.cfg', and
'./common/*.cfg'

5. Now try to run eqOgre.exe just like Equalizer's eqPly example.
Please try 'a/d/w/s' and arrow keys to move the camera, and draw the mouse to rotate the camera.

Thursday, November 8, 2007

Preview of Ogre integrated with Equalizer

Iv tried to integrate Ogre with Equalizer, which took me about two weeks.

The demo application load several ply models to hardware buffer and then render the scene with texture shadow, which could also run on a tow nodes cluster.

It was developed under Ogre 1.4.4, Equalizer 0.4 and VS 2005 with sp1, and Ill release the source code after cleaning up the coarse files. :)

Here is some of the previews:

The Ogre application with Equalizer without eqServer:



The Ogre application with 2-windiw.2d.eqc:



Here is another demo with 2-window.2d.eqc: