Interface IBlendShapeProviderBulk
- Namespace
- Uralstech.AvLoader.Capabilities
Provides allocation-free bulk access to blendshape channels.
public interface IBlendShapeProviderBulk : IBlendShapeProvider, ICapability
- Inherited Members
- Extension Methods
Remarks
The semantic meaning of channels (e.g. expressions vs mesh blendshapes) is implementation-defined and should be determined via additional capability interfaces such as IAvatarExpressionProvider or IMeshBlendShapeProvider.
Methods
GetWeights(ReadOnlySpan<string>, Span<float>)
Retrieves the weights of the specified blendshape channels into the provided buffer.
void GetWeights(ReadOnlySpan<string> names, Span<float> weights)
Parameters
namesReadOnlySpan<string>weightsSpan<float>
Remarks
For channel names that do not exist, the corresponding output value is set to zero.
SetWeights(ReadOnlySpan<string>, ReadOnlySpan<float>)
Sets the weights of the specified blendshape channels.
int SetWeights(ReadOnlySpan<string> names, ReadOnlySpan<float> weights)
Parameters
namesReadOnlySpan<string>weightsReadOnlySpan<float>
Returns
- int
The number of weights successfully applied.
Remarks
Channel names that do not exist are ignored; the return value indicates how many weights were applied.
SetWeights(ReadOnlySpan<(string name, float weight)>)
Sets multiple blendshape weights using name–value pairs.
int SetWeights(ReadOnlySpan<(string name, float weight)> values)
Parameters
valuesReadOnlySpan<(string name, float weight)>
Returns
- int
The number of weights successfully applied.
Remarks
Channel names that do not exist are ignored; the return value indicates how many weights were applied.