Note: For an improved PROCEDURAL HANDLING OF SPLINES, I've made a whole separate topic. Check it out and support it here: [Splines] Improved procedural handling through both improved and additional modifiers
IMPROVED CREATION AND EDITING CAPABILITIES
- Spline In-Viewport Boolean operations like Smart Extrude for Edit/Editable Poly. This is the most obvious direction to develop smart extrude for splines bringing a bit more feature parity between Spline and Mesh class and the two workflows will exponentially leverage one another. There is room for debate about the expected behavior or actions when splines interact or intersect with each other, when you extrude a vertex as opposed to when you drag a segment etc. but the work needs to start from somewhere.
- Ability to control Spline profile Radius and Twist per Vertex by scaling or rotating the vertices (like in Blender)
Basically each vert would be a percentage of the radius, or length/width inputs of the profile or of the twist value. Similar to what you can do with the Scale and Twist curve graph on the Loft compund object. This is part of interactively working on/with splines and it's in the same vein of the latest or planned updates to modeling in 3Ds Max coming to both meshes and splines. It's about working and staying more in the viewport and it can be considered a smart extrusion and manipulation of the renderable aspect of splines and it's not even completely destructive as explained below.
This is a very fast and intuitive way of achieving various profile radius or introduce easy, non-linear twisting along it. In Blender you can simply tweak the Thickness/Radius or the Twist of a spline profile/cross-section by simply scaling or rotating the vertices using the respective spinner boxes in their side panel Transform rollup for vertices (Radius and Tilt) or hotkeys (Alt+S and Ctrl+T respectively) and this data works with whatever default or custom profile the user has enabled for the actual spline rendering. This makes for a very powerful method to model complicated tapered and twisted ornaments. This vertex Radius and Tilt values can also be stored similar to vertex Creases are stored in 3Ds Max (and how it currently works in Blender) for later tweaking and can be passed up the stack for them to work with Enable Rendering function of Edit/Editable Spline, with Renderable Spline and Sweep modifers and with Loft compound object.
Here is a video showing both of them in action (skip to the respective chapter Thickness/Radius at around 05:25 and 07:20 for Tilt respectively) (link).
- Import .SVG as splines. Since there is an importer for using SVG as a map, maybe it can be quickly tweaked to function also as a geometry spline importer.
- Additional Spline Primitives like a Straight Spline. As simple as it might sound, for procedural creation methods it's a useful approach.
- Vertex /knot type option (Bezier, Bezier Corner, Corner, Smooth) for the Creation Method rollup for other Splines and Extended Splines (WRectangle, Tee, Wide Flange, Angle, Channel) same as we have for the Line spline object creation. This would allow for a more procedural workflow keeping the shape primitive parameters intact since we don't need to add an Edit Spline modifier later just to chnage the vertex type. Also some Splines shapes like Rectangle, Ngon, Star should have Corner as option by default for their creation method.
- Snapping and Snapping viewport overlays similar to Adobe Photoshop and Ilustrator. These could help further with the alignment and positioning in the viewport.
- Line Angle Constraints improvements:
- make it work with Spline Smart Extrude as well, especially since, currently, if you do not Shift+drag on a single axis, you can't retroactively hold shift to snap the new knot along any axis.
- make it easier to adjust the snap Angle without of having to always go to the Grid and Snap Settings > Options menu
- Angle threshold control for Adaptive Interpolation. We have Adaptive and Optimize check boxes in Spline Interpolation Roll-out. But it will be good to have control for Angle threshold (link).
- Implement a way to Grow (and shrink) selection on splines ike we have in Editable and Edit poly
- A Handle Sub-Object mode like Patch. It's amazing that this Sub object mode has been added to Patches and not splines anyway.
- Offset
- Spline Offset that creates a spline unconnected from the original spline (similar to the way AutoCad offsets) and unlike the Outline tool which even with an open spline, it creates a closed shape with the offset value you input. This can be useful when creating lane lines that are offset from the edge of a roadway, a car motion path offset from a lane line, or a way to manually build terrain levels using the terrain compound object.
- Spline Offset and Outline preview (to have an idea of the distance you need without the need to undo due to newly created outlines/offsets that get in the way, and then type in the exact value you need).
- Multiple spline offset (set the distance and number of copies)
- Spline (Smart) Extrude Improvements
- If the end vertex has an out tangent, the vector of that out tangent can be used to extend the end of splines. When you are in local mode the gizmo could orientate to the handle. A slower alternative is part of an older request of making the handles snappable so that the working pivot could be aligned with their direction.
- shift dragging a vertex inside a segment could act like the Refine tool adding a new vertex and subdividing the segment (like ctrl+ drag does in Cinema 4D) and not creating an additional one end connected segment (if an end vertex gets extruded) or two additional vertices and a disconnected segment (it it's one of the inside vertices).
- this behavior could have two ways in which the new vertex travels along the spline: a strict one which is similar to Edit Poly Edge constraint (it will strictly follow the segment direction) and a looser one which allows free movements in all directions (I think this is the default behavior with ctrl+drag in Cinema 4D)
- Ability to move the selected vertex (or the cloned vertex) in the direction of the outvec/invec depending on where you move it (holding CTRL or any other modifier key) without the need to alway reset and aligned the Working Pivot
- Shift+scale on vertices should do a fillet/chamfer
- Try to retain spline shape when removing vertices. Vector programs like Illustrator or Corel Draw do that by default and it's really useful. When refining splines, max could also do a better job in preserving original spline shape.
- Built-in ability to flatten splines
- Dimensional/Numerical input for splines like CAD. User will start a spline by defining the first vertex clicking it. After that he can work until now by clicking where he want a new vertex OR you just move the mouse in the direction he want to create the new vertex (without clicking). If the user enters a number and press enter, the vertex is created on the direction defined with the mouse, the new segment having the lenght defined numerically.
IMPROVED VISUAL FEEDBACK, VIEWPORT OVERLAYS AND PRECISION
LINKS TO SOME ORIGINAL INDIVIDUAL IDEAS: