DotScene Loading

CaseyB

22-02-2006 21:15:57

I see that you have DotScene loading and queueing on the TODO list. How is that going? Is it a higher or lower priority? Do you have any predictions as to when it may be included?

Falagard

22-02-2006 21:20:39

I'm hoping that Tuan goes with GOOF instead of dotScene directly, and then indirectly supports dotScene through the fact that the GOOF Editor will include support for importing dotScene.

But I'll leave it to Tuan to respond.

Oh, it would also make sense to be able to import dotScene and convert to GOOF on the fly so you would never have to go through the editor. I'll add that to my todo.

tuan kuranes

23-02-2006 09:02:52

GOOF instead of dotScene directly
True. Goof is The Main Way.

That said, I'm thinking about making more demos, to show more side, and only specific side of PLSM2. A plsm2 demo using dotScene file load would be welcome/interesting

CaseyB

23-02-2006 16:08:53

I am doing it now, but I doubt it's the most efficient way! I just use Nikki's DotScene loader.

void createScene(void)
{
sceneMgr->setSkyDome(true, "Sky", 5, 8);
sceneMgr->setAmbientLight(ColourValue(1.0f, 1.0f, 1.0f));
sceneMgr->setShadowTechnique(SHADOWTYPE_STENCIL_ADDITIVE);

sceneMgr->setWorldGeometry("paginglandscape2.cfg");
parseDotScene("Scene.xml", "General", sceneMgr);

// Setup the Camera Node
node = sceneMgr->getRootSceneNode()->createChildSceneNode("cameraNode");
node->attachObject(camera);
}

It works fine! In fact if you look at my post about occlusion, the buildings are the DotScene that I load.

tuan kuranes

23-02-2006 16:19:07

Good beginning.

Now, I think it should rather be loaded per page or per tile, don't forget to name Static entities loaded from XML with a name begining with static to get most of the CHC algo.

Static => occludee (big numbers of tris but bad occluder, like lots of small objects baked into ogre "staticgeometry", (grass, bushes, tree leafs))
StaticOccluder => occluders (good occluder, big objects like big rocks, mountains, all buildings, big trees trunk, etc...)

suppose you have a "MyHouse" entity to load => load it into plsm2 as "StaticOccluderMyHouse"
suppose you have a "bunch load of grass" entity to load => load it into plsm2 as "StaticMyGrass"

CaseyB

23-02-2006 16:26:02

Now, I think it should rather be loaded per page or per tile.

You mean that happens auto-magically or I should load it per page or per tile?

suppose you have a "MyHouse" entity to load => load it into plsm2 as "StaticOccluderMyHouse"
suppose you have a "bunch load of grass" entity to load => load it into plsm2 as "StaticMyGrass"


<entity name="StaticOccluderBuilding.005" meshFile="Mesh.005.mesh"/>

Sweet, thanks!

tuan kuranes

23-02-2006 16:34:22

You mean that happens auto-magically or I should load it per page or per tile?

Use terrain listener to load/unload when needed.
Look how demo those basically this in terrainlistener.h
(it should use a vector of vector corresponding to pages of map loaded entities to be able to unload them when page/tile hides.)

lopemanc

27-02-2006 15:29:59

Coming to this thread a little late I'm afraid. I saw the response from Tuan shown below:

True. Goof is The Main Way.

What will this mean to those using ODN? GOOF wont work with ODN. Right now it is my understanding that PLSM does. Seems like scene loading is an important addition.

tuan kuranes

27-02-2006 15:50:23

Right now it is my understanding that PLSM does

Nope, right now you can use it in your app, using plsm2 page/tile listener mechanism to load scene by page and by tiles.
But I intend to add a DotScene Demo to my wish list, if no one does before...

Falagard

27-02-2006 18:11:43

It's not hard to load your scenes by page and tile. The problem is creating those scenes. I had .scene files that I created in 3ds max working 2 years ago, the code doesn't take much.

You guys should get off your bums and write it yourselves.

However, like I said the problem is creating the scenes in the first place. That's where the GOOF editor comes in. Even if GOOF doesn't work with OgreDotNet (although I'm sure it could be compiled in .NET with a bit of work) you could use the GOOFEd to create your scenes, then export as .scene files - which would already be split up into pages for you.

I'm not saying this will all be available immediately with GOOF, but wouldn't take too much work to add.

AndyWillSaveUs

07-03-2007 22:15:03

Just wondering if that PLSM2 demo using dotScene ever got around. I'm in the process of adding dotScene to my PLSM2 application but I'm exactly sure where to start.

Could someone please explain how using the PLSM listener stuff works or maybe link to an example online somewhere?

We're going to be using Freeworld 3D to place all of the bulidings and other meshes, and then use it to export a dotScene. Anyone have any experience doing this before with PLSM? just curious.

Thanks