Home Technical Talk

Interchangeable Equipment

I should start by saying that I've only just gotten into working with 3ds max and wanna break into game modeling. A friend of mine is making a game that involves interchangeable equipment, hair, weapons. At the beginning i set about building a base body mesh and then modeling all the equipment that the character would carry/ wear but then I realized that there would be a LOT of poly's under other poly's that wouldn't be visible. What is the industry accepted 'right' way to do this? Does anyone know what they do in MMORPG's?
index.php?action=dlattach;topic=7710.0;attach=3789;image

Replies

  • Warheart
    Offline / Send Message
    Warheart polycounter lvl 17
    There are relatively few things that there is a 'right' way to do. The right way to handle it depends entirely on your system and what you want to get out of it.

    It's certainly not unheard of to just layer stuff on top if you've got the resources to handle it in the game (but you will have to watch out for intersection while the character is deforming and skin/model the pieces appropriately). If not then you'll have to come up with a system for breaking the characters down into sections that you can swap out.
  • haikai
    Offline / Send Message
    haikai polycounter lvl 8
    An even bigger deal than switching the meshes is switching the textures because you certainly don't want to be carrying around textures that aren't visible, and you also want to keep the draw call counts down. A common way to handle this situation is texture BLITing:
    http://en.wikipedia.org/wiki/Bit_blit

    I'm sure it's not the only way, but I believe a lot of MMO games still use some variation of this. Come up with a template where you know certain items will always be contained to (gloves area, pants area, etc.). Build your meshes and name them in a way that the programmer can easily replace, and make sure their UVs remain in the same bit blocks as other like items.

    The idea is to get away with as few textures per character as possible. The game updates the texture and meshes on the fly which is why switching gear often takes a second or so to load.

    Of course all this can make the art process pretty convoluted. In the end it depends on how complex you can afford to get so you'll need to collaborate closely with your programmer so you can both understand each other's needs.
  • Kizmet
    Thanks to everyone for your responses! It kinda looks like a got involved in this project to get my feet wet and dove right into the deep end... It also dawns on me that I'll have to re-skin each new component to the skeleton: especially when they move/deform differently (ie plate mail v leather tunic). -sigh-
  • Warheart
    Offline / Send Message
    Warheart polycounter lvl 17
    Yep you will have to skin everything but once you have the base skinned you can use skinwrap in max or "copy skin weights" in maya to transfer weights onto all your assets after that and then just tweak from there.
  • Bigjohn
    Offline / Send Message
    Bigjohn polycounter lvl 11
    I don't think the skinning part would be that big a deal. You'd just have to skin it once to the skeleton in the home pose. It's not like you need to go in for each animation and skin it for that. As long as you skinned it to the same skeleton, the animations would apply.

    The biggest problem that I can see for that is just memory requirements. If you're making all individual pieces, each with their own unique UVs and textures, that's a lot of stuff to fit in memory. Especially considering graphics cards only have like 512megs or so.

    I don't know much about the technical side of it, but I would imagine that everything that's on the screen has to fit within that 512 megs. Someone correct me if I'm wrong please :)
  • Kizmet
    The really technical stuff is still pretty far above my head. I'm so glad you guys are pointing out programmatic and memory points b/c they're definitely not things that i would have thought about on my own. At this point i'm not really sure what to do about them yet- but at least i'm aware of them now.

    I don't know if this matters but i probably should mention that this is a UDK project. I guess that's considered a 'next-gen' engine. Has anyone worked with that before? Is there anything particular to UDK that I should be keeping in mind while modeling/skinning/texturing?
  • Vailias
    Offline / Send Message
    Vailias polycounter lvl 20
    It will be a lot easier on you. ;)
    UDK is pretty forgiving in my experience, and has a straightforward art pipeline.

    If you want to get some experience working with modular character assets in an unreal environment, craft up a replacement part set or two for Unreal Tournament 3, or at least look over the tutorials and such that are available on the internet now.
  • Kizmet
    thats good to hear. I'll go check out their tutorials! Thanks!
Sign In or Register to comment.