This node is used to dynamically simulate long hair motion with
collision. This takes an array of start and rest positions from
follicle nodes and computes an array of output hair positions(point
arrays). When the current time input steps forward this computes a
new position based on its current position. When the time is
rewound to the start frame it sets the positions to the input start
hair positions.
Long name (short name) |
Type |
Default |
Flags |
|
simulationMethod
(sim ) |
enum |
3 |
|
|
inputHair
(ih ) |
hairCurve |
NULL |
|
|
inputHairPin
(ihp ) |
hairPin |
NULL |
|
|
collide
(cld ) |
bool |
true |
|
|
collideOverSample
(cos ) |
integer |
0 |
|
|
selfCollide
(scd ) |
bool |
false |
|
|
collideGround
(cdg ) |
bool |
false |
|
|
groundHeight
(ghe ) |
double |
0.0 |
|
|
evaluationOrder
(evo ) |
enum |
1 |
|
|
stiffness
(sfn ) |
double |
0.15 |
|
|
stiffnessScale
(sts ) |
compound |
n/a |
|
|
stiffnessScale_Position
(stsp ) |
float |
0.0 |
|
|
|
stiffnessScale_FloatValue
(stsfv ) |
float |
0.0 |
|
|
|
stiffnessScale_Interp
(stsi ) |
enum |
0 |
|
|
|
lengthFlex
(lfx ) |
double |
0.0 |
|
|
damp
(dmp ) |
double |
0.0 |
|
|
drag
(drg ) |
double |
0.05 |
|
|
friction
(frc ) |
double |
0.5 |
|
|
mass
(mss ) |
double |
1.0 |
|
|
dynamicsWeight
(dw ) |
double |
1.0 |
|
|
collideWidthOffset
(wid ) |
double |
0.0 |
|
|
staticCling
(stc ) |
double |
0.0 |
|
|
repulsion
(rpl ) |
double |
0.5 |
|
|
numCollideNeighbors
(ncn ) |
integer |
4 |
|
|
iterations
(itr ) |
integer |
4 |
|
|
drawCollideWidth
(dwd ) |
bool |
false |
|
|
widthDrawSkip
(wds ) |
integer |
2 |
|
|
gravity
(grv ) |
double |
0.98 |
|
|
turbulenceStrength
(tst ) |
double |
0 |
|
|
turbulenceFrequency
(tfr ) |
double |
0.2 |
|
|
turbulenceSpeed
(tbs ) |
double |
.2 |
|
|
attractionDamp
(ad ) |
double |
0.0 |
|
|
startCurveAttract
(sct ) |
double |
0.0 |
|
|
attractionScale
(ats ) |
compound |
n/a |
|
|
attractionScale_Position
(atsp ) |
float |
0.0 |
|
|
|
attractionScale_FloatValue
(atsfv ) |
float |
0.0 |
|
|
|
attractionScale_Interp
(atsi ) |
enum |
0 |
|
|
|
motionDrag
(mdg ) |
double |
0.0 |
|
|
displayQuality
(dpq ) |
double |
100.0 |
|
|
noStretch
(nst ) |
bool |
false |
|
|
subSegments
(ssg ) |
integer |
0 |
|
|
clumpWidth
(cwd ) |
double |
0.3 |
|
|
clumpWidthScale
(cws ) |
compound |
n/a |
|
|
clumpWidthScale_Position
(cwsp ) |
float |
0.0 |
|
|
|
clumpWidthScale_FloatValue
(cwsfv ) |
float |
0.0 |
|
|
|
clumpWidthScale_Interp
(cwsi ) |
enum |
0 |
|
|
|
clumpTwist
(ctw ) |
double |
0.0 |
|
|
clumpCurl
(clc ) |
compound |
n/a |
|
|
clumpCurl_Position
(clcp ) |
float |
0.0 |
|
|
|
clumpCurl_FloatValue
(clcfv ) |
float |
0.0 |
|
|
|
clumpCurl_Interp
(clci ) |
enum |
0 |
|
|
|
clumpFlatness
(cfl ) |
compound |
n/a |
|
|
clumpFlatness_Position
(cflp ) |
float |
0.0 |
|
|
|
clumpFlatness_FloatValue
(cflfv ) |
float |
0.0 |
|
|
|
clumpFlatness_Interp
(cfli ) |
enum |
0 |
|
|
|
bendFollow
(bnf ) |
double |
1.0 |
|
|
hairWidth
(hwd ) |
double |
0.01 |
|
|
hairWidthScale
(hws ) |
compound |
n/a |
|
|
hairWidthScale_Position
(hwsp ) |
float |
0.0 |
|
|
|
hairWidthScale_FloatValue
(hwsfv ) |
float |
0.0 |
|
|
|
hairWidthScale_Interp
(hwsi ) |
enum |
0 |
|
|
|
baldnessMap
(bmp ) |
double |
1.0 |
|
|
opacity
(opc ) |
double |
1.0 |
|
|
hairColor
(hcl ) |
float3 |
|
|
|
hairColorR
(hcr ) |
float |
0.3 |
|
|
|
hairColorG
(hcg ) |
float |
0.25 |
|
|
|
hairColorB
(hcb ) |
float |
0.15 |
|
|
|
hairColorScale
(hcs ) |
compound |
n/a |
|
|
hairColorScale_Position
(hcsp ) |
float |
0.0 |
|
|
|
hairColorScale_Color
(hcsc ) |
float3 |
|
|
|
hairColorScale_ColorR
(hcscr ) |
float |
0.0 |
|
|
|
hairColorScale_ColorG
(hcscg ) |
float |
0.0 |
|
|
|
hairColorScale_ColorB
(hcscb ) |
float |
0.0 |
|
|
|
|
hairColorScale_Interp
(hcsi ) |
enum |
0 |
|
|
|
hairsPerClump
(hpc ) |
integer |
10 |
|
|
thinning
(thn ) |
double |
0.0 |
|
|
translucence
(tlc ) |
double |
0.5 |
|
|
specularColor
(spc ) |
float3 |
|
|
|
specularColorR
(spr ) |
float |
0.35 |
|
|
|
specularColorG
(spg ) |
float |
0.35 |
|
|
|
specularColorB
(spb ) |
float |
0.3 |
|
|
|
specularPower
(spp ) |
double |
3.0 |
|
|
castShadows
(csd ) |
bool |
true |
|
|
diffuseRand
(dfr ) |
double |
0.2 |
|
|
specularRand
(sra ) |
double |
0.4 |
|
|
hueRand
(chr ) |
double |
0.0 |
|
|
satRand
(csr ) |
double |
0.0 |
|
|
valRand
(cvr ) |
double |
0.0 |
|
|
multiStreaks
(mst ) |
integer |
0 |
|
|
multiStreakSpread1
(ms1 ) |
double |
0.3 |
|
|
multiStreakSpread2
(ms2 ) |
double |
0.1 |
|
|
lightEachHair
(leh ) |
bool |
false |
|
|
displacementScale
(dsc ) |
compound |
n/a |
|
|
displacementScale_Position
(dscp ) |
float |
0.0 |
|
|
|
displacementScale_FloatValue
(dscfv ) |
float |
0.0 |
|
|
|
displacementScale_Interp
(dsci ) |
enum |
0 |
|
|
|
curl
(crl ) |
double |
0.0 |
|
|
curlFrequency
(crf ) |
double |
10 |
|
|
noiseMethod
(nmt ) |
enum |
0 |
|
|
noise
(noi ) |
double |
0.0 |
|
|
detailNoise
(dno ) |
double |
0.0 |
|
|
noiseFrequency
(nof ) |
double |
0.4 |
|
|
noiseFrequencyU
(nfu ) |
double |
1.0 |
|
|
noiseFrequencyV
(nfv ) |
double |
1.0 |
|
|
noiseFrequencyW
(nfw ) |
double |
1.0 |
|
|
subClumpMethod
(scm ) |
enum |
0 |
|
|
subClumping
(scp ) |
double |
0.0 |
|
|
subClumpRand
(scr ) |
double |
0.0 |
|
|
numUClumps
(nuc ) |
double |
15.0 |
|
|
numVClumps
(nvc ) |
double |
15.0 |
|
|
clumpInterpolation
(cin ) |
double |
0.0 |
|
|
interpolationRange
(inr ) |
double |
8.0 |
|
|
currentTime
(cti ) |
time |
0.0film |
|
|
startTime
(sti ) |
time |
0.0film |
|
|
startFrame
(stf ) |
double |
1.0 |
|
|
lastEvalTime
(lst ) |
time |
-1.0film |
|
|
inputForce
(ifc ) |
vectorArray |
empty |
|
|
fieldData
(fd ) |
compound |
n/a |
|
|
fieldDataPosition
(fdp ) |
vectorArray |
empty |
|
|
|
fieldDataVelocity
(fdv ) |
vectorArray |
empty |
|
|
|
fieldDataMass
(fdm ) |
doubleArray |
empty |
|
|
|
fieldDataDeltaTime
(fdt ) |
time |
0film |
|
|
|
usePre70ForceIntensity
(upfi ) |
bool |
false |
|
|
collisionData
(cda ) |
compound |
n/a |
|
|
collisionGeometry
(cge ) |
sweptGeometry |
NULL |
|
|
|
collisionResilience
(crs ) |
double |
0.0 |
|
|
|
collisionFriction
(cfr ) |
double |
0.0 |
|
|
|
diskCache
(dc ) |
Message |
n/a |
|
|
receiveShadows
(rcsh ) |
bool |
true |
|
|
visibleInReflections
(vir ) |
bool |
false |
|
|
visibleInRefractions
(vif ) |
bool |
false |
|
|
mentalRayControls
(mrc ) |
compound |
n/a |
|
|
miOverrideCaustics
(oca ) |
bool |
false |
|
|
|
miCausticAccuracy
(caa ) |
short |
64 |
|
|
|
miCausticRadius
(car ) |
float |
0 |
|
|
|
miOverrideGlobalIllumination
(ogi ) |
bool |
false |
|
|
|
miGlobillumAccuracy
(gia ) |
short |
64 |
|
|
|
miGlobillumRadius
(gir ) |
float |
0 |
|
|
|
miOverrideFinalGather
(ofg ) |
bool |
false |
|
|
|
miFinalGatherRays
(fry ) |
integer |
1000 |
|
|
|
miFinalGatherMinRadius
(fmn ) |
float |
0 |
|
|
|
miFinalGatherMaxRadius
(fmx ) |
float |
0 |
|
|
|
miFinalGatherFilter
(ffi ) |
short |
1 |
|
|
|
miFinalGatherView
(fgv ) |
bool |
false |
|
|
|
miOverrideSamples
(oos ) |
bool |
false |
|
|
|
miMinSamples
(mins ) |
short |
0 |
|
|
|
miMaxSamples
(maxs ) |
short |
2 |
|
|
|
miFinalGatherCast
(fgc ) |
bool |
true |
|
|
|
miFinalGatherReceive
(fge ) |
bool |
true |
|
|
|
miTransparencyCast
(tpc ) |
bool |
true |
|
|
|
miTransparencyReceive
(tpr ) |
bool |
true |
|
|
|
miFrameBufferWriteOperation
(mifo ) |
enum |
1 |
|
|
miFrameBufferWriteFlags
(mifl ) |
integer |
0 |
|
|
miFrameBufferWriteFactor
(miff ) |
float |
1.0 |
|
|
outputHair
(oh ) |
vectorArray |
empty |
|
|
outputRenderHairs
(orh ) |
hairRenderInfo |
NULL |
|