The curves scenegraph location, in addition to the standard Katana curves attributes, KtoA handles the following additional attributes:
anoldStatements.*
: the various curve-related settings are applied. In particular,curve_mode
,curve_basis
,min_pixel_width
,flip_t
, andcurve_triplicate_endpoints
are used beyond the common settings available. Please see theArnoldObjectSettings
node for those curve settings.geometry.arbitrary.st
: texture coordinates here are treated as per-curve values, and translated as root UVs for curves in Arnold. Note that there should be one ST (two floats) per curve, and the scope should beprimitive
(notface
,vertex
orpoint
).geometry.point.orientation
,geometry.point.N
,geometry.point.normal
: a three-float list of orientation vectors per curve point, indicating the direction the curve is facing. This only applies whenarnoldStatements.curve_mode
isoriented
.- Curve widths, listed in order of higher precedence (only one set is applied):
geometry.curveWidthStart
andgeometry.curveWidthEnd
: float, per curve. These attributes allow the specification of a root and tip width for each curve.- (deprecated)
geometry.curves_width
: used only ifgeometry.curves_ncurves
is present. One float width per varying value, or per curve point, or per curve. geometry.point.width
: float, one per varying value, or per point, or per curve. Semantically it is recommended to use this per point or per varying value.geometry.width
: float, one per varying value, or per point, or per curve. Semantically, it is recommended to use this per curve.geometry.constantWidth
: float, one value for the whole location.- (deprecated)
geometry.point.constantWidth
: float, one value for the whole location. geometry.curveWidthEnd
: float, per curve. This option attribute is used instead of usegeometry.point.width
orgeometry.point.constantWidth
if present, this attribute allows the specification of a tip width for each curve.
- (deprecated)
geometry.curves_pointList
: legacy synonym forgeometry.point.P
- (deprecated)
geometry.curves_nvertices
: legacy synonym forgeometry.numVertices
- (deprecated)
geometry.curveMode
: legacy synonym forarnoldStatements.curve_mode
Currently, standard curves location attributes geometry.degree
and geometry.knots
are ignored, but will likely be supported in some fashion in a future KtoA release.
Arbitrary Data Sizes
Arbitrary data for curves is a bit of a special case, because Katana normally vets arbitrary data scope such as face
or point
against polymesh
or subdmesh
location attributes to make sure there are the right number of values. Because curves lack those attributes, only primitive
scope should be used for curves arbitrary attributes. In a future version of KtoA additional scopes will be properly supported for curves.