Easy Ogre Exporter for 3DSMAX
-
- OGRE Contributor
- Posts: 267
- Joined: Wed Apr 23, 2014 3:49 pm
- Location: Bologna, Italy
- x 75
Re: Easy Ogre Exporter for 3DSMAX
I tried disabling the edge list and the empty vertex buffer is still present.
Here and here you can find the logs.
Senior programmer at 505 Games; former senior engine programmer at Sandbox Games
Worked on: Racecraft Esport — Racecraft Coin-Op, Victory: The Age of Racing
-
- Goblin
- Posts: 272
- Joined: Fri Dec 04, 2009 6:02 pm
- x 38
Re: Easy Ogre Exporter for 3DSMAX
can you send me the max file you use ? I'll try to debug with your model directly and watch if or when the empty buffers are set
http://www.openspace3d.com
-
- OGRE Contributor
- Posts: 267
- Joined: Wed Apr 23, 2014 3:49 pm
- Location: Bologna, Italy
- x 75
Re: Easy Ogre Exporter for 3DSMAX
Senior programmer at 505 Games; former senior engine programmer at Sandbox Games
Worked on: Racecraft Esport — Racecraft Coin-Op, Victory: The Age of Racing
-
- Goblin
- Posts: 272
- Joined: Fri Dec 04, 2009 6:02 pm
- x 38
Re: Easy Ogre Exporter for 3DSMAX
I use a very old version of Ogre 2.0 in the exporter, maybe this can be an old issue in the version I use.
I'll try to build the export against a more recent Ogre 2.0 version maybe it will correct the issue. (will take some times)
Also you can try to select the Ogre 1.10 mesh version in the exporter, and check if you still have the empty buffers when you convert it to Ogre 2.0 mesh.
http://www.openspace3d.com
-
- OGRE Contributor
- Posts: 267
- Joined: Wed Apr 23, 2014 3:49 pm
- Location: Bologna, Italy
- x 75
Re: Easy Ogre Exporter for 3DSMAX
- Export the animated cylinder from 3ds Studio Max 2017 with EOE (select 1.10 or "Latest" as mesh format should be indifferent since they both generate 1.10 meshes)
- Convert the cylinder mesh in text format calling OgreMeshTool.exe Cylinder001.mesh Cylinder001.xml
Code: Select all
<vertexbuffer>
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
<vertex />
</vertexbuffer>
I'm focusing on the empty vertex buffer because @dark_sylinc told me that it could destroy the mesh during the upgrade (from 1.10 to 2.1 R2 format) process.
Unfortunately, I doubt the empty buffer would be an issue caused by an outdated version of OGRE.
Senior programmer at 505 Games; former senior engine programmer at Sandbox Games
Worked on: Racecraft Esport — Racecraft Coin-Op, Victory: The Age of Racing
-
- OGRE Contributor
- Posts: 267
- Joined: Wed Apr 23, 2014 3:49 pm
- Location: Bologna, Italy
- x 75
Re: Easy Ogre Exporter for 3DSMAX
Looking with the debugger at the vertices declaration (in the following snippet of code of method ExMesh::writeOgreBinary), I've seen there are the semantics for VES_BLEND_INDICES and VES_BLEND_WEIGHTS.
Code: Select all
Ogre::v1::VertexData* vdata = m_Mesh->getVertexDataByTrackHandle(subIdx + 1);
Ogre::v1::VertexDeclaration* newadcl = vdata->vertexDeclaration->getAutoOrganisedDeclaration(m_Mesh->hasSkeleton(), hasVertexAnim, sm->getVertexAnimationIncludesNormals());
vdata->reorganiseBuffers(newadcl);
Senior programmer at 505 Games; former senior engine programmer at Sandbox Games
Worked on: Racecraft Esport — Racecraft Coin-Op, Victory: The Age of Racing
-
- Goblin
- Posts: 272
- Joined: Fri Dec 04, 2009 6:02 pm
- x 38
Re: Easy Ogre Exporter for 3DSMAX
It seems that m_Mesh->_compileBoneAssignments(); creates an empty buffer here and anyway it was not necessary ^^
you can download the updated setup here : http://www.openspace3d.com/downloads/EasyOgreExporter
http://www.openspace3d.com
-
- Gnoblar
- Posts: 10
- Joined: Sat May 05, 2018 8:15 pm
Re: Easy Ogre Exporter for 3DSMAX
-
- Goblin
- Posts: 272
- Joined: Fri Dec 04, 2009 6:02 pm
- x 38
Re: Easy Ogre Exporter for 3DSMAX
you can already define the animations names in the mixer or in the animation time tags.
I don't have time to include the xmlconverter code into the plugin for now but sources are available

