Воксельная игра в браузере
Blocks Beyond The Stars работает не только как программа для Windows и Linux, но и прямо в браузере — без установки, достаточно одного клика на портале. Путь к этому оказался поучительнее, чем мы ожидали.
Unity WebGL — это отдельный мир. Unity давно умеет экспортировать для веба, но дьявол кроется в деталях. Наш самый большой камень преткновения: в браузере нет настоящих фоновых потоков, как в нативной сборке. Наша система рельефа обычно строит сетки ландшафта асинхронно в фоне — и в браузере именно это приводило к тому, что игроки проваливались сквозь землю при посадке: коллизия ещё не успевала построиться, а персонаж уже стоял там. Решение: в WebGL сетка строится синхронно. Чуть менее изящно, зато в пустоту больше никто не падает.
Глубокие ссылки вместо диалога подключения. Никто не хочет вводить адрес сервера в браузере. Поэтому портал создаёт ссылки, в которых зашит ID мира и короткоживущий токен входа (действует 10 минут) — кликнул, ввёл имя, играешь.
Планшеты стали сюрпризом. Как только игра заработала в браузере, планшеты появились сами собой. Так что мы добавили сенсорное управление: виртуальные стики, взаимодействие касанием и несколько особенностей браузеров (ключевое слово: сенсорные события, которые ведут себя иначе, чем события мыши).
Чего браузерная сборка намеренно не умеет: это быстрая точка входа, а не полная версия. Нативная игра остаётся лучшим вариантом — больше дальность прорисовки, выше производительность, все функции. Но для «эй, смотри, это наша игра» ссылка вне конкуренции.
Комментарии