Unity - Как добавить исходный код во время выполнения в ParentConstraint - PullRequest
0 голосов
/ 08 мая 2019

Как я могу добавить GameObject (или Transform -> object.transform) к родительскому компоненту ограничения во время выполнения?https://docs.unity3d.com/ScriptReference/Animations.ParentConstraint.html

В Инспекторе Unity показывает, что компонент «Родительский контроль» принимает преобразование в качестве источника, как показано на рисунке ниже.В коде ParentConstraint.AddSource требуется объект ConstraintSource.Но пытаясь сделать это в коде, он жалуется, что constraintSource не может быть Transform

! https://drive.google.com/open?id=1YOdCQj6MWKgZkgfkaw0DDV5SlI_Apd35

ConstraintSource mySource = m_RealObjOnPlane.transform;//error - can't convert Transform to Animations.ConstraintSource

Xaxis.GetComponent<ParentConstraint>().AddSource(mySource);//AddSource only takes a ConstraintSource 

Ожидается, что я смогу изменить источник родительских элементов управления во время выполнения

1 Ответ

1 голос
/ 08 мая 2019
ConstraintSource constraintSource;
void Start()
{
    var go = new GameObject("Source");

    var cube = GameObject.CreatePrimitive(PrimitiveType.Cube);
    var parentConstraint = cube.AddComponent<ParentConstraint>();
    constraintSource.sourceTransform = go.transform;
    parentConstraint.AddSource(constraintSource);
}

Так что в вашем случае это должно быть что-то вроде этого

mySource.sourceTransform = m_RealObjOnPlane.transform;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...