Note: For the improved CREATION AND EDITITNG CAPABILITIES OF SPLINES (within Edit/Editable Spline), I've made a whole separate topic. Pls. check it out and support it here: [Splines] Improved creation/editing capabilities and precision
IMPROVED EXISTING MODIFIERS
Edit Spline modifier
- Improved creation/editing capabilities and precision (I covered this in a separate idea - link)
- Add Interpolation rollout (steps, optimize, adaptive)
- methods to deal with spiky corners when the angle becomes too small with renderable splines (e.g., a miter-limit implementation similar to what vector drawing software has for strokes - link)
- Add the ability to re-order splines within Edit Spline. An example would be for when using the Cross Section Modifier and one needs to move splines around and reorder them - their numbering then also needs to be changed too to reflect the reordering and new positions within the cross-section flow.
Normalize spline modifier
- We need a Normalize Spline that will preserve corners (maybe by angle tolerance) and avoids leaving overlapping vertices. Normalize spline modifier can sometimes break the procedural workflow by creating overlapped vertices (when trying to preserve the corners and overall shape of the original spline) that need to be fixed manually and require adding an Edit Spline modifier. Playing with the values can solve it but it can be hard to avoid that some corners become beveled/chamfered in the process. So, it will be useful to give the option to retain corners by min and max angle, for example if you draw a rectangle then you can normalize and set the min angle to 90 degrees so it will be normalized but retain the 4 original corners, now the new vertices will have the specified spacing (for example 20 cm) ignoring the original 4 corners of the rectangle (the spacing is passing through the original vertices. Right now, we can use the Retain Knots Within option but on more complex splines often leaves overlapped vertices.
- ability to Normalize by segment, this will work by normalizing each segment alone by starting the new vertices spacing for each segment independently (the spacing is independent for each segment) and you can give the option for min and max angles for this option also, to determine which segments are considered to be normalized together or independently
- ability to Delete vertices along straight segments of a spline. Again, with an angle tolerance?
- add the option to Divide the segments of the spline (like the divide command in edit/editable spline but this will work in a procedural method)
- Rebuild a Curve function similar to Maya while reducing the number of vertices.
Sweep modifier
- More control on the number of faces created with swept splines would be nice. For instance, vertex A with Bezier handles creates 16 segments, whereas B also with Bezier handles creates 64.
- Also, the current tool has created unreliable outcomes when using a custom spline. Depending on how the spline was created one gets a variety of outcomes. Unfortunately, the workarounds are also unreliable. Please fix this tool, so that a sweep of a custom spline produces reliable outcomes.
- Could also use Curve controls graph for Scale, Rotate, Twist along Shape (link)
Trim/Extend Spline modifier
The new Trim/Extend modifier currently adds very little value. It would be very valuable if it were 'live' in the stack. Ideally, the Trim/Extend modifier could be applied above a spline object in the stack and would allow modifications to the spline object below it while maintaining the trim/extend values above. This would allow, for example, the ability to apply the modifier, and then to adjust the angle of the splines being trimmed/extended freely, without having to delete the modifier and add another trim/extend modifier in its place.
Renderable Spline modifier
- Add Blade for flat render shape and (link).
- When there are crossed sections inside a spline the geometry should be welded with clean quads topology (link).
- methods to deal with spiky corners when the angle becomes too small (e.g., a miter-limit implementation similar to what vector drawing software have for strokes - link). Normally, this could be solved by chamfering/filleting vertices but when importing splines with lots of vertices this would add way too many additional ones and will greatly affect the performance of Spline Extrude for ex.
Spline Overlap modifier
Spline Normals to travel across modifiers. On spline overlap we have this "use Normals (if present)". That's cool if we create the spline with a freehand tool over an object. The problem is that if after a freehand we create a normalize for example, this Normals disappear. Can we make this Normals consistent, even if we create modifiers in between?
Spline Influence modifier
Update the Spline Influence modifier to account for Influence object's actual volume so we get a similar function to the Vol Select modifier. That's because the Spline Influence modifier only calculates selection and falloff based on the center of the Influence object, not the volume itself like the Vol. Select modifier does.
Extrude modifier
- Spline symmetrical direction for extrude like in Fusion 360 so that the shape will evenly extrude in both directions to the desired amount (link).
- Extrude path option.
Cross Section modifier
Add the ability to re-order splines within Edit Spline. When using the Cross Section Modifier and one needs to move splines around and reorder them - their numbering then also needs to be changed too to reflect the reordering and new positions within the cross-section flow.
Dynamic Spline Behavior
The dynamic behavior of meshes is a fantastic function in 3ds Max. For example, if I build up a mesh model, and in the end, I apply a chamfer modifier on it, I can modify the base model, and the chamfered model changes with it.
However, if I try to do the same with a spline, the chamfering breaks the dynamic behavior of the spline, and if I modify the original spline, the chamfered spline does not change, its vertices have baked coordinates. It would be very nice if the splines in 3ds max were as dynamic as mesh objects. It would be, if meshes and splines could have dynamic connections. For example, detaching Mesh Edges to become Splines wouldn't be a single operation, but the detached spline could be a reference of the mesh. So, modifying the mesh would affect the spline itself.
ADDITIONAL MODIFIERS
An alternative more flexible nondestructive way of editing is through new modifiers for Outline, Spline Boolean, Fillet/Chamfer etc. Some ideas on how this could/should work (based on feedback from users):
Outline modifier (suggested options)
- Two ratio buttons: Step and Subdivisions (default value 1); Step: At default 1, This mode creates a single outline as of now, but allows to add multiple copies at a given step distance; Subdivision: Add outlines between the original and the distance.
- Distance: The distance of the outline.
- Material ID: Allows to set a different spline ID to copies.
- ID per copy: Increment Material ID per copy so each copy has a unique ID (useful for motion stuff and procedural workflows)
- Random: Randomize ID. A Seed parameter is necessary. (same)
- Remove overlaps
- Weld new points
Offset modifier
In conjunction with outline, where outline is from the middle to the edge and offset from edge to edge.
Connect modifier
A connect modifiers between two splines where certain vertices can be connected to form edges of a polygon (with the splines being the other edges). For specific workflows such as procedural road creation, based on splines and resulting in polygons, this would be huge.
Vertex Weld modifier
It would be useful to have a Vertex Weld Modifier which can be applied to splines to parametrically weld imported splines or to apply to spline sections so they can be extruded with caps etc. It's needed for all major commands in Spline like Chamfer, Fillet etc.
LINKS TO SOME ORIGINAL INDIVIDUAL IDEAS: