CurveTubeNode
===============
This node generates polygon tube based on the input curve. You can control the resolution,
shape and procedural uv through the node interface.
Node Parameters
----------
* Curve Sample Mode
The algorithm to be used for generating samples across the curve
* By Parameter: Generates samples based on curve parameters, this method is faster but less
accurate because the curve parameter usually doesn't distribute evenly on hand-created curves.
If the curve has been rebuilt to make the parameter distribution even, this algorithm would
produce fine results.
* By Arc Length: The arcs between close samples will have the same length. This method can generate
evenly distributed segments and less mis-shaping results, in slightly cost of performance.
* Tube Radius
Section radius of the curve.
* Use Radius Map
Enable hand-control radius mapping, you can use the ramp control below to control radius scale
along the curve.
* Curve Start/Curve End
Controls the range of the curve being used for tube generation. These are percent values between 0 and 1,
not explicit curve parameter.
* Decide Segments by Curve Length
Normally, total number of segments is controlled directly by the `Segments` parameter below.
Once this setting is turned on, number of segments will be controlled relatively by length of the curve.
* Segments
Total number of the segments.
* Unit Length Segments
When `Decide Segments by Curve Length` is on, this parameter is used to decide the number of segments
along with the curve length(`Curve Start` and `Curve End` will also be taken into account).
The number of segments will be __length_of_curve * unit_length_segments__, which means the longer the
curve, the more the segments. This method is useful when you want to extend the curve on fly while visualizing
the tube mesh growing at the same time.
* Section Segments
Total number of segments for section.
* Rotation
Rotate the whole tube around the curve.
* Twist
Twist the tube around the curve.
* End Cap
Fills the holes on both ends, the filling will be star shapes.
* Udd Extrusion
Add extrusion effect on tube body.
* Extrusion scale
Amount of extrusion.
* Extrusion Map
Controls the shape of extrusion based on curve parameter. Remember __The map value of 0.5 means no extrusion,
value greater than 0.5 means extruding outward along the polygon normal, and value less than 0.5 means extruding
inward__.
* Generate UV
Generates procedural uv for the mesh. Remember the uv generation algorithm is not for zero-distortion.
* Straighten Body UV
Do not deform uv on u direction based on section radius, in this case uv of each section along v direction
will be scaled trying to reduce distortion.
* UV Scale
Global uv scale.
* UV Cap Scale
Scale uv of the caps. Caps has the same uv aspect ratio with the tube by default. Use this parameter
in case you want to control the scaling independently.
* UV Padding
Distance between uv and uv space borders.
* UV Margin
Distance between uv islands.
* Curve Up Vector
Initial up vector for curve normal computing, there is no need to change this under most circumstances.
* Resample By Curvature
Add additional segments at high curvature areas. Higher curvature means the "steeper" parts
on the curve (i.e. tangent changes vastly and the radius is relatively small). High curvature areas
needs more samples to achieve enough details, but these parts of the curve usually don't have enough length.
This parameter enables the ability to add more samples to these areas via more specific controls.
* Curvature Threshold
Minimum curvature needed for activating curvature resample. Curvature is sampled by computing
differences between near tangents and arc distance, so their values don't have predictable ranges,
you will have to change this value as appropriate.
* Max Subdivision
Basically, this parameter controls how many additional segments added to high curvature areas.
1 subdivision == 2 more segments. Since high curvature areas often clump together within a small area,
max subdivision is not guaranteed to be fully performed. When the samples are over-concentration,
subdivision will be reduced to a more reasonable value.
* Min Arc Length
Controls the threshold used to reduce `Max Subdivision`, addition segments will only be added when
length of the arc between two additional samples is greater than this value.