The Unofficial SoftImage XSI->OGRE Exporter v2.1X10^-3
-
- Gremlin
- Posts: 167
- Joined: Sun Sep 26, 2004 11:50 pm
- Location: Arkansas
The Unofficial SoftImage XSI->OGRE Exporter v2.1X10^-3
Well I have only had partial sucess knocking out the memory leaks. The amount of memory it leaks is about 20% of what it use to. I think I got all the obvious stuff, but I'm scratching my head on the rest.
I also changed the code around so it's more C++ish. Still some work to do on this front too.
I didn't add any features. And I hope it still works. Tell me if it doesn't.
Anyway, here it is if you want it http://www.cast.uark.edu/~wgj/OGRE_XSI_Exporter/
All my instructions were in the messages that got erased. I was going to gather them together and make a readme, but I didn't get around to it.
Basically there is an addon that works with XSI 4.2. You can load the addon via File->Add-On->Install. Then to export something you node or branch select the object. Then use File->Export->OGRE Mesh Export. It only works with Polymeshes and 4 OpenGL RT shaders.
I also changed the code around so it's more C++ish. Still some work to do on this front too.
I didn't add any features. And I hope it still works. Tell me if it doesn't.
Anyway, here it is if you want it http://www.cast.uark.edu/~wgj/OGRE_XSI_Exporter/
All my instructions were in the messages that got erased. I was going to gather them together and make a readme, but I didn't get around to it.
Basically there is an addon that works with XSI 4.2. You can load the addon via File->Add-On->Install. Then to export something you node or branch select the object. Then use File->Export->OGRE Mesh Export. It only works with Polymeshes and 4 OpenGL RT shaders.
-
- Gremlin
- Posts: 167
- Joined: Sun Sep 26, 2004 11:50 pm
- Location: Arkansas
-
- Gremlin
- Posts: 167
- Joined: Sun Sep 26, 2004 11:50 pm
- Location: Arkansas
Yokom wrote:im missing two files to compile the exporter do i need to get them from the xsi install, if so i dont have them and my artits that has xsi doesnt think they are in his xsi install.
xsi_3dobject.h
xsi_value.h
where do we get these files
All the xsi_whatever.h files are in the XSI SDK. To install the SDK from the install disks you have to select custom install and choose the SDK as it doesn't install by default. btw I use 4.2.
-
- Gremlin
- Posts: 167
- Joined: Sun Sep 26, 2004 11:50 pm
- Location: Arkansas
I looked into the issue with the bones a bit. There is some wierdness there. The main problem is if you create and object, then attach a bone, and then move the object and not the bone. It won't move in XSI because the bone controls the location of the object once it's attached and key framed. However, when I export using global coordinates the animation will be messed up. It seems the object is drawn at it's location that you see it in XSI, but then the rotations are done as if the object was in location that you set the objects location to. It's going to take some real thinking to get that one figured out. .... actually I just had an idea... I'll get back to you.Slicky wrote:Thanks for the feature I'll have to check it out. I don't use bones so it may work for me as is..
I think it would be possible to have a button in XSI that would popup an OGRE window with the objects rendered in it. I still don't know anything about OGRE. Maybe that would be a good project to learn OGRE.Slicky wrote: I wonder how hard it would be to do a renderer for OGRE within xsi.
The other thing I think that would be worth doing is to create OGRE shaders. That would eliminate the guess work in trying to figure out how things should be mapped from XSI's OpenGL shaders to OGRE materials.
- sinbad
- OGRE Retired Team Member
- Posts: 19269
- Joined: Sun Oct 06, 2002 11:19 pm
- Location: Guernsey, Channel Islands
- x 66
- Contact:
Thanks for keeping this up Bill - even though I'm now (finally!) continuing with my own direct-to-binary-mesh exporter, having code like yours around to compare against is very handy when navigating the twists that are the XSI SDK.
I just decided to refactor a bunch of my code because I want to give people the option of having the exporter combine the contents of separate PolygonMesh and PolygonCluster objects which have the same material, since I've observed that many people keep lots of separate PolygonMesh objects around for modelling convenience that would be better combined for runtime use. Mine still isn't as complete as yours (and I may like to adapt your material code once I'm done with meshes and skeletons since there won't be much difference there I suspect) but it's getting there.
I just decided to refactor a bunch of my code because I want to give people the option of having the exporter combine the contents of separate PolygonMesh and PolygonCluster objects which have the same material, since I've observed that many people keep lots of separate PolygonMesh objects around for modelling convenience that would be better combined for runtime use. Mine still isn't as complete as yours (and I may like to adapt your material code once I'm done with meshes and skeletons since there won't be much difference there I suspect) but it's getting there.
-
- Gremlin
- Posts: 167
- Joined: Sun Sep 26, 2004 11:50 pm
- Location: Arkansas
bump. You know the only reason I work on this is to push my thread to the top of the stack.
Seriously, I added support for the OGLTCTrans shader. This shader gives you access to the following texture parameters:
scroll
scroll_anim
rotate
rotate_anim
scale
wave_xform
No serioulsy, I only do this stuff so that I can bump my thread.
*BUMP*
Seriously, I added support for the OGLTCTrans shader. This shader gives you access to the following texture parameters:
scroll
scroll_anim
rotate
rotate_anim
scale
wave_xform
No serioulsy, I only do this stuff so that I can bump my thread.
*BUMP*
-
- Greenskin
- Posts: 145
- Joined: Wed Jan 19, 2005 4:36 am
- Location: Arica, Chile
- sinbad
- OGRE Retired Team Member
- Posts: 19269
- Joined: Sun Oct 06, 2002 11:19 pm
- Location: Guernsey, Channel Islands
- x 66
- Contact:
- monster
- OGRE Community Helper
- Posts: 1098
- Joined: Mon Sep 22, 2003 2:40 am
- Location: Melbourne, Australia
- Contact:
'tis true. The importer's only there for "experimental" purposes. It's not current in the latest version, and I may well not put it back in.sinbad wrote:...seems to me that you're better to exchange the models in their original format rather than Ogre's .mesh format.
Mine does the same. If you import (say) a 3ds, export it to mesh and then import that mesh, you won't get the exact 3ds back, just a "representation" of it. I think the readme makes that clear, doesn't it?My XSI-to-mesh exporter reorganises the .mesh for runtime efficiency too so converting back from .mesh wouldn't give you the original anyway.