Как оживить результаты в Unity 5? - PullRequest
0 голосов
/ 30 ноября 2018

У объекта Unity есть объект SkinnedMeshRenderer, представляющий собой модель сетчатой ​​сетки, управляемую poseBlendValues и shapeBlendValues.Теперь у меня есть программа, которая может генерировать последовательные poseBlendValues и shapeBlendValues.Я строю модель с Unity5 и пишу скрипт для модели.В сценарии я установил объект SkinnedMeshRenderer через SetBlendShapeWeight с моими вычисленными значениями.Тем не менее, модель не деформируется, как ожидалось.Может кто-нибудь сказать мне, что не так?

Это часть моего кода, который является функцией Start, скрипт получит параметры от сервера через fetchAllParms, а затем установит параметры для модели с помощью SetBlendShapeValuesresetShapeParms() и resetPoseParms() просто очищают массивы _shapeParms и _poseParms от нуля.setShapeBlendValues() и setPoseBlendValues() просто заполните _shapeParms и _poseParms выбранными значениями.Когда я нажимаю Play, я вижу, что параметры BlendShape изменяются в Инспекторе, но модель деформируется точечно, как и ожидалось.

void Start()
{
    client = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
    _shapeParms = new float[_numShapeParms];
    _camParms = new float[_numCamParms];
    _poseParms = new float[_numPoseParms];

    resetShapeParms();
    resetPoseParms();
    fetchAllParms();
    setShapeBlendValues();

    setPoseBlendValues();


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