Official MeshMagick thread - now licensed under MIT

A place for users of OGRE to discuss ideas and experiences of utilitising OGRE in their games / demos / applications.
Post Reply
User avatar
oliver
Gnoblar
Posts: 6
Joined: Fri Feb 02, 2007 6:10 am
Location: Newcastle, Australia
Contact:

Post by oliver »

starbug wrote:Great work!

Here is my binary for OSX if someone is interested:

http://www.sharebigfile.com/file/174934 ... x-zip.html
Thanks for that, too. This tool is really helpful.
The syntax with the help text is a bit misleading, though, but works great.

cheers
Oliver
ryandeboer
Halfling
Posts: 84
Joined: Thu Oct 05, 2006 6:19 am
Location: Perth, Australia

Post by ryandeboer »

I used to rely on 3dsmax for small scaling/translation tweaks to source meshes, but when I didn't have access to it I was forced to use blender. Blender was quite hard to use and I ended up being forced to hard code minor mesh specific tweaks in my application. I was going to write a tool like yours so I can remove them, but now hopefully I don't need to.
User avatar
hmoraldo
OGRE Expert User
OGRE Expert User
Posts: 517
Joined: Tue Mar 07, 2006 11:22 pm
Location: Buenos Aires, Argentina
x 1
Contact:

Post by hmoraldo »

Great tool, thank you!!

An option to combine different meshes in an only mesh (interpreting different meshes as different poses of a same mesh) would be useful too, for exporting mesh poses when using exporters that can't deal properly with pose & pose animations.
H. Hernan Moraldo
Personal website
User avatar
Jabberwocky
OGRE Moderator
OGRE Moderator
Posts: 2819
Joined: Mon Mar 05, 2007 11:17 pm
Location: Canada
x 218
Contact:

Post by Jabberwocky »

I've found this tool to be really handy, too.
Thanks for sharing.
tarenar
Kobold
Posts: 34
Joined: Thu Jun 21, 2007 8:13 pm

Post by tarenar »

I'm really excited to use this tool but can't run it for some reason. I get the error "The system cannot execute the specified program" when I run it from dos at c:\meshmagick with "MeshMagick transform -rotate=90/0/1/0 robot.mesh."
And when I double click MeshMagick.exe, I get the error "This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem."
Am I missing something obvious like putting the exe somewhere in the Ogre directories?
User avatar
eugen
OGRE Expert User
OGRE Expert User
Posts: 1422
Joined: Sat May 22, 2004 5:28 am
Location: Bucharest
x 8
Contact:

Post by eugen »

very usefull, thanks!
Skorpio
Kobold
Posts: 37
Joined: Sun Sep 24, 2006 9:32 am

MeshMagick incorrect configuration

Post by Skorpio »

Hello,

I have not been able to run the program.
I get the following message.


This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem


I tried putting it with all the DLL, models, etc.
I get the same message. I'm not sure what it is looking for.

Help would be appreciated.

thanks,
[/b]
User avatar
haffax
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 4823
Joined: Fri Jun 18, 2004 1:40 pm
Location: Berlin, Germany
x 7
Contact:

Post by haffax »

Hi Skorpio, this error is most likely because you don't have the microsoft C++ runtime libraries installed in the needed version.
You can download the package here: http://www.microsoft.com/downloads/deta ... laylang=en
Install this and afterwards meshmagick should work.
team-pantheon programmer
creators of Rastullahs Lockenpracht
tarenar
Kobold
Posts: 34
Joined: Thu Jun 21, 2007 8:13 pm

Post by tarenar »

Thanks for the help haffax. I have successfully rotated the ninja.mesh with magickmesh however an exception is thrown when running Ogre with the rotated ninja.mesh.

Error #: 9
Function: MeshSerializer::importMesh
Description: Cannot find serializer implementation for current version [Mesh Serializer_v1.40].
File: ..\src\OgreMeshSerializer.cpp
Line: 106
Stack unwinding: <<beginning of stack>>

