OSMScene.h and OSMScene.cpp source files

mr_burns

31-01-2008 02:51:33

Hi all,

I am looking for the distribution site for the OgreOSMScene.h

I have one that I am using from 2006, but am wondering if there is a repository with the latest source, and documentation etc.

Any help would be appreciated.

This is the header file I have at the moment, if that helps:



/**********************************************************************
*<
oFusion Scene Loader CE (see License.txt)

FILE: ogreAnimationCompiler.h

DESCRIPTION: OE_XMLScene reader (oe_scene) include header

IMPLEMENTED BY: Andres Carrera

HISTORY:

Original implementation by Lasse Tassing (Channex)
2005 ITE ApS, Lasse Tassing

*> Copyright (c) 2006, All Rights Reserved.
**********************************************************************/


#ifndef __OGRE_XML_SCENE__
#define __OGRE_XML_SCENE__


#include "Ogre.h"
#include "OgreSharedPtr.h"
#include "tinyxml.h"

#include "IOSMSceneCallbacks.h"
#include "OSMAnimSerializer.h"

class TiXmlDocumentPtr : public Ogre::SharedPtr<TiXmlDocument> {
public:
TiXmlDocumentPtr() : Ogre::SharedPtr<TiXmlDocument>() {}
explicit TiXmlDocumentPtr(TiXmlDocument* rep) : Ogre::SharedPtr<TiXmlDocument>(rep) {}

};

class OSMScene
{
public:

typedef std::vector<Ogre::Camera*> CameraList;
typedef std::vector<Ogre::Light*> LightList;
typedef std::vector<Ogre::Entity*> EntityList;

OSMScene(Ogre::SceneManager* pSceneMgr = 0, Ogre::RenderWindow* win = 0);
~OSMScene(void);

// Initialise
bool initialise(const char *pszXMLFile, OSMSceneCallbacks* pCallbacks = NULL);

// Declare all resources used in the scene
void declareResources(void);

// Create scene, optionally attaching it to a parent node
bool createScene(Ogre::SceneNode *pParent = NULL);

// Get list of cameras in this scene
CameraList& getCameraList(void);

// Get list of lights in this scene
LightList& getLightList(void);

// Get list of lights in this scene
EntityList& getEntityList(void);

// Get created scene manager
Ogre::SceneManager* getSceneManager(void) { return mSceneMgr; }

private:
// Create node from information
Ogre::SceneNode* createNode(TiXmlElement* pElem, Ogre::SceneNode* pSceneRoot);

// Create SceneManager
Ogre::SceneNode* createSceneManager(TiXmlElement* sceneProp, BOOL& bHandled);

// Set scene properties
void setSceneProperties(TiXmlElement* sceneProp);

// Creation helpers
void createEntities(TiXmlElement* pEntityNode, Ogre::SceneNode* pSceneRoot);
void createLights(TiXmlElement* pLightNode, Ogre::SceneNode* pSceneRoot);
void createCameras(TiXmlElement* pCameraNode, Ogre::SceneNode* pSceneRoot);
void createStaticGeometry(TiXmlElement* pStaticGeom);
void createHelpers(TiXmlElement* pLightNode, Ogre::SceneNode* pSceneRoot);
void createShapes(TiXmlElement* pLightNode);


typedef std::set<unsigned int> SkeletonHandles;
void loadAnimations(TiXmlElement* animationsNode, SkeletonHandles& handles);

// Created objects
CameraList mCameras;
LightList mLights;
EntityList mEntities;

// Callback interface
OSMSceneCallbacks* mCallbacks;

// Scene manager
Ogre::SceneManager* mSceneMgr;
Ogre::RenderWindow* mWindow;

// Scene XML document
TiXmlDocumentPtr mXMLDoc;
};

#endif



Thanks,
B.

mr_burns

31-01-2008 20:41:46

Hi all,

I've made some headway.

http://www.ofusiontechnologies.com/downloads.html

Has got oScene loader library source code. It does not provide access to the source repository, but its a step in the right direction.

I then ran CPPDoc on the source, so I've have documentation for the current version.

If anyone finds a link for the latest source, please let me know.

B.

Evak

31-01-2008 22:28:03

I'm pretty sure the one on the main download page of the Ofusion site is the latest sceneloadet unless you have a pro licence. The latest Pro scene loader is dated Nov 21st 2007.

It's the Ofusion exporter itself that gets updated the most. Ofusion Pro exporter was last updated Jan 16th with a hotfix Jan 18th.

I believe a new CE version is due to be released soon though :)

Gormio

01-02-2008 11:38:19

Ofusion Pro exporter was last updated Jan 16th with a hotfix Jan 18th.

Really? For some reason our customer page has the latest version dated July 20, 2007 and a hot fix (#198) from August 18, 2007. Could Lioric explain where to get these newer versions?

It has been a little confusing to read (from this forum) constant promises about new versions but see nothing released...

Evak

01-02-2008 16:09:49

hmm, there's been a couple of times when my support page didn't seem to get updated to the latest version mentioned on here. Sometimes Lioric creates custom builds for peoples specific needs. It's definately worth bringing up your case Gormio as it does sound like your missing quite a few releases to me :(

Perhaps theres a bug in Liorics support system he is unaware of?

Lioric

01-02-2008 21:11:44

There was an issue in the notification and update system on some accounts, it seems your page was affected by this

Could you open a support ticket or send an email to support with your details, and this will be reviewed immediately

In the mean time, if you want to browse the changelog for the latest fixes, search the support center knowledge base for "hotfix"

Gormio

02-02-2008 10:32:51

Could you open a support ticket or send an email to support with your details, and this will be reviewed immediately

I will do this once I get back to work and can gather the relevant information.

In the mean time, if you want to browse the changelog for the latest fixes, search the support center knowledge base for "hotfix"

That I did and indeed it seems there has been some significant progress since our last version. Looking forward to get this solved :P

syedhs

02-02-2008 13:30:25

Yeah I also notice that for my case the hotfixes don't get updated. The last one date back to 6 August 2007.