Параметры
mask | AvatarMask, в котором будут сохранены значения маскирования. |
Описание
Копирует текущие настройки маскирования из клипа в AvatarMask.
При написании AssetPostprocessor используйте этот метод для копирования AvatarMask из конфигурации вашего клипа, чтобы вы могли изменить его.
Примечание: вам потребуется использовать ModelImporterClipAnimation.ConfigureClipFromMask, чтобы применить AvatarMask обратно к ModelImporterClipAnimation
См. также: ModelImporterClipAnimation.ConfigureClipFromMask.
using UnityEditor;
using UnityEngine;
public class CopyAvatarMask : AssetPostprocessor
{
void OnPreprocessAnimation()
{
var modelImporter = assetImporter as ModelImporter;
//Create a new AvatarMask to edit the mask
var mask = new AvatarMask();
var clips = modelImporter.clipAnimations;
//Acquire the mask from the clip
clips[0].ConfigureMaskFromClip(ref mask);
//Filter out the first non-root (0) bone
mask.SetTransformActive(1, false);
//Apply the mask back to the clip
clips[0].ConfigureClipFromMask(mask);
//Apply the clips back to the ModelImporter
modelImporter.clipAnimations = clips;
//Destroy the AvatarMask since we're not using it anymore
Object.DestroyImmediate(mask);
}
}