Public Member Functions | |
| HRESULT | GetLength ([in] RtDWORD triangle,[in] const RtPoint *baryc_coords,[out, retval] RtFloat *pLength) |
| HRESULT | GetNormal ([in] const RtMatrixf *control_matrix, RtDWORD triangle, const RtPoint *baryc_coords,[out, retval] RtPoint *pNormal) |
| HRESULT | GetDirRandomization ([in] RtDWORD triangle,[in] const RtPoint *baryc_coords,[out, retval] RtFloat *pRandomization) |
| HRESULT | GetDensity ([in] RtDWORD triangle,[out] RtPoint *local_densities,[out, retval] RtFloat *pDensity) |
| HRESULT | GetSoftness ([in] RtDWORD triangle,[in] const RtPoint *baryc_coords,[out, retval] RtFloat *pSoftness) |
| HRESULT | GetGravityVector (RtDWORD triangle,[in] const RtPoint *baryc_coords,[out, retval] RtPoint *pGravityVector) |
| HRESULT | GetSurfacePosition (RtDWORD triangle,[in] const RtPoint *baryc_coords,[out, retval] RtPoint *pSurfacePos) |
| HRESULT | GetBaseVectors ([in] const RtMatrixf *control_matrix,[in] RtDWORD triangle,[out] RtPoint *u_base,[out] RtPoint *v_base,[out] RtFloat *surface) |
| HRESULT | LockMesh () |
| HRESULT | UnlockMesh () |
| HRESULT | SetSourceMesh ([in] IRdMesh *pMesh) |
| HRESULT | Configure ([in] IRsNode *pNode) |
| HRESULT | SetStreamData ([in] RtVertexHair *pData) |
| HRESULT | GetBottomThickness ([in] RtDWORD triangle,[in] const RtPoint *baryc_coords,[out, retval] RtFloat *pThickness) |
| HRESULT | GetTopThickness ([in] RtDWORD triangle,[in] const RtPoint *baryc_coords,[out, retval] RtFloat *pThickness) |
| HRESULT | GetProfileType ([out, retval] RtDWORD *pProfile) |
| HRESULT | GetProfileSegments ([out, retval] RtDWORD *pSegments) |
| HRESULT | GetLengthRandomization ([out, retval] RtFloat *pRandomization) |
| HRESULT | GenerateUV ([out, retval] RtBool *pGenerateUV) |
| HRESULT | LockHairStream () |
| HRESULT | UnlockHairStream () |
| HRESULT | GetArea ([in] const RtMatrixf *control_matrix,[in] RtDWORD tri_index,[out, retval] RtFloat *pArea) |
| HRESULT | GetRealtimeRatio ([out, retval] RtFloat *pRealtime) |
| HRESULT | GetOfflineRatio ([out, retval] RtFloat *pOffline) |
| HRESULT | GetCurliness ([out, retval] RtFloat *pCurliness) |
| HRESULT | GetTextureSegments ([out, retval] RtDWORD *pTexSegments) |
| HRESULT | GetCollisionsEnabled ([out, retval] RtBool *pEnabled) |
| HRESULT | GetColorTexture ([out, retval] IRdBitmap **ppBitmap) |
| HRESULT IRsHairParameterProvider::GetLength | ( | [in] RtDWORD | triangle, | |
| [in] const RtPoint * | baryc_coords, | |||
| [out, retval] RtFloat * | pLength | |||
| ) |
Returns local strand length at given point in given face triangle.
| triangle | [in] Triangle index. | |
| baryc_coords | [in] Barycentric coordinates of point in triangle. |
| HRESULT IRsHairParameterProvider::GetNormal | ( | [in] const RtMatrixf * | control_matrix, | |
| RtDWORD | triangle, | |||
| const RtPoint * | baryc_coords, | |||
| [out, retval] RtPoint * | pNormal | |||
| ) |
Returns local normal at given point in given face triangle.
| control_matrix | [in] . | |
| triangle | [in] Triangle index. | |
| baryc_coords | [in] Barycentric coordinates of point in triangle. |
| HRESULT IRsHairParameterProvider::GetDirRandomization | ( | [in] RtDWORD | triangle, | |
| [in] const RtPoint * | baryc_coords, | |||
| [out, retval] RtFloat * | pRandomization | |||
| ) |
Returns direction randimization ratio for specified mesh surface point.
| triangle | [in] Triangle index. | |
| baryc_coords | [in] Barycentric coordinates of point in triangle. |
| HRESULT IRsHairParameterProvider::GetDensity | ( | [in] RtDWORD | triangle, | |
| [out] RtPoint * | local_densities, | |||
| [out, retval] RtFloat * | pDensity | |||
| ) |
Returns hair density (number of strands per unit square) for specified surface point.
| triangle | [in] Triangle index. | |
| local_densities | [out] . |
| HRESULT IRsHairParameterProvider::GetSoftness | ( | [in] RtDWORD | triangle, | |
| [in] const RtPoint * | baryc_coords, | |||
| [out, retval] RtFloat * | pSoftness | |||
| ) |
Returns strand softness for specified mesh surface point.
Softness is expressed as number of radians the strand bends per unit length.
| triangle | [in] Triangle index. | |
| baryc_coords | [in] Barycentric coordinates of point in triangle. |
| HRESULT IRsHairParameterProvider::GetGravityVector | ( | RtDWORD | triangle, | |
| [in] const RtPoint * | baryc_coords, | |||
| [out, retval] RtPoint * | pGravityVector | |||
| ) |
Returns gravity vector for specified mesh surface point. Gravity vector is expressed in world space.
| triangle | [in] Triangle index. | |
| baryc_coords | [in] Barycentric coordinates of point in triangle. |
| HRESULT IRsHairParameterProvider::GetSurfacePosition | ( | RtDWORD | triangle, | |
| [in] const RtPoint * | baryc_coords, | |||
| [out, retval] RtPoint * | pSurfacePos | |||
| ) |
Returns position of surface point.
| triangle | [in] Triangle index. | |
| baryc_coords | [in] Barycentric coordinates of point in triangle. |
| HRESULT IRsHairParameterProvider::GetBaseVectors | ( | [in] const RtMatrixf * | control_matrix, | |
| [in] RtDWORD | triangle, | |||
| [out] RtPoint * | u_base, | |||
| [out] RtPoint * | v_base, | |||
| [out] RtFloat * | surface | |||
| ) |
Returns base vectors for hair strand.
Base vectors are mutually perpendicular and are used to define space basis for hair strand.
| control_matrix | [in] Matrix used to transform the basis (i.e. for strand which is bent). | |
| triangle | [in] Face triangle index. | |
| u_base | [out] Returned U vector for base. | |
| v_abse | [out] Returned V vector for base. | |
| surface | [out] Returned calculated face surface. |
| HRESULT IRsHairParameterProvider::LockMesh | ( | ) |
Locks mesh streams needed for detemining the hair parameters.
| HRESULT IRsHairParameterProvider::UnlockMesh | ( | ) |
Unlocks previously locked mesh streams.
| HRESULT IRsHairParameterProvider::SetSourceMesh | ( | [in] IRdMesh * | pMesh | ) |
Sets the mesh which will serve as source for parameters. This mesh needs to have hair stream attached.
| pMesh | [in] Mesh to set. |
| HRESULT IRsHairParameterProvider::Configure | ( | [in] IRsNode * | pNode | ) |
Reads all global parameters from specified hair node.
| pNode | [in] Node to read data from. |
| HRESULT IRsHairParameterProvider::SetStreamData | ( | [in] RtVertexHair * | pData | ) |
Sets the mesh vertex stream data.
| pData | [in] Hair stream data. |
| HRESULT IRsHairParameterProvider::GetBottomThickness | ( | [in] RtDWORD | triangle, | |
| [in] const RtPoint * | baryc_coords, | |||
| [out, retval] RtFloat * | pThickness | |||
| ) |
Gets the bottom thickness of strand at specified location.
| triangle | [in] Triangle index. | |
| baryc_coords | [in] Barycentric coordinates of point in triangle. |
| HRESULT IRsHairParameterProvider::GetTopThickness | ( | [in] RtDWORD | triangle, | |
| [in] const RtPoint * | baryc_coords, | |||
| [out, retval] RtFloat * | pThickness | |||
| ) |
Gets the thickness of strand at tip at specified location.
| triangle | [in] Triangle index. | |
| baryc_coords | [in] Barycentric coordinates of point in triangle. |
| HRESULT IRsHairParameterProvider::GetProfileType | ( | [out, retval] RtDWORD * | pProfile | ) |
Gets current profile type which is one of value of RtHairProfileType.
| HRESULT IRsHairParameterProvider::GetProfileSegments | ( | [out, retval] RtDWORD * | pSegments | ) |
Gets the number of segments per hair strand.
| HRESULT IRsHairParameterProvider::GetLengthRandomization | ( | [out, retval] RtFloat * | pRandomization | ) |
Gets the length randomization ratio (0=0%, 1=100%).
1 means that hair strands can have zero length or can be twice as long as normal.
| HRESULT IRsHairParameterProvider::GenerateUV | ( | [out, retval] RtBool * | pGenerateUV | ) |
Returns the status flag of UV generator for hair strand.
If false returned, no UV for hair mesh are generated.
| HRESULT IRsHairParameterProvider::LockHairStream | ( | ) |
Locks only hair stream of input mesh.
| HRESULT IRsHairParameterProvider::UnlockHairStream | ( | ) |
Unlocks hair stream of input mesh.
| HRESULT IRsHairParameterProvider::GetArea | ( | [in] const RtMatrixf * | control_matrix, | |
| [in] RtDWORD | tri_index, | |||
| [out, retval] RtFloat * | pArea | |||
| ) |
Returns the area of specifed mesh triangle.
| control_matrix | [in] Mesh matrix. | |
| tri_index | [in] Index of triangle. | |
| pArea | [out,retval] Returned area of triangle. |
| HRESULT IRsHairParameterProvider::GetRealtimeRatio | ( | [out, retval] RtFloat * | pRealtime | ) |
Returns ratio of real-time amount of hair rendered (0.1 means that only 10% of strands is rendered in real time).
| HRESULT IRsHairParameterProvider::GetOfflineRatio | ( | [out, retval] RtFloat * | pOffline | ) |
Returns ration of offline amount of hair rendered.
Can possibly be greater than 1. This is used for offline renders such as VRay.
| HRESULT IRsHairParameterProvider::GetCurliness | ( | [out, retval] RtFloat * | pCurliness | ) |
Gets the global hair curliness. Curliness is specified in revolutions per length.
| HRESULT IRsHairParameterProvider::GetTextureSegments | ( | [out, retval] RtDWORD * | pTexSegments | ) |
Returns number of vertical slices of texture U coordinate used for color randomization.
| HRESULT IRsHairParameterProvider::GetCollisionsEnabled | ( | [out, retval] RtBool * | pEnabled | ) |
Returns the status of collision flag.
Used to determine whether to calculate collisions of hair with control mesh.
| HRESULT IRsHairParameterProvider::GetColorTexture | ( | [out, retval] IRdBitmap ** | ppBitmap | ) |
Returns the texture used for hair coloring.
1.5.5