Go Premium for a chance to win a PS4. Enter to Win


How to dynamically change properties of a 3D human model?

Posted on 2002-04-13
Medium Priority
Last Modified: 2010-04-07
In a virtual fitting room program, I'd need to create the 3D human model and provide the ability to dynamically regenerate the 3D human model based on the user's input of the body measurements for eg.
How can I import a 3D human model created using 3D softwares, into my MFC program through OpenGL in C++ code? Then, how can i dynamically change the properties of the 3D human model created using 3D software?
Question by:sweetgirl
  • 6
  • 2

Expert Comment

ID: 6941194
Not an easy question to answer.

First, yYou will need a specialized 3D model made for this particular purpose. It can be constructed with any of several kinds of programs, many of which can be obtained for free. Then you will need to exportt the model into a standard file format, such as DXF (which has freely available published file format standards for C + +), or 3DS (which is harder to figure out). Unless you spend a lot of time on your model, the DXF format will probably be more "blocky" than you want for this particular need.

Then, things depend on the nature of your MFC program.

Alternatively, many freely available programs, such as Truespace 2, would allow you to easily and dynamically change the various size parameters of your model.

A good place to start would be to purchase an inexpensive copy of Truespace 3 or better yet, 4.4, build a model in it, or get someone to export a standard Poser model into 3DS format for you, and import that into Truespace.  You now could use Python scripts to dynamically change the various parameters of your model. The advantage of Python is that its a public domain language, is easy to learn and use, Truespace is the simplest 3D program I know that is already setup to use it, and ... you can build a custom front end for it so that Truespace never need appear as such to your users. I mentioned Truespace because it is 100% OpenGL, in addition to being fiarly inexpensive.

If you want to start from scratch, I still would recommend a basic 3DS model of a human exported from Poser, and the Python scripting language. There are lots of public domain tools for it. You can easily build a C ++ shell for it, use Python to handle the model, and make the whole thing operate - especially to any video card using OpenGL standards.


Author Comment

ID: 6946888
Thanks a lot for the pointer. I will get the Demo for TrueSpace 5 (coz my PC is running on Win2K) and give it a try. A little query...I understand that TrueSpace provides the functionality to create 3D human models for eg., but how could I dynamically change the models, which means how can I generate the model based on the users' inputs (eg. body measurements) during run-time. It is rather not logic for me to create all possible combinations of 3D human models in advance using TrueSpace and then load the images that matches the user's input. So, how to I dynamically create the models based on users' input?

Accepted Solution

forester earned 0 total points
ID: 6946918
Well, I don't think you want to generate the entire model at run time.  A more computer-resource conservative approach is to have a basic model that has parameters for height, wideness of chest, waist, arms, biceps, etc. The Python script would read your new measurements at runtime and make changes in the parameters of the basic model.

It would be smart to have a male model and a female model.

If you took a good look at Poser by Creative Labs, you can get a good sense of which parameters are relevant. Their models have been through 4 generations/versions now, so the parameters they use have proven themselves to be the most useful ones.  You can get a copy of Poser version 3 for free, although its a large download.  Try a Google search for a source of a copy.  I know that the ComputerArts magazine site in the United Kingdom is posting a copy.  I think this is their URL, but I may not have this quite right.

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.


Author Comment

ID: 6947079
10x a lot for ur comments, forester! By the way, I'm running out of time...can u please provide some pointers on the Python scripting that can perform the functionality I need and that can be embedded into my MFC program. I really appreciate ur help!

Author Comment

ID: 6952933
Have u come across any websites/tutorials/programs that perform such functionality? I really need those resources to get my task done. 10x a lot!

Author Comment

ID: 6952935
Python scripting sounds rather 'new' to me. What is it usually used for?...what kinda programs usually written using Python scripting? Is it a widely used programming language?

Author Comment

ID: 6953180
I've looked out about Python at http://www.python.org/doc/Newbies.html, had a little idea about it. But, could not find materials that could help me out with my tasks. u have any idea?

Author Comment

ID: 6970436
Instead of Python scripting, can I use OpenGL to dynamically change properties of a 3D human model?

Featured Post

Ask an Anonymous Question!

Don't feel intimidated by what you don't know. Ask your question anonymously. It's easy! Learn more and upgrade.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Many programs have tried to outwit PowerPoint in terms of technology and skill. These programs, however, still lack several characteristics that PowerPoint has possessed from the start. Here's why PowerPoint replacements won't entirely work for desi…
Technology opened people to different means of presenting information, but PowerPoint remains to be above competition. Know why PPT still works today.
In this Micro Tutorial viewers will learn how to remove an unwanted object using Photoshop’s feature known as content-aware fill.
Learn how to use the remote presentation tool in Prezi to allow you to harness the power of this cloud based presentation platform. You can show your presentation with a remote audience using this free tool.
Suggested Courses

927 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question