model format with weighted bones

Started by
7 comments, last by johnb003 19 years, 2 months ago
i am trying to make a game that uses my proprietary model and map formats. the problem is with the models . i dont have the time nor the ability to make a good modeling tool. so i have to make a converter for an existing format , so that i can use a ready made program (milkshape 3d for example) to make the model then i would convert it to my format. my format uses skeletal animation with weighted bones. any sugestions about a good model format that uses skeletal animation and its specs are known ? also i've tried to make a plugin for milkshape 3d to support my model format , but i failed. is there any tutorial for writing milkshape plugins? or is there any other modeling program that is easier to write plugins for ?
Advertisement
Quote:Original post by the_keeper
also i've tried to make a plugin for milkshape 3d to support my model format , but i failed.
is there any tutorial for writing milkshape plugins?
or is there any other modeling program that is easier to write plugins for ?


The ms sdk contains 4 plugin samples: 2 importers and 2 exporters (raw, ascii). The ascii exporter is 11 Kb of easily readable source code (see msPlugInImpl.cpp). It exports everything (from vertices to bones). It uses the msLib which is fairly easy to understand. Therefore I have to ask the question: what is your exact problem with your plugin? Maybe I can help.

Anyway, you'll probably find informations about using the SDK on the milkshape forum.

About the last question: I heard that blender exporters was rather easy to write too - if you know python :)

Regards,
You could try using 3DSMAX and the DirectX .X format.
function(prototype);
Quote:Original post by the_keeper
i am trying to make a game that uses my proprietary model and map formats.
the problem is with the models .
i dont have the time nor the ability to make a good modeling tool.
so i have to make a converter for an existing format , so that i can use a ready made program (milkshape 3d for example) to make the model then i would convert it to my format.
my format uses skeletal animation with weighted bones.
any sugestions about a good model format that uses skeletal animation and its specs are known ?

also i've tried to make a plugin for milkshape 3d to support my model format , but i failed.
is there any tutorial for writing milkshape plugins?
or is there any other modeling program that is easier to write plugins for ?


Well, obviously you need to at least start with a format that stores bone weights so the previous suggestion wouldn't be very useful.

Recently I released Animadead 2.0 a skeletal animation library, which has an exporter for maya atm, and I'm working on others. You can actually just use the library and not worry about models, and have a lot of control for animations. OR if you wan't you can make a really simple program that uses the library to load a model, then just write data you need to your file format. This would be REALLY simple, here's an example:

#include "animadead.h"class Converter : public ad::Model{public:	Converter(ad::Model::Type type) : Model(type) {}	void ExportOBJ(const char *filename);};#include <string>#include <iostream>using namespace std;void Converter::ExportOBJ(const char *filename){// write exporter code here}int main(int argc, char *argv[]){	Converter *model = new Converter(ad::Model::STATIC);	model->AddMesh("in.adm");	model->ExportOBJ("out.obj");	delete model;	return 0;}
You could use Unreal's ActorX plugin for 3DS MAX. It exports Vertices, Faces, Bones, Weights, Smoothing Groups and perfect Skeleta Animation, it just does not export Normals. The source is also public for PSK and PSA formats.
thank you all , ithink i'll go for the animadead converter (i'm downloading the animadead 2.0 right now) , thanks johnb003.

and for Emmanuel Deloget , i have read the source code of both exporters and importers that came with ms3d , and i made a plugin , but the result was wrong.
i tried to debug it , but debuging is not allowed (it gave me an error message telling me that debuging is forbidden , but i cant remember the syntex).
i traced the code , but couldn't find any problem.
a friend of me had the exact same problem too.

anyway , a modeler i know suggested that i should use (convert) the xsi format because he uses it and he thinks its good . can anyone point me to where can i find its specs ? (its not on wotsit).

thanks.
I'm just guessing but knowing that XSI is a modeler, I'm thinking the XSI format is a complicated format for XSI|Softimage specifically. It's not such a great idea to convert the proprietary formats from any modeler program imho. It makes more sense to make an exporter for the modeler, but then you end up having to make an exporter for each different modeler: Maya, 3DS MAX, XSI, Lightwave, Blender, Milkshape etc. The Animadead solution is nice because you can just let me write all of those for the library and all you need to make sure you do is make a converter for Animadead. Which is also made simple since the reading of the file is done for you.

If you have the need for an exporter for a specific modeler, let me know and I'll increase it's priority for development in Animadead. So far, the Maya exporter is the most supported. I expect with the current pace of Animadead, it won't take more than a week to have a fully operational exporter for any other modeler.

`John
johnb003 :
that's so kind of you.
currently , the modeler i am working with is using both 3dmax and xsi.
xsi have already made an exporter and importer for both xsi and 3dmax to support each other , so it doesnt matter which one we use.
i'll go for the Animadead solution then.

thanks again.
No problem. I think the most number of people will benefit from a 3ds max exporter, and it sounds like this will work for you as well.

Keep an eye on the Animadead News for information on new releases. I'll start posting daily news on the site soon.

This topic is closed to new replies.

Advertisement