Archived

This topic is now archived and is closed to further replies.

fast modelmaking

This topic is 5332 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

Hello there, as an aspiring OpenGL programmer, I''d like to know how all you guys go about making your models for visualization etc. This is not a dumb question, I''d really like to know what most people do. For example, I''d like to know how realistic ( necessary ) it is to do things by hand, ie. graph paper coding. continued, if you export a model from something like Milkshape or Maya, are you able to edit the model suffiently yourself, or are you stuck with a ''proprietary'' version of your creation? Is it then the case that you need a custom exporter for each program, to get your vertices etc?

Share this post


Link to post
Share on other sites
For the first part, ''graph paper'' coding is certainly possible for very simple models (say under 20 polygons), but it is not very robust and is probably more effort than is worth it (considering how cheap & easy something like Milkshape 3D is).

I''m not entirely sure what you are saying in the second part, you''ll export to some file format. Whether that is some pre-existing format or your own (for which you can write exporters for Milkshape/Maya/max/whatever) is up to you.

Share this post


Link to post
Share on other sites
" ''proprietary'' version of your creation?"
I believe any files you make are your property, also they cannot stop you from loading their(or any) filetype. Look how many people write or use quake bsp loaders in their stuff and use it, or say, 3ds files.

I''m not sure about faster ways to create models, but if you have ideas I''d like to hear them!

Share this post


Link to post
Share on other sites
I don''t think the maya file format has been reverse-engineered (and I''m sure the spec isn''t public domain). You''d be better off using a more open file format, say .OBJ, .MD2 or .MD3. There are exporters available for at least one of these for (almost) every modelling program on the (game dev) planet.

Share this post


Link to post
Share on other sites
I think he means the formatting of the data.

No matter how the data is stored in a milkshape file, when you load the file into your program you get to store it any way you like in memory. For instance, you can discard everything except vertex data and just have a mesh.

The problem for beginners is usually loading the model, because it can be complex when you are first learning it. For example the .ms3d format stores things as groups of triangles, each with their own material and possibly texture, and each triangle has its own vertexes and normals. But once you load this into memory, you can extract only the parts you want/need (storing it anyway you like) and discard the rest.

Once you get good at it you will see that the ms3d format is pretty darn good for OpenGl, because it essentially sorts vertexes by which texture they use, which is exactly what you need to do vertex arrays properly...

As for how to go about making the model, I am *not* artistic, so I find the best way to do it is to start with a photograph of the thing I want to create (or something similar to it). Milkshape lets you set the background to an image, so you can put your vertex points right where they are on the image, it helps me a lot.

[edited by - aargyle on May 6, 2003 4:47:08 PM]

Share this post


Link to post
Share on other sites
aargyle, thanks for a very helpful reply. This is exactly
what I''m trying to understand. I am actually able to make
models in maya just now, but I don''t know how to export them
correctly, so that I can paste the data into my code ( sorry
guys, I know I''m still behind the curve here ). I will
look into MilkShape ( I''ll just buy it, so I can get experience
with the formats you mention ), thanks. Maybe I should do this
before messing the the Maya file format.

JuNC, you''re gonna laugh... I built an M60 Tank by hand ( every
vertice ), fully textured, normaled etc, it''s got over 200 polys.
It took me two weeks ( the tracks animate real nice ), so now I''m looking for a more efficient way It''s a great model.

Any more ideas / guides to the maya file format? Thanks guys.

Share this post


Link to post
Share on other sites
Heh if you have maya theres no need to get milkshape, maya is much more powerful I would think. All you need is to find a tutorial that shows how to load a maya file. Once loaded models are typically stored as an array of vertexes.
Also there may be a way to export different file types from maya, maybe with plugins. A good ASCII file type might be easier for you to get started with.

Share this post


Link to post
Share on other sites
having just spent a couple of hours scouring the net, I have found
these links for those interesed in maya file format :

http://http://www.gamedev.net/reference/programming/features/mayaexporter/

http://caad.arch.ethz.ch/info/maya/manual/FileFormats/FileFormats.fm.html

http://www.ewertb.com/maya/api/

and yes, Maya does export to ASCII format, so I'm going to try and
take it from there. This is my first stab at file formats
Any further tips will be welcomed! Thanks.

[edited by - squirrel_of_death on May 7, 2003 2:40:48 AM]

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
(sorry to post anonymously, just never got around to register..)

I actually once made a 3d game (a 1997 Quake mod called AirQuake) with all hand-typed models, maybe 30-40 of them total. I still have all the graph paper too, I was incidentally just looking at the stuff this weekend Indeed it''s best reserved for small models... The highest poly count I ever did that way was about 700 and took 3-4 days. Simple vehicle type models with ~200 polys took about 4-8 hours each after getting used to this way of modelling.

Obviously, I''d never do it again But I must say that working in Max I sometimes miss the exact precision of manually typed integer coordinates and the ease of copy&pasting and mirroring by just putting a minus sign in front of the X... Those were the days.

http://www.planetquake.com/ikq/airquake/vehicles.htm
http://www.planetquake.com/ikq/airquake/enemies.htm
(the A-10 and X-29 weren''t done by me)

Share this post


Link to post
Share on other sites
I once defined a class that allowed me to make models of humans out of cylinders and spheres. I just passed the class individual floats representing the radius of the cylinders at increments, and it drew a bunch of cylinders strung together to make arms and legs and stuff. I could then do calls like Body.Bend(UPPER_LEFT_LEG, 90.0f, 0.0f, 0.0f); to rotate the arms and legs.

I loaded the shapes like this:
float arm[4];
arm[0] = 1.0f;
arm[1] = 1.2f;
arm[2] = 1.3f;
arm[3] = 1.2f;

Body.Load(UPPER_LEFT_LEG, &arm);

this would form a tube that would be a thigh, for example. It worked great for making simple demos and just learning. It didn''t look like much, but is worked.

Share this post


Link to post
Share on other sites