So I see lots of people who instead of creating one sound mesh, just create objects by "combining" sub-objects, more or less just pushing one mesh into the other, making them intersect with each other with tons of internal excess meshes, internal faces and other shit.
For example jeans with rivets just sunken into the pants mesh, futuristic helmets with design parts just placed on top of the helmet mesh, etc.
When is it okay to do this tongue-in-cheek shit?
I thought it's an absolute no go like using triangles where you can avoid them.
For film, as long as the intersection of those two meshes is hidden, it is perfectly fine. (like the example of rivets, the cap at the top is overlapping where the mesh penetrates). Intersections create 100% hardness lines that normal maps can't really fix. If the object is only going to be seen from a distance, than it's not an issue.
For games, you'll often save a shit tonne of polys by simply intersecting geometry instead of trying to modify the topology to support that shape. Again though, you'll get the 100% hardness lines, but it's not as big a deal in games and post-process filter can help blur those edges too.
The way videogames work, they generally render using gl_triangles (or dx equivalent), which means that disjointed triangles don't matter as long as they are all in the same object. You may even save on the triangle count. If it's many objects it's one drawcall per object, which is bad if the sub objets move the same way as the main objects and use the same texture espace and etc.
Now if your engine is somehow optimized to create triangle strips out of regular artist submitted meshes, it could be less optimal, yes, but it's an odd case.
For anything that isn't real time it's completely irrelevant.