[AvatarScaleMod] Implement scaled components.

implemented scaling for specific components that Avatar Scale Tool would

they conflict, if you ran your avatar through Avatar Scale Tool then the animations will add on top
This commit is contained in:
NotAKidoS 2023-06-22 23:56:01 -05:00
parent 44d5c7762b
commit e8d3183bc3
7 changed files with 367 additions and 70 deletions

View file

@ -0,0 +1,72 @@
using UnityEngine;
using UnityEngine.Animations;
namespace NAK.AvatarScaleMod;
public class ScaledAudioSource
{
public AudioSource Component { get; }
public float InitialMinDistance { get; }
public float InitialMaxDistance { get; }
public ScaledAudioSource(AudioSource component)
{
Component = component;
InitialMinDistance = component.minDistance;
InitialMaxDistance = component.maxDistance;
}
}
public class ScaledLight
{
public Light Component { get; }
public float InitialRange { get; }
public ScaledLight(Light component)
{
Component = component;
InitialRange = component.range;
}
}
public class ScaledPositionConstraint
{
public PositionConstraint Component { get; }
public Vector3 InitialTranslationAtRest { get; }
public Vector3 InitialTranslationOffset { get; }
public ScaledPositionConstraint(PositionConstraint component)
{
Component = component;
InitialTranslationAtRest = component.translationAtRest;
InitialTranslationOffset = component.translationOffset;
}
}
public class ScaledParentConstraint
{
public ParentConstraint Component { get; }
public Vector3 InitialTranslationAtRest { get; }
public List<Vector3> InitialTranslationOffsets { get; }
public ScaledParentConstraint(ParentConstraint component)
{
Component = component;
InitialTranslationAtRest = component.translationAtRest;
InitialTranslationOffsets = component.translationOffsets.ToList();
}
}
public class ScaledScaleConstraint
{
public ScaleConstraint Component { get; }
public Vector3 InitialScaleAtRest { get; }
public Vector3 InitialScaleOffset { get; }
public ScaledScaleConstraint(ScaleConstraint component)
{
Component = component;
InitialScaleAtRest = component.scaleAtRest;
InitialScaleOffset = component.scaleOffset;
}
}