Unity на Xbox One - Иллюзия движения камеры / жесткого тела
Это опубликовано здесь, так как это специфично для Xbox, но я также публикую это на форумах Unity.
При тестировании моей игры Unity на Xbox One я получаю очень большое визуальное "дрожание" от мяча. Это игра в скелет, где вы управляете движением мяча. По сути, суть движения похожа на уроки по роллерболу. На ПК это работает нормально и ощутимых дрожаний нет. Тем не менее, на Xbox, я вижу это гораздо больше. Объект перемещается на большие расстояния, а камера плавно следит за ним. Ни один из других объектов или пейзажей не затронут, на самом деле я думаю, что сама камера движется идеально. Но сам мяч, похоже, дает сбой.
Изменение моего движения камеры на LateUpdate, казалось, максимально уменьшило его на ПК, но это не имеет смысла для меня, так как я все еще не уверен, что проблема в камере.
Любая помощь будет принята с благодарностью. Возможно, качество настройки не очень хорошее для Xbox?
Спасибо! Ник
2 ответа
Имейте в виду, что тактовая частота процессора на Xbox, вероятно, намного медленнее, чем на вашем ПК (хотя ядер больше).
Unity в основном однопоточный, что может объяснить разницу в производительности. Вот некоторые вещи, которые вы можете попробовать: * Убедитесь, что вы используете сборку "Master" на Xbox. По умолчанию используется "Debug", что значительно медленнее. * Возможно, это что-то с физикой.
После того, как вы проверите, чтобы убедиться, что вы не запускаете Debug, следующим шагом будет использование профилировщика Unity, чтобы увидеть, на что тратится ваше время кадра, а затем в зависимости от причины оптимизировать эту часть.
Вот дополнительная информация о системных ресурсах: https://docs.microsoft.com/en-us/windows/uwp/xbox-apps/system-resource-allocation
Здесь также есть отличный пост о графическом отладчике: https://tarhik.wordpress.com/2017/09/04/antimatter-instance-dev-log-entry-2-using-microsofts-graphic-debugger/
Похоже, переключение RigidBody на использование "Extrapolate" вместо "Interpolate" устранило проблему, которую я видел. Я не уверен, работает ли это для каждой ситуации, но для масштаба уровней и физики игрока в моей игре это, похоже, помогло.