Take the 2-minute tour ×
Game Development Stack Exchange is a question and answer site for professional and independent game developers. It's 100% free, no registration required.

What is the effort required to use a game engine such as Unreal or Unity, etc. and create an avatar customization features...complete with clothes.

The user should be able to customize the body features and the clothes need to then fit onto the customized body.

What is needed? Can you create one set of 3D models for clothes and somehow programatically have the clothes adapt to the body shape? I.e. The same shirt model will be able to fit on a skinny person vs. someone with a big beer belly.

How difficult is this? What are the steps needed to implement this avatar creation/dressing feature.

I'm basically talking about something like in Rockband 3.

share|improve this question

3 Answers 3

up vote 2 down vote accepted

In a general sense, the engines like Unreal or Unity provide you a way to get your assets on the screen. They may have tools for mashing up a bunch of assets, but you still need a program like Maya, 3D Studio Max, or Blender to build the assets you're going to be mashing up.

Specifically, to answer your question on effort: the effort required is probably significant, but not insurmountable. It depends on your skills and dedication. If your a programmer, building the 3D models for each of the items you want will probably be the area you spend the most effort; on the other hand, if your already adept with a 3D modeling package, and aren't much of a programmer, you'll find yourself struggling with any engine.

The steps required, in my view are: (assuming you're starting from absolute zero)

  • Get one full-body 3D model
  • Get one full set of 3D clothing models
  • Download / Install the Unity or Unreal SDK
  • Get a working creation model
    • Using the scripting built-in to the engine to develop an interactive system
  • Obtain all other full-body 3D models and associated clothing items

Note the unordered list, most of these can happen asynchronously, though if its just you working on it, it would probably make sense the serialize the process.

This is a relatively large task, that will probably require significant effort, and is probably (at least in my opinion) not a good place to start building games, I'd recommend biting off a smaller project if this is your first.

share|improve this answer

Unity has an example project with this already implemented for you:

http://unity3d.com/support/resources/example-projects/charactercustomization

On that page it says "feel free to use the code and artwork for your own Unity productions", which would likely reduce the workload significantly (since it's already done for you!)

share|improve this answer
    
Thanks Josh! This is a great resource...and a great starting point if we use Unity. –  milesmeow Mar 4 '11 at 19:00

I would do this by scaling and moving specific armature bones (in case your program has mesh skinning implemented). For example, if you want longer legs, scale the leg "bones" (which are also used in your animation) by the up axis. If you want to increase the weight, scale some bones by the horizontal axes, for example.

However if you scale non-uniformly then you can not decompose your matrices correctly, so you should keep scaling - rotation - translation of your bones accessible.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.