Community
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

[Splines] Improved procedural handling through both improved and additional modifiers

[Splines] Improved procedural handling through both improved and additional modifiers

 

 

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.

3ds Max Normalize Spline Modifier_Retain corners no overlapping vertices.png

 

  • 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).

3ds Max Renderable Spline_Cross intersections_weld_CleanQuadtop.png

 

  • 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.

 3ds Max_Renderable Spline_Spiky_Corners.png

 

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 OutlineSpline 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:

 

 

 

 

6 Comments

DELETED/Included in the main post

Anonymous
Not applicable

These are all great. I would love to be able to scale verts on a spline as well. Basically each vert would be a percentage of the radius, or length/width inputs. Similar to what you can do with the scale curve on a loft.

@Anonymous Do you know how exactly the Blender way of dealing with splines radius is? At the beginning I thought it was about altering the vertices weight which in turn alters the radius but in the side panel the vertices weight is a separate value. It seems that the radius is controlled by the Mean Radius value instead. I wonder what is this value about.

Rob.c.mayer
Contributor

I'd like to throw an additional idea onto the pile:
For the Sweep modifier (I could see something similar being useful in Shell) where a custom shape is used: an option to use the Pivot of the custom shape be the point of contact on the host spline in addition to the 9-box.

 

EDIT: Nevermind. I've since learned that unselecting the 9box centers it based on the pivot.

Rob.c.mayer
Contributor

Since I'm already here, I'd love to see an option for Normalize Spline to "Normalize from Center". Presently, if I have a spline that is 10 units long, and I normalize it with a spacing of 4m, I get three new segments: 4u, 4u, 2u in that order - normalizing obviously happens along the path starting from the curve root. ... The idea here would result in 4 segments in stead of 3: 1u, 4u, 4u, 1u - the normalization occurs with respect to the center of the curve instead of the root point.

Can't find what you're looking for? Ask the community or share your knowledge.

Submit Idea  

Autodesk Design & Make Report