Sign in to follow this  

Static models: why 3DS over milkshape?

This topic is 4307 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I have a question regarding model loading: Suppose I have an outdoor (height)map, and I want to add some buildings, fences, etc. to it. These are all static models. What advantages would there be of some 3D format (say 3DS) over loading the really simple Milkshape 3D format? I can do this in 30 minutes, while writing a 3DS loader is going to take me days (and I find it's hardly possible to write one that can actually load ALL 3ds models you find on the web). My choice at this moment is to go with ms3d, but I suspect there are reasons to choose otherwise. Any comments would be appreciated :) Thanks a lot.

Share this post


Link to post
Share on other sites
you could go with writing your own format and only include the stuff that you need in it.
milkshape has a realy simple SDK one their site.
doesnt take to long to write an exporter.

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
hey,

take the format you are happy with,
if you want to take milkshape no one hold's you back.

but I think more people use .3ds because it's supported by (nearly) all programs,
and milkshape not so often...

e.g: 3dsmax exports .3ds without searching a plugin


Marc

Share this post


Link to post
Share on other sites
but I can use milkshape to convert from and to 3DS, so that's no argument

Come on people, there has to be SOMETHING 3DS is better at, else it wouldn't be that popular, right?

Share this post


Link to post
Share on other sites
it has a gazillion more tools and plugins than milkshake, and does loads of things than just creating low-polygon models. It also has a very flexable tool and content chain that you can use to help manage your assets, it can integrate in the majority of dedicated content manegement systems out there, you can create CGI scenes, etc etc.

Share this post


Link to post
Share on other sites
Quote:
Original post by Subotron
but I can use milkshape to convert from and to 3DS, so that's no argument
If you have 3DS, why should you have to install (and pay for) a second tool purely to convert file formats around?

And to be brutally honest, if writing a 3DS loader would take you days, you can't be very good at writing file loaders. It's a pretty simple format; besides which, there's lots of tech out there that will do the work for you (e.g. lib3ds).

Quote:
Come on people, there has to be SOMETHING 3DS is better at, else it wouldn't be that popular, right?
Models with large numbers of polys and non-trivial material setups. I wouldn't even try using Milkshape for doing something like building a level for a commercial game because it just doesn't scale. Milkshape is/was good for HL1-era small models, like characters, but it really doesn't handle going beyond that.

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
Quote:
Original post by Subotron
but I can use milkshape to convert from and to 3DS, so that's no argument

Come on people, there has to be SOMETHING 3DS is better at, else it wouldn't be that popular, right?


don't use .3ds. you will be sorry. sure, it's more robust but you're not going to use 95% of it so why the heck are you even thinking of wasting your time with it?

Share this post


Link to post
Share on other sites
Quote:
Original post by superpig
And to be brutally honest, if writing a 3DS loader would take you days, you can't be very good at writing file loaders. It's a pretty simple format;

... except that it doesn't include normals, and generating vertex normals from smoothing groups in nontrivial to do in a robust manner. Maybe I'm just stupid, but it took me a few days of hacking around just to get the smoothing groups -> normals stuff working nicely...

Anyways I send the comments about not using 3DS... it's old and quite frankly, poorly designed for modern uses. There are plenty of better formats out there (.X to name one), and there's no reason not to use the one that you want. If you're looking for a format to import into your application, you can even make your own. File format conversion is the job of a good tool (like PolyTrans) - as long as you have ONE good loader for your application, there's very little reason to write any more.

Just a note... I assume that we're talking about the 3DS file format here (which is quite bad, and ancient), not about 3dsmax (which is awesome), or the MAX file format (which is fine, but WAY overkill for direct import).

Share this post


Link to post
Share on other sites
I didn't think the MAX format was even usable by third-party loaders as it was basically a MAXScript sequence that recreates the entire scene from scratch using MAX commands.

And I would have thought smoothing groups were fairly easy. Duplicate each vertex once for each smoothing group that uses it, then treat each smoothing group as a seperate mesh and calculate normals in the usual manner through summing/normalizing.

Share this post


Link to post
Share on other sites
Quote:
Original post by superpig
And I would have thought smoothing groups were fairly easy. Duplicate each vertex once for each smoothing group that uses it, then treat each smoothing group as a seperate mesh and calculate normals in the usual manner through summing/normalizing.

Not quite, as FACES are assigned smoothing groups, and the idea is that two adjacent faces with ANY overlapping smoothing groups should appear "smooth". This necessitates some fancier logic than simply treating each smoothing group as a unique mesh. For example, if every face is in smoothing group 1, the mesh should receive averaged normals all around (and indeed some vertices may need to be merged, depending on the quality of the exporter), regardless of what other smoothing groups are present. It becomes a bit of trick to handle a lot of the special cases to do with vertices that are adjacent to faces that include complex sets of overlapping and disjoint smoothing groups. It's certainly not impossible, but neither is it trivial... getting the details correct takes a few days in my experience.

Share this post


Link to post
Share on other sites

This topic is 4307 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this