Home General Discussion

Contiguous mesh vs. combined objects?

Brian Reynolds
polycounter lvl 18
Offline / Send Message
Brian Reynolds polycounter lvl 18
I've got a question to ask of you guys that was specificly brought into focus after reading the modelling section of the recent book "The Game Artist's Guide to Maya". That question concerns the pros and cons of low poly contiguous meshes vs. combined objects.

In the modelling section of the book there's construction comments and tips on building a Satyr warrior and his sword. To illustrate what I'm talking about, the book talks of building the sword in three parts (blade, hilt, and handguard) as seperate interpenetrating objects and then combining them into one object which is then UVmapped and forevermore treated as a single piece of geometry. This same technique is used to different levels in the head, ears, horns, and most interestingly for my part, the armor spikes and wristbands.

Now here's what I want to learn: I've been told that when building a mesh it's always best to create a single piece of contiguous geometry as opposed to combining separate objects without merging vertices. The reasons varied from simple cleanliness to actual issues with polygon depth sorting within game engines. Until I'd been told this I had thought that object combining was a perfect solution to the problem of complex shape construction and penetration without having to add in numerous extra polygons to smooth out the different edge angles and penetrations.

So what's the general concensus on this? I'm eager to find out more...

Replies

  • lkraan
    Options
    Offline / Send Message
    lkraan polycounter lvl 18
    I always thought that it depends on the engine and platform if intersecting polys are a problem.
    Most modern engines for pc games don't have a problem with this I think.
  • AstroZombie
    Options
    Offline / Send Message
    AstroZombie polycounter lvl 18
    Some engines you will get Z-fighting with interpenetrated mesh. Another thing to consider is vertex lighting looks better with a contiguous (airtight) mesh.

    IMO - If you are learning I think it's better to try and make your models airtight. Intersected mesh can be more efficient where polygon count is a concern, however. In fact I tend to model objects airtight and then go back and break them apart and interpenetrate as part of optimizing my mesh.
  • JKMakowka
    Options
    Offline / Send Message
    JKMakowka polycounter lvl 18
    Usually having a contiguous mesh is the better option... I try to avoid intersecting meshes.
    But exspecially in very low poly models, or places where it would be a huge waste of polys to do it as a contiguous mesh, it is the better option to have combined objects.

    That said, I have to add that you have to be exspecially careful with combined objects when using normal-maps.
  • spacemonkey
    Options
    Offline / Send Message
    spacemonkey polycounter lvl 18
    It depends.
    By using intersecting meshes you can add extra details to a mesh that you couldnt otherwise afford to do (because of a low poly count for example) Sometimes it can take allot of additional polies to 'maintain' a continuous mesh, whereas by having some intersecting geometry you could acheive the same result with minimal poly use.
    It also depends on what the model is - its easier to get away with things that aren't organic, in this manner - but obviously arms intersecting a torso would look bad (in most cases ;P).
    I'm sure if you trawl through the forum you'll find plenty of examples of people utilising intersecting geometry. I remember that the Ut2k3 characters models had lots of intersecting meshes - which enable each character to have a unique silhouette. Might be worth having a look for those meshes.. I am sure they were released at some point.
    Anyway, there is no right or wrong, just whats appropraite for the model in question.
  • Ryno
    Options
    Offline / Send Message
    Ryno polycounter lvl 18
    For vertex lighting, and to avoid Z-fighting, contiguous is better.

    That being said, those are not always issues that you will need to be concerned with, depending on the game engine. Intersecting geometry can save you a ton of polygons, and can just make things a lot easier to edit. Particularly in the case of hard edged non deforming geometry, a broken mesh can be much easier to deal with. I've had to make tons of buildings for games, mostly being exterior models, and the use of non-contiguos geometry really makes the job much easier. Let's say that you've got a protruding billboard on the side of your building, and your art director says to move it to the other side. If it is a discreet non-connected element, this will take a second or two to do. If it is a piece of attached geometry, it will take quite a bit more work.

    If you are working on a large environment, using non-contiguous geometry can really help you out. It will save tons of polygons, and also allow for the re-use of the elements to break up patterns. Move tree limbs around on different trees, move chimneys around to alter silhouettes of buildings, etc.
  • mtmckinley
    Options
    Offline / Send Message
    mtmckinley polycounter lvl 18
    I concur with all that has been said. So far, in my own experiences anyway, there hasn't been an issue with intersecting pieces of geoemtry, and, in at least one project's case, was necessary for the game, as the character would be equipping different armor, weapons, and other such items throughout the game, which is the kind of case I was presenting with the book's project.
  • Asthane
    Options
    Offline / Send Message
    Asthane polycounter lvl 18
    It should also be mentioned that while, when using segmented models the overall "polygon count" will go down, your actual vertice count will be higher than with a single mesh
  • Brian Reynolds
    Options
    Offline / Send Message
    Brian Reynolds polycounter lvl 18
    Oh yes, this is excellent stuff to chew on! That's incredibly informative and I thank you all!
  • Toomas
    Options
    Offline / Send Message
    Toomas polycounter lvl 18
    [ QUOTE ]
    It should also be mentioned that while, when using segmented models the overall "polygon count" will go down, your actual vertice count will be higher than with a single mesh

    [/ QUOTE ]

    WRONG ANSWER! It can be both higher or lower or same.
    tightness.jpg
    Intersecting mesh has 16verts/24tris and airtight one has 24verts/44tris.
  • Asthane
    Options
    Offline / Send Message
    Asthane polycounter lvl 18
    I stand corrected, should have said "may be higher". The point was that there's more to it than polygons wink.gif
  • ndcv
    Options
    Offline / Send Message
    ndcv polycounter lvl 18
    As I understand it, Z-fighting with two objects is usually more of an issue when triangles from the two objects get closer to sharing the same plane (like if you tried to separately model a sticker on the side of a box). As the tris get more toward perpendicular (like an arrow sticking out of a character's chest), the Z-fighting becomes less of an issue.
  • malcolm
    Options
    Offline / Send Message
    malcolm polycount sponsor
    As a rule of thumb use segmented penetrating meshes primarily for environments, and use seamless single meshes for characters. Although there are always exceptions to the rule, I believe some crappy FPS engines only allow seamless meshes as well they backface cull so you have to cap the ends of pipes, also most character models have modeled eyes now so you would want to make those seperate meshes so the eyelids can blink, it is really a case by case scenero. I primarily use segmented penetrating meshes because it is quicker to model and usually ends up costing less memory wise, as well if you want to get around the vertex lighting problem instead of penetrating the models into each other leave the verts 1 pixel above the other mesh, you wont be able to tell the objects are not actually touching and when you bake your lighting you won't get any black verts. We employed this technique on the last game I worked on with no problems.
  • Joshua Stubbles
    Options
    Offline / Send Message
    Joshua Stubbles polycounter lvl 19
    I use segmented meshes all the time when building enviornments. This is mainly so that I have the ability to instance geometry, or quickly add things here or there. Our characters also have some segmented elements. Watches, ties, etc, are seperated out, for swapping.
  • Paolo
    Options
    Offline / Send Message
    Paolo polycounter lvl 18
    Segmentation can also be an easy way to get some cheap definition of form when neither additional polys nor advanced shaders are available. Strategic segmentation along certain edges can add extra definition via discontinuous vertex normals. For instance, splitting a few verts under the pecs can give the effect of sharper definition than there actually is.
Sign In or Register to comment.