Roland Melkert Wrote:Speed wise you want as much in a single mesh as possible as it reduces (api) overhead. Subparts could help reduce the preparation time needed though.
There's a limit to how much processing can be 'cached' on sub-parts because each sub-part can (1) be modified by parent commands (scale, BFC inverse, change of texture environment, etc.) and (2) may interact with neighbors (e.g. for smoothing and calculating normals).
There are some cases where there could be some computation savings: if we have a rule "no smoothing between triangles across lines" (that is, lines induce creases) then we can reduce the set of "open" edges in a sub-part once. A few pathological cases are beig wins here: a 32x32 baseplate with 1024 studs - the studs are mostly pre-creased, so we eliminate almost 32k edge checks from sub-parts. But this case is already taken care of in the library.
I think a good rule of thumb might be: the humans will get annoyed with a huge file before the renderers get slow at pre-processing with repetition. :-)
cheers
Ben