http://www.openspace3d.com
-
- Gnoblar
- Posts: 10
- Joined: Sat May 05, 2018 8:15 pm
Re: Easy Ogre Exporter for 3DSMAX
-
- Gnoblar
- Posts: 10
- Joined: Sat May 05, 2018 8:15 pm
Re: Easy Ogre Exporter for 3DSMAX
-
- Gnoblar
- Posts: 10
- Joined: Sat May 05, 2018 8:15 pm
Re: Easy Ogre Exporter for 3DSMAX
-
- Goblin
- Posts: 272
- Joined: Fri Dec 04, 2009 6:02 pm
- x 38
Re: Easy Ogre Exporter for 3DSMAX
http://www.openspace3d.com
-
- Gnoblar
- Posts: 10
- Joined: Sat May 05, 2018 8:15 pm
Re: Easy Ogre Exporter for 3DSMAX
-
- Goblin
- Posts: 272
- Joined: Fri Dec 04, 2009 6:02 pm
- x 38
Re: Easy Ogre Exporter for 3DSMAX
http://www.openspace3d.com
-
- Gnoblar
- Posts: 10
- Joined: Sat May 05, 2018 8:15 pm
Re: Easy Ogre Exporter for 3DSMAX
-
- Gnoblar
- Posts: 4
- Joined: Tue Jul 24, 2018 3:43 pm
Re: Easy Ogre Exporter for 3DSMAX
Congrats for your nice exporter!
I am trying to build the code myself in order to experiment a little bit. Unfortunately, I am struggeling with your build instructions:
Code: Select all
#Build
to build the exporter it's a little complicated because of some max sdk components :/
- create an ext directory in EOE project directory
Ogre 32 & 64b in static :
- rebuild all Ogre dependencies with _SECURE_SCL=0 in preprocessor
- rebuild ogre with _SECURE_SCL=0 in preprocessor
- copy the ogre 32 to ext/ogre3d_secure_scl/sdk/static (bin/, lib/, include/)
- copy the ogre 64 to ext/ogre3d_secure_scl/sdk_x64/static (bin/, lib/, include/)
Max SDK: (for each max sdk ^^)
- build the maxsdk\samples\modifiers\morpher lib in 32 & 64b
- copy max sdk in ext/maxversion ex: ext/2012/include, ext/2012/lib, ext/2012/libx64
- also copy the morpher sample lib and include in the corresponding directories
Then you can open the EOE vcproj and build.
To debug in max you need to build in hybrid mode and launch max from the debugger
-
- Gnoblar
- Posts: 4
- Joined: Tue Jul 24, 2018 3:43 pm
Re: Easy Ogre Exporter for 3DSMAX
- managed to do the 3ds max sdk stuff
- but not the ogre dependency building (is there some up-to-date procedure?)
some of the errors I see in VS2017:
Code: Select all
1>c:\users\tk\source\repos\easyogreexporter-master\include\exprerequisites.h(46): fatal error C1083: Cannot open include file: 'wm3.h': No such file or directory xmltest.cpp
1>c1xx : fatal error C1083: Cannot open source file: '..\..\..\dependencies\tinyxml\xmltest.cpp': No such file or directory tinyxmlparser.cpp
-
- Goblin
- Posts: 272
- Joined: Fri Dec 04, 2009 6:02 pm
- x 38
Re: Easy Ogre Exporter for 3DSMAX
in recent max SDK you'll have to get the files from the morpher sample directory and copy them in the max sdk include dir
you also have to build the morpher library and copy then in the libs directory
http://www.openspace3d.com
-
- Gnoblar
- Posts: 4
- Joined: Tue Jul 24, 2018 3:43 pm
Re: Easy Ogre Exporter for 3DSMAX
- I moved the wm3.h also and now the output of the console only contains ogre related issues
- Here are the ogre-related output issues:
Code: Select all
1>c:\users\tk\source\repos\easyogreexporter-master\include\exprerequisites.h(64): fatal error C1083: Cannot open include file: 'Ogre.h': No such file or directory xmltest.cpp
1>c1xx : fatal error C1083: Cannot open source file: '..\..\..\dependencies\tinyxml\xmltest.cpp': No such file or directory tinyxmlparser.cpp
1>c1xx : fatal error C1083: Cannot open source file: '..\..\..\dependencies\tinyxml\tinyxmlparser.cpp': No such file or directory tinyxmlerror.cpp
1>c1xx : fatal error C1083: Cannot open source file: '..\..\..\dependencies\tinyxml\tinyxmlerror.cpp': No such file or directory tinyxml.cpp
1>c1xx : fatal error C1083: Cannot open source file: '..\..\..\dependencies\tinyxml\tinyxml.cpp': No such file or directory tinystr.cpp
1>c1xx : fatal error C1083: Cannot open source file: '..\..\..\dependencies\tinyxml\tinystr.cpp': No such file or directory
1>Generating Code...
1>Done building project "EasyOgreExporter_vs12.vcxproj" -- FAILED.
Thank you!
-
- Goblin
- Posts: 272
- Joined: Fri Dec 04, 2009 6:02 pm
- x 38
Re: Easy Ogre Exporter for 3DSMAX
http://www.openspace3d.com
-
- Gnoblar
- Posts: 4
- Joined: Tue Jul 24, 2018 3:43 pm
Re: Easy Ogre Exporter for 3DSMAX
Btw, do I need ogre v1 oder ogre v2? Or is that irrelevant?
Thank you again!
-
- Goblin
- Posts: 272
- Joined: Fri Dec 04, 2009 6:02 pm
- x 38
Re: Easy Ogre Exporter for 3DSMAX
http://www.openspace3d.com
-
- Goblin
- Posts: 272
- Joined: Fri Dec 04, 2009 6:02 pm
- x 38
Re: Easy Ogre Exporter for 3DSMAX
- now support max 2019
- quaternions are now normalized in scene file
http://wiki.ogre3d.org/Easy+Ogre+Exporter
http://www.openspace3d.com
-
- Google Summer of Code Student
- Posts: 1005
- Joined: Wed Jan 08, 2003 9:15 pm
- Location: Lyon, France
- x 49
Re: Easy Ogre Exporter for 3DSMAX
After year of using an old version of Ogremax, I'd like to switch to EasyOgreExporter. However, my export toolchain requires a few things.
-Export .mesh only, I don't need .scene files.
-Do not export .material files (on demand) nor textures in some cases.
-be able to export using maxscript.
First two features are, I think, trivial to implement and to add as export options. I could do it and make a pull request.
I know the MaxsScript feature has already been asked here http://redmine.scolring.org/issues/455 . I do not know the maxsdk enough to know how to do it right now, but I could also do it if you want.