What do I do to fix this?
User avatar
haffax
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 4823
Joined: Fri Jun 18, 2004 1:40 pm
Location: Berlin, Germany
x 7
Contact:

Post by haffax »

tarenar, your Ogre is an earlier version than the one used to compile MeshMagick. When a mesh is modified by default MeshMagick updates the mesh-version to the latest version, with currently is v1.40, which can't be read by your Ogre.

MeshMagick has a global option called -keep-file-version which does not update older mesh files to the new file version. Using this option your file can still be read by the ogre version you use.
team-pantheon programmer
creators of Rastullahs Lockenpracht
tarenar
Kobold
Posts: 34
Joined: Thu Jun 21, 2007 8:13 pm

Post by tarenar »

Thanks for the quick response haffax. So i entered: MeshMagick -keep-file-version transform -rotate=90/0/0/1 ninja.mesh
And according to the output, all of the transformations worked fine. However when I ran the mesh in ogre, I get the following exception:

Error #: 9
Function: MeshSerializerImpl::readEdgeList
Description: Missing M_EDGE_GROUP stream.
File: ..\src\OgreMeshSerializerImpl.cpp
Line: 1724
Stack unwinding: <<beginning of stack>>

It seems the ninja refuses to rotate without a fight :P. Thanks for any suggestions.
User avatar
haffax
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 4823
Joined: Fri Jun 18, 2004 1:40 pm
Location: Berlin, Germany
x 7
Contact:

Post by haffax »

Hmm, this can be because of a change from mesh version v1.30 to v1.40 that might make using an old serializer for the new format fail in some cases, here with edge lists. I will have to look into it. What Ogre version do you use?
team-pantheon programmer
creators of Rastullahs Lockenpracht
tarenar
Kobold
Posts: 34
Joined: Thu Jun 21, 2007 8:13 pm

Post by tarenar »

I'm using v1.23. Hah, didn't realize how old of a version it was until now...
User avatar
haffax
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 4823
Joined: Fri Jun 18, 2004 1:40 pm
Location: Berlin, Germany
x 7
Contact:

Post by haffax »

In that case, updating your Ogre version is probably a good idea anyway. :)
team-pantheon programmer
creators of Rastullahs Lockenpracht
Croco
Gnoblar
Posts: 19
Joined: Tue May 01, 2007 1:21 pm

Post by Croco »

great work thanks :D
btmorex
Gremlin
Posts: 156
Joined: Thu May 17, 2007 10:56 pm

Post by btmorex »

First, thanks for making this. I'm finding it very useful.

Here's a patch to allow bootstrap with automake > 1.9:

Code: Select all

Index: bootstrap
===================================================================
RCS file: /cvsroot/ogre/ogreaddons/meshmagick/bootstrap,v
retrieving revision 1.1
diff -u -r1.1 bootstrap
--- bootstrap   15 May 2007 21:09:53 -0000  1.1
+++ bootstrap   12 Jul 2007 05:34:01 -0000
@@ -17,7 +17,7 @@
    exit 1;
 fi

-if test -z "`automake --version 2>&1|head -n 1|egrep '1.[6-9]'`"; then
+if test -z "`automake --version 2>&1|head -n 1|egrep '1.([6-9]|[1-9][0-9])'`"; then
        echo "Automake 1.6 or above is required. Aborting build...";
        exit 1;
 fi
Second, it would be great if you could add a build target that would statically link with ogre. The reason this would be useful is that I'm often switching between what ogre version is in my default library path. It would be nice if I could just statically link it and not have to recompile it very often.
User avatar
haffax
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 4823
Joined: Fri Jun 18, 2004 1:40 pm
Location: Berlin, Germany
x 7
Contact:

Post by haffax »

btmorex, thank you for the patch, I will apply it. As for the static linking in Linux, this is something Blakharaz has to decide and implement, because I don't have a clue about Linux but he does.
team-pantheon programmer
creators of Rastullahs Lockenpracht
User avatar
oddrose
Orc
Posts: 470
Joined: Thu Feb 15, 2007 2:08 pm
Location: Gothenburg, Sweden
Contact:

Post by oddrose »

hi there....

I ran into some problems with the meshmagick today...

for static meshes it works great...and for some skeletal animations as well...

But when i tried to scale my character the jumping animation went crazy. On the same mesh an animation where he just turns his hip forward and backwards everyting goes fine. But in the jumping animation (where the root bone is moved up and down) the whole mesh moves up and down (in unscaled motion).

To clear things out: in the original file the mesh never leaves the ground. In the scaled, the mesh goes straight to the floor and up again. It is as when he crouches to gain speed the root bone takes the whole mesh with it and as aI said..that motion is unscaled.

The same scaling works perfectly inside of Ogre with setScale().

Has this happened before?
User avatar
haffax
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 4823
Joined: Fri Jun 18, 2004 1:40 pm
Location: Berlin, Germany
x 7
Contact:

Post by haffax »

Hi oddrose, did you try the binary version or the version in CVS?
I have fixed a few bugs regarding scaled animation which makes it work with our project's meshes among others I resolved this very issue. But there is (at least) one outstanding bug.

So if you tried binary please use the version in CVS and see if it works for you, else you have to wait a little while. I'm currently busy with another project and gsoc and can't do much in MeshMagick right now.
team-pantheon programmer
creators of Rastullahs Lockenpracht
User avatar
smernesto
Halfling
Posts: 78
Joined: Wed Jan 03, 2007 12:49 am
Location: Bogota, Colombia

Post by smernesto »

I created a very basic page in the wiki.

http://www.ogre3d.org/wiki/index.php/MeshMagick
User avatar
haffax
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 4823
Joined: Fri Jun 18, 2004 1:40 pm
Location: Berlin, Germany
x 7
Contact:

Post by haffax »

Oh, thank you smernesto. :) I take this as a cue, that I should really do a page with detailed instructions. ;)
Though I have many projects running in parallel now, don't expect it to be done by tomorrow...
team-pantheon programmer
creators of Rastullahs Lockenpracht
User avatar
Praetor
OGRE Retired Team Member
OGRE Retired Team Member
Posts: 3335
Joined: Tue Jun 21, 2005 8:26 pm
Location: Rochester, New York, US
x 3
Contact:

Post by Praetor »

This is great haffax. I think this tool is the kind of thing that you don't realize you can use until it is available. Now I can see it incorporated into so many pipelines.
Game Development, Engine Development, Porting
http://www.darkwindmedia.com
User avatar
smernesto
Halfling
Posts: 78
Joined: Wed Jan 03, 2007 12:49 am
Location: Bogota, Colombia

Post by smernesto »

I really needed this tool! is very useful.
User avatar
sinbad
OGRE Retired Team Member
OGRE Retired Team Member
Posts: 19269
Joined: Sun Oct 06, 2002 11:19 pm
Location: Guernsey, Channel Islands
x 66
Contact:

Post by sinbad »

Very handy. I just added a few extra reporting features to it, because I needed them:

- Reporting default material name on SubMesh
- Reporting number of bone assignments per vertex
- Reporting total bones (out of the possible entire skeleton) referenced by a single set of vertex data
User avatar
haffax
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 4823
Joined: Fri Jun 18, 2004 1:40 pm
Location: Berlin, Germany
x 7
Contact:

Post by haffax »

Nice additions, thank you Sinbad. :)

I'm glad you all find the tool useful.
As I mentioned earlier I'm open for input about what additions you find useful, as long as you can name a practical application for this.

I locally started work on a new tool called 'reorganise'. This is meant for unifying the structure of our project's mesh files. Options to change tangent semantics (tangents<->texcoords), add/strip LOD, edge list, shared vertex section and reorganising the vertex buffers with a simple syntax. But it is nowhere near ready for a commit and progress is slow, because of work load in other projects..

Btw, in the mean time Blakharaz added a new tool 'rename' that allows renaming materials, bones, animations, etc. It's working and already in the CVS.
team-pantheon programmer
creators of Rastullahs Lockenpracht
Post Reply