Static models: why 3DS over milkshape?

Started by
9 comments, last by AndyTX 18 years, 1 month ago
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.
Advertisement
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.
----------------------------"I refuse to answer that question on the grounds that I don't know the answer"-- Douglas Adams (1952 - 2001)
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
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?
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.
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.

Richard "Superpig" Fine - saving pigs from untimely fates - Microsoft DirectX MVP 2006/2007/2008/2009
"Shaders are not meant to do everything. Of course you can try to use it for everything, but it's like playing football using cabbage." - MickeyMouse

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?

Speaking of which, where can I find a tutorial on loading the 3ds format?
--krizo
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).
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.

Richard "Superpig" Fine - saving pigs from untimely fates - Microsoft DirectX MVP 2006/2007/2008/2009
"Shaders are not meant to do everything. Of course you can try to use it for everything, but it's like playing football using cabbage." - MickeyMouse

This topic is closed to new replies.

Advertisement