Форум

Рывки при управлении клавиатурой в MS Edge

08 февраля 2017 14:12
В моем приложении с управлением от первого лица обнаружились рывки при управлении клавиатурой. Проявляются только в MS Edge. При этом mouselook без рывков. Далее попробовал посмотреть сцену в Preview, там тоже смещение камеры клавиатурой с рывками, а мышкой нормально.
Это баг или возможны какие-нибудь настройки?
08 февраля 2017 14:26
Добрый день.

Скорее всего дело в том, что в Edge имеются проблемы с воркерами, можно попробовать запустить физику в том же потоке, что и графика. Для этого надо передать в m_app.init
physics_use_workers : false,

Возможно это поможет, но это точно приведёт к падению fps
Разработчик Blend4Web
08 февраля 2017 15:45
Спасибо за быстрый ответ!

Действительно, стало лучше, но проблема совсем не исчезла. Теперь рывков нет, но иногда имеется эффект, образно говоря, "залипания" клавиш. Например, жму вперед, потом отпускаю, а камера продолжает ехать вперед. Это происходит не всегда.

Если вместо клавиатуры сделать управление через визуальные кнопки "Вперед, Назад, Влево, Вправо", чтобы щелкать по ним мышкой, это решит проблему? Меня такой вариант возможно устроил бы.
08 февраля 2017 16:11
Думаю, что это надо тестировать. У меня не получилось воспроизвести подобное поведение на нашем ПК с Win10. Не могли бы вы сказать, как именно вы навешиваете управление на персонажа? Имею ввиду, чтобы он перемещался
Разработчик Blend4Web
08 февраля 2017 16:25
У меня тоже Win10.

Код взял из Вашего урока по созданию FP.
08 февраля 2017 18:39
Он там менялся очень сильно недавно, сейчас там просто вызывается одна функция для настройки персонажа (в версии, которая в последнем SDK). В любом случае, я ещё потестирую персонажа перед релизом на указаном браузере
Разработчик Blend4Web
02 марта 2017 19:37
У меня данные "залипания" даже на хроме наблюдаются в двух случаях:
1. Сильно загруженная сцена
2. Много сцен в динамической загрузке.
Коплю деньги на коммерческий B4W.
03 марта 2017 12:29
1. Сильно загруженная сцена
2. Много сцен в динамической загрузке.

Скорее всего, проблема в синхронизации физического мира с графическим при сильной загрузке ЦП. Попробуйте постестить всё в одном потоке (в init есть для этого конфиг, physics_use_workers : false). FPS сильно просядет, зато оба мира будут синхронно тормозить
Разработчик Blend4Web
 
Пожалуйста, зарегистрируйтесь или войдите под своей учетной записью , чтобы оставлять сообщения.