47

Костыли и пиксели #14

Серия Костыли и пиксели

Всем привет! В 14-м выпуске предлагаю вылезти из тесных коридоров и посмотреть, как разработчики справляются с по-настоящему гигантскими пространствами.

Главная боль любой игры про космос — это ошибка округления координат (Floating-point precision loss). Память не резиновая. Пока вы топчетесь в центре карты, движок знает позицию объектов вплоть до миллиметра. Но стоит улететь на пару миллионов километров, и цифры становятся слишком большими. На точные дроби памяти уже не хватает, и движок начинает грубо округлять значения. Из-за этого 3D-модели прямо на ходу начинает трясти, физика ломается, а персонаж может просто выпасть сквозь пол.

Переписывать фундамент движка ради этого слишком долго и дорого, поэтому программисты используют изящный костыль — "плавающую точку начала координат" (Floating Origin). Суть обмана проста: в дальних путешествиях ваш герой на самом деле никуда не летит.

Очень наглядно это работает в Outer Wilds. Игра симулирует целую солнечную систему с честной физикой орбит. Если бы корабль просто летел от центра карты к краю, погрешность в вычислениях быстро разорвала бы его на куски. Поэтому игра делает финт ушами: как только вы отлетаете от центра на опасное расстояние, движок незаметно сбрасывает ваши координаты обратно в абсолютный ноль (0,0,0), где математика снова работает безупречно. И в ту же миллисекунду берет вообще всё — планеты, кометы, солнце — и сдвигает к вам на это же расстояние.

А главное, игрок этих скачков вообще не замечает. Получается, что при долгих перелетах корабль просто висит на месте, а игра тащит всю остальную вселенную ему навстречу.

А вот если на эту проблему забить, получатся знаменитые "Далекие земли" (Far Lands) из старых версий Minecraft. Если игрок уходил слишком далеко от точки старта, математике просто срывало крышу от гигантских чисел. Генерация ландшафта превращалась в сюрреалистическое месиво, сквозь которое герой проваливался в пустоту.

Выходит, чтобы подарить нам иллюзию бесконечного полета, разработчикам пришлось в прямом смысле заставить весь мир вращаться вокруг игрока.

Лига Геймеров

58.4K постов92.2K подписчиков

Правила сообщества

Ничто не истинно, все дозволено, кроме политоты, за нее пермач, идите на ютуб
Помни!
- Новостные/информационные публикации постим в pikabu GAMES
- Развлекательный контент в
Лигу Геймеров



Нельзя:

Попрошайничать;

Рекламировать;

Оскорблять участников сообщества;

Нельзя оценивать Toki Tori ниже чем на 10 баллов из 10;

Выкладывать ваши кулвидосы с только что зареганных акков - пермач

За неэтичное использование сообщества - тоже бан. Если ты выкладываешь пост в наше сообщество и получаешь стартовые плюсы от наших подписчиков, не думай, что вытаскивать потом пост в своё личное сообщество будет умным поступком.

Автор поста оценил этот комментарий
Маленькие, слишком маленькие пространства.
Знаю одну игру, Megaton Rainfall, так там реализована вся наша Солнечная система и остальной, бесконечный, но, к сожалению пустой космос, с возможностью их детального изучения.
И всё как положено - ты можешь "приземлиться" на любую планету в любой точке, увидеть ландшафт, кратеры, пролететь сквозь планетарные и астероидные пояса...
С Землёй всё ещё круче: пустыни, леса, льды, подводный мир. Есть несколько городов, с движущимися по ним людьми и автомобилями. Так ещё и инопланетян надо отстреливать.
И всё это добро весит меньше гигабайта... Что это, неужели простая подзагрузка?
раскрыть ветку (1)
2
Игры, ваха, костыли
Автор поста оценил этот комментарий

Я сейчас почитал, в игре почти нет моделей, игра процедурно все генерирует. То есть по сути это гигабайт алгоритмов. Но в этой игре тоже есть сброс координат

показать ответы

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества