A lot of tutorials I've watched show an object being given a multi/sub-object and giving parts of the model its own textures. Yet it would seem like the best option would be to unwrap the whole thing and texture each piece in the 0-1 UV space. I've only ever used a multi/sub-object on a tree where I had two materials, bark and tree limbs that were laid on a plane so I might be misinterpreting its use. I know how to set it up, just not why.
Replies
Things like tress are the best reason why you would use multiple IDs. Depending on other circumstances, multi-ID may be a better course to go for modular workflow.
For example, maybe you design multiple texture pages with the same layout, therefore making them interchangeable on objects that have multiple ID's (it's as if you've create these ID's, literally, to designate a material type - wood, stone, brick, concrete, shingles, bark, transparency, etc.)
A key point is the engine preference. I know for a fact that UDk would much rather you make a master texture then have multiple IDs for each ID is a separate drawcall, even if it's the same asset, it needs to still render in a separate pass each material, for each one draws to an ID (even if the materials are instances, it would still require more processing).
Other engines may differ and have different preferences. In the end, multiple IDs are not intended for real-time, therefore, cinematic within an engine wouldn't matter.
This is the most significant key difference between the two. Otherwise, if you've developed this awesome method that relies heavily on multiple ID's for all your world assets, it may just as well be a better path then having more textures, materials and instructions by different methods.
Multiple material IDs allow you to use multiple textures on one asset, regardless of how the asset is unwrapped.
A practical example would be a building that will be exported as one mesh, but is comprised of multiple assets that were modeled, unwrapped, and textured individually. Say you have a set of windows, a door, some trim, and the walls, all as individual assets. With multiple matIDs, you can attach all of those assets you unwrapped and textured so they're now one mesh but still retain their UV coordinates and textures.
Applying the multi/sub-object material is no different than a regular material, just drag and drop. What is different though is the setup. Where a standard material has one slot for your diffuse, spec, normal, and so on, a multi/sub-object material has the same but per matID.
Mutli/Sub-Object Material:
MatID 1: Diffuse = texture.tga
MatID 2: Diffuse = texture.tga
MatID 3: Diffuse = texture.tga