Lots of exported problems with huge scene

gerds

15-03-2006 08:55:41

I'm trying to export a huge scene (50km of railway track with tracks, trees, platforms etc).

I'm using 3dsmax8 and ogre 1.0.7.

I'm having several problems:

1) Many objects appear multiple times in the .osm file which throws an exception when I try to load the file. These objects are names like "Object61_entity", "Object93_entity" etc... These objects do not exist in my .max file so these names must be autogenerated (incorrectly?) by the exporter (?).

2) Not all objects appear in the correct location when I load the scene, lots of them are bunched around the origin. For example the track is made in hundreds of sections and if I move the camera to the origin I can see hundreds of pieces of track sitting on top of each-other at weird angles.

3) Our entity naming scheme in max includes invalid filename characters like '[', ']' and ':'. Would it be a good idea to just modify the exporter to change ':' to '_colonmagic_' and then change the importer to rename back again? This would save a lot of model and configuration file changes. We have over 50000 modifiable parts named using this scheme.

Any help would be great.
Thanks

IFASS

15-03-2006 11:31:04


2) Not all objects appear in the correct location when I load the scene, lots of them are bunched around the origin. For example the track is made in hundreds of sections and if I move the camera to the origin I can see hundreds of pieces of track sitting on top of each-other at weird angles.



That's an easy one.. select all your objects --> utilities tab --> reset xform :)

Lioric

15-03-2006 16:09:22

1. You should update to the latest oFusion version

2. Answered by IFASS :)

3. I will add mesh filename support to the object properties panel so you can set the desired name of the .mesh file on disk, later with the oScene loader events system you can change the names of the objects to the original names

Entity names must be unique[\b] in ogre applications

gerds

16-03-2006 14:03:07

1) I've upgraded to the latest version of ofusion and i still get some "Object'x'_entity exceptions because they have already been created. There are no objects with these names in the .max model. hmm..

2) I have done a "select all" -> "utilities tab" -> "reset xform" but this has had no noticable effect. There is still km's and km's of track all sitting around the origin when I load the model.

Lioric

16-03-2006 16:40:46

The updated version should not produce any object with "_entity" added to its name, probably your installation was not correctly updated

Try "center pivot to object" and then the "Reset XForm"

If you prefer, send me the scene file and i will take a look at it

gerds

16-03-2006 21:41:37

Thanks, I'll uninstall and reinstall it to make sure its installed ok.

Sorry, but whats the "centre pivot to object" tool and where do I find it?

gerds

16-03-2006 21:43:31

ps: The max file is about 64Mb and would have to be put under an NDA etc before I can let you see it :(

I'd be happy to let you look at the .osm file though if you like, that's about 4mb.

IFASS

16-03-2006 21:44:47

Thanks, I'll uninstall and reinstall it to make sure its installed ok.

Sorry, but whats the "centre pivot to object" tool and where do I find it?


It's under the hierarchy tab, next right to your 'Modify' button on the right menu :)

Lioric

16-03-2006 22:38:25

I will not sign any NDA's under free support service

Duplicated entity names is because you have duplicate object names in max, simple as that, if your scene is big, use a maxscript or the listener to parse all object names and find if there are duplicates and autorename them

There is an autorename feature in oFusion, but i disabled it because its a bad practice to have duplicated names in your scenes, its better if those issues are spotted earlier in your projects cycle

For the special characters in the object names, i added configurable mesh filename support to the object properties panel, so you can specify the filename of the produced mesh, while the entity name is preserved, this will be in the next update, or if you need it now, i can provide a hotfix with that feature

If you can at least provide a single object scene where the mesh is not positionated correctly, i will take a look at it

How is the objects position in the oFusion viewport?

Vectrex

19-03-2006 01:53:34

if oFusion detects duplicate names could it spit out a 'oErrors.txt' file listing any problems it's detected? Or in the max console? I personally wouldn't mind the option of oFusion inc'ing autorenaming things on export. Since our levels will have generic things like 'crowd' that would enable the level designer to just duplicate that entity a hundred times without fussing over naming each and every one unique.

Lioric

20-03-2006 17:15:22

Additional tools will be provided to clean up scenes, so you can test your scene for duplicate or incorrect names and other issues, including an autorename feature, and auto "mesh" filename

I might provide too the "auto name lock" that we use here, when you create an object in max, the name will be tested to be unique, even if you try to set it to a duplicated name, it will be autorenamed

Vectrex

20-03-2006 17:37:45

cool. Although I'd like the option mainly on export and to optionally not change the source max files names. eg for placing many 'spectator' objects around and never having them numbered, only numbering the important entites that need to be referenced directly... or perhaps that's what you just said ;)

Lioric

20-03-2006 21:12:46

But suppose that you have some issue with a single object from your "spectator" pool, and you get a message in your application or in your application's log file, referencing the "spectator_1051" entitiy

You can need many hours to locate the "1051" entitiy in you source scene where all spectator objects are named "spectator"

We want that the scene you create, can be used exactly in your application, and this can't be enforced if the exporter process makes some critical changes to the resulting scene, making it different from the original max scene

Vectrex

23-03-2006 02:39:55

yes good point. Max auto increments the id tag anyway from memory when you clone objects.
I guess it would be risky for o' to actually change the tag names so that if you save it they are permanently changed.
What about something a little 'clever'. In the log if there's a problem, also display it's coords so you can hone in on the problem even if your naming isn't unique. In fact coords in log files might be handy for other things