Spline-cage - challenges & tricks.
---------------
Just short of the final recipes, a document covering the finer issues and solutions involved in achieving the best results from the whole wing of the workflow. By the end, a miasma of Mandelbrotesque convolutions become possible by combining tubbing techniques with different modifiers throughout the stack, something Max was designed to handle. I need to stress that this is only about spline-cages and leading up to that stage, and while involving use of patch-mesh editing modifiers, it does not include techniques used beyond the later "quiltwork" stage, which involves layers of displacements. This also doesn't mention cross-section techniques, but these points also apply to any supplementary details cross-sectioned in, because they are also splines and can also be derived from low-poly legacy meshes. From those comforts, whichever miasmic convolutions may result and which we can tame and document, we master these skills and this list can grow all the more chubby.
...Topology Makeover:-
Whether low-poly origin or embarking on a fresh spline-cage, the topology needs to be the primary focus, even over polycount and legacy optimisations. Absolutely as much as possible needs to be quads, and structures requires a logical consistency, not just a visual or animated concern, which was typically the only concern for legacy real-time content. This generally means just making the mesh more consistently dispersed, making the geometry more fence-like. It's counter-intuitive to how legacy assets were constructed and much closer to a CGI asset like Sulley. It doesn't mean everything needs to be a quad, you can still have as many triangles as needed, but the general rule of thumb is that the more deviation from a nicely aligned and proportioned quad, the less beautiful the smoothing and more troublesome the knots. Thankfully the recipe includes a lot of nifty shortcuts to achieving this easily, detriangulation and loop/ring sliding in Blender, which interactively coordinates with the UV unwrap, this is all not as difficult as it sounds.
...UV Origami:-
Extremely important, because UVs are not only difficult in gMax, they are a dealbreaker. It is possible, but, we're talking about 2001 expectations and it was already gimped again over, I guess because Discreet thought of LithUnwrap as the standard of the day, even compared with 3D Studio MAX. Cutting to the chase, we want to handle our UV unwraps with Blender, which means we need to have it done before the spline-cage process, which then means a lot of gamedev kung fu to make it happen. However the UVs turn out, even overlapped, breached and flipped/mirrored/skewed/whatever, there is only 1 important rule, and that is that the indexing and welding of the UVs must match exactly that of the model itself. This is the only way to escort both elements of the content through to the editable spline-cage phase of the process, so that the spline-cage has its spline-UVs. And this is done via the "origami" process, where the mesh becomes a literal unwrap of itself as another mesh, and that mesh is then processed into a spline-cage individually. A Python script is used in Blender to demarcate seams from the UV islands automatically, splitting the model back into groups consisting of geometry corresponding to exactly that of the UV islands. This solves 99% of this UV welding issue, however there are sometimes different UV vertices that are sharing the same spatial coordinates on the mesh itself which still need to be broken. A simple diagonal grayscale displacement should guarantee to break these remaining vertices by their UV coordinates explicitly. With a good topology makeover which also includes a neat and logical UV unwrap from the outset, this entire technique should be flawless.
...Frilling Extrusions:-
The next big concern is exactly how to refine the patch-smoothing process from before even its spline-cage evolution, ensuring that the parametric curvature of the splines and their beziers inherit the most appropriate initial form and thus requiring minimal to no tweaking later on. The answer is surprisingly simple, and that is to just throw more triangles at it, but in a very particular way very temporarily, only to achieve our goal. Curvature is determined by density of topology, and serendipitously the welding process only happens on first nearest-neighbour and the UVs simply embed themselves along the VW axis harmlessly. This means the perfectly acceptable solution is to use "extrude" tool in negligible increments to inject high-density geometry. This sounds messy and dangerous, but the workaround is stupidly simple, we simply scale everything to about 5000 3D units, turning a human into the size of Mount Everest, and all the broken vertices, offset UV vertices and pancaked extrusions become comparatively microscopic and meaningless in the big picture. These aberrations will be well off the lowest conventional grid alignments, so even though the later welding process will reapproximate the vertices, the size of the mesh is so big in comparison that every single vertex will easily snap back to the lowest grid increment as it scales by comparison. We're essentially only screwing around on a whole other smaller order of magnitude. Once it's all done and we come back down from Mount Everest, the UVs didn't give two rat turds about anything that just happened and we can determine exactly where the hard refined edges and seams will occur on any spline, done by some quick dirty extruding, regardless of if it's a UV island seam or not. A few simple logical frilling methods take care of almost any situation and it's pretty intuitive too. This is usually more necessary for rigid objects, in which a different technique may be used entirely anyway, and again, this sounds a lot more confusing than it really is.
...Tubbing Masks:-
Now that we've defined our model and have reached the spline-cage phase, we're able to begin using modifiers and particularly the 'Relax' modifier via an 'Edit Patch' modifier, and do some tubbing. Tubbing occurs when the influence of different modifiers are invoked interactively using specific selections via different elements. This is especially handy for extra smoothing of curvatures and smoothing over rigid edges to create semi-rigid contours, in other words, to have turned the smooth result into a rigid one, and then flow back into a smooth result over again from that, getting the best of both worlds. This is done in a few very interesting and useful ways, the first of which is tubbing by applying certain modifiers with certain parameters to only specific selected elements of the model, and this can be done interactively. This can also be achieved via a custom grayscale texture and selection sets which also includes soft selection, an extremely powerful set of abilities. The idea behind all of this is to further refine exactly which parts of the model, via its very elements and their axis, should be harsh and rigid, and which should be nicely curved and exactly how smooth that curvature should be. Because this is achieved via an axis, rigidity can exist along one contour while tubbing the other axes and their contours. It's difficult to imagine what isn't physically possible.
...Bastardised Beziers:-
Well, there is one aspect not possible so far, and that is overlapping lips and concave constructions using only beziers, before even reaching the quiltwork patch-mesh stage, which will give everything a whole new level of detail possible over which displacements can further enhance it, and usually where it's most needed and where it might be otherwise difficult. This is the most advanced area of artistry in the workflow so far and some absolutely crazy results are possible, the pulsating miasmas. It's possible to completely turn geometry inside-out, recalculate elements in different ways, tub in different configurations and use multiple modifiers in a stack, in a particular arrangement in the stack, and even make use of negatively geared values. This phase does somewhat coincide with tubbing, so specific beziers can be precisely refined, it's possible to target loops and rings throughout the spline-cage without the presumed effort. Buttertubs are one thing, but I've seen entire inside-out teapots and circus tents and a huge variety of different fruits and vegetables, all exploding from the most simple geometry you'd see on a Sega Saturn. Because by this phase of the process the polycount is just an abstract and can potentially be an infinite amount of triangles, the results continue to resolve to such insane extents, it truly demonstrates the validity and power of this workflow, and the universe of further tricks to discover, harness and master. So instead of random circus tents and pineapples, we may be able to corral our beziers to behave exactly as we intend them, undoubtedly continuing the tradition of ludicrous magic tricks to do so.
...
- a demonstration of convoluted miasmas achieved by interactively tubbing different elements while combining different modifiers between a quiltwork. (goldilocks phase between spline-cage and editable-patch)
.
.
.