mirror of
https://github.com/bdunderscore/modular-avatar.git
synced 2025-04-11 23:19:00 +08:00
Use VRCParentConstraint instead of constraint hack
for world fixed objects when available
This commit is contained in:
parent
91b4414e60
commit
7a1637f4ce
@ -86,6 +86,20 @@ namespace nadena.dev.modular_avatar.core.editor
|
|||||||
obj.transform.localRotation = Quaternion.identity;
|
obj.transform.localRotation = Quaternion.identity;
|
||||||
obj.transform.localScale = Vector3.one;
|
obj.transform.localScale = Vector3.one;
|
||||||
|
|
||||||
|
#if MA_VRCSDK3_AVATARS_3_7_0_OR_NEWER
|
||||||
|
var constraint = obj.AddComponent(
|
||||||
|
System.Type.GetType("VRC.SDK3.Dynamics.Constraint.Components.VRCParentConstraint, VRC.SDK3.Dynamics.Constraint")
|
||||||
|
) as VRC.Dynamics.ManagedTypes.VRCParentConstraintBase;
|
||||||
|
constraint.IsActive = true;
|
||||||
|
constraint.Locked = true;
|
||||||
|
constraint.AffectsPositionX = true;
|
||||||
|
constraint.AffectsPositionY = true;
|
||||||
|
constraint.AffectsPositionZ = true;
|
||||||
|
constraint.AffectsRotationX = true;
|
||||||
|
constraint.AffectsRotationY = true;
|
||||||
|
constraint.AffectsRotationZ = true;
|
||||||
|
constraint.FreezeToWorld = true;
|
||||||
|
#else
|
||||||
var constraint = obj.AddComponent<ParentConstraint>();
|
var constraint = obj.AddComponent<ParentConstraint>();
|
||||||
constraint.AddSource(new ConstraintSource()
|
constraint.AddSource(new ConstraintSource()
|
||||||
{
|
{
|
||||||
@ -96,6 +110,7 @@ namespace nadena.dev.modular_avatar.core.editor
|
|||||||
constraint.locked = true;
|
constraint.locked = true;
|
||||||
constraint.rotationOffsets = new[] {Vector3.zero};
|
constraint.rotationOffsets = new[] {Vector3.zero};
|
||||||
constraint.translationOffsets = new[] {Vector3.zero};
|
constraint.translationOffsets = new[] {Vector3.zero};
|
||||||
|
#endif
|
||||||
|
|
||||||
_proxy = obj.transform;
|
_proxy = obj.transform;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user