Срединное царство
RU

Дневник

32×16: весь город нарисован заново, вчетверо подробнее

25 октября 2026 года у «Срединного царства» появился новый уровень детализации. Вблизи каждая клетка карты теперь 32 символа в ширину и 16 в высоту: 512 символов там, где у 16×8 было 128. Под неё заново нарисованы все постройки пяти династий, земля, вода, деревья и каждый житель — и всё это по-прежнему текст.

Улица вблизи, клеткой 32×16 символов: дома под черепицей и соломой, колодец, красное святилище и кипарисы — всё текстом
Улица вблизи, клеткой 32×16 символов: дома под черепицей и соломой, колодец, красное святилище и кипарисы — всё текстом

Зачем рисовать всё заново

Переход с 10×5 на 16×8 дал городу окна, ставни и ряды черепицы. Но стоило приблизить камеру, и рисунок 16×8 просто увеличивался: каждый символ становился крупным пятном, и подробности на улице кончались ровно там, куда игрок смотрит дольше всего. Поэтому у ближних масштабов появилась своя клетка, 32×16, и рисунки под неё.

Рисунки — настоящие символы, а не картинка, запечённая из них. Это правило было с самого начала, и благодаря ему всё, что работает с текстом, работает и здесь: день и ночь, волна фонарей в сумерках, дождь и снег, тени, а «Покажи символы» и снимок в .txt теперь отдают и символы 32×16.

Тот же город и та же камера: слева 16×8, справа 32×16.
Квартал с обложки на настройке «Только 16×8»: та же камера, вчетверо меньше символов
Квартал с обложки на настройке «Только 16×8»: та же камера, вчетверо меньше символов

Что нарисовано заново

  • Все постройки пяти династий на всех уровнях: дома от первого шалаша до десятого уровня и знать до шестой ступени, у каждой эпохи свои
  • Памятники на всех стадиях стройки: Великая стена, Великий канал, Минтан, дворец Вэйян и Мавзолей, у которого одно основание — 160×80 символов; его ямы заполняют глиняные воины в полный рост, с головой, доспехом и ногами
  • Земля: вода, берега, грунтовые дороги и мощёная чидао, скалы и трещины засухи
  • Каждый житель со своей ношей: торговец с коромыслом и корзинами, жрец с курильницей, строитель с доской и молотком, возчик, у которого груз в цвет товара, пожарный дозорный с двумя вёдрами. Фигурка теперь ростом в десять символов, с лицом, руками и обувью
  • Войско: пехотинцы с алебардой цзи, арбалетчики, колесницы на паре коней, налётчики с топорами и конница Хань
  • Вывески: знак теперь лежит на доске в две строки, поэтому читается не мельче, чем у 16×8

Постройка, у которой рисунка 32×16 ещё нет, игру не ломает: её рисунок 16×8 увеличивается по роли каждого символа, а не превращает каждую букву в блок 2×2. Заливка повторяется, черта тянется, но остаётся толщиной в один символ, а крупный знак — окно или вывеска — ставится один раз. Тот же приём провёл игру и через переход на 16×8.

Деревья на четыре времени года

Пятнадцать пород деревьев и видов леса, по четыре варианта каждой, на каждое время года: китайская сосна с плоскими ярусами на кривом стволе, плакучая ива у воды, шелковица у полей, слива мэй с белым и розовым цветом на голых ветвях, персик, пары кипарисов у святилищ и гробниц, хурма, которая держит оранжевые плоды до зимы, дубравы и бамбуковые рощи. Осенью лист желтеет, рыжеет, буреет и опадает; зимой лиственные стоят голыми, а сосны, бамбук и кипарисы остаются зелёными под снегом. Ствол и ветви весь год те же, поэтому дерево узнаётся в любое время года. Погода и календарь, на которых это держится, — в статье о дожде, снеге и празднике весны.

Только там, где это видно глазу

Клетка 32×16 включается на каждом масштабе, где её символы на экране не мельче двух пикселей. Дальше игра рисует тот же город клеткой 16×8 — тем же цветом и примерно втрое дешевле, потому что там лишние символы вышли бы мельче пикселя. По той же причине фон меню и живая сцена этого сайта остаются в 16×8.

При первом приближении мир 32×16 вокруг камеры собирается по 6 миллисекунд за кадр, и пока он не готов, кадр рисуется клеткой 16×8. Ни долгой паузы, ни пустых кусков. Сами рисунки грузятся по эпохам, каждая — пакетом не больше 64 КБ в сжатом виде; партия, дошедшая до Хань, грузит их все, около 110 КБ.

Мир хранится только вокруг камеры

В плотном стиле каждый символ делится на мелкие штрихи, поэтому в клетке 32×16 — 4096 мелких клеток. Одним куском такой мир занял бы 98 МБ памяти на обычной карте 100×60 и 420 МБ на большой 160×160. Поэтому отрисовщик держит его страницами по 5×5 клеток, около 400 КБ каждая, и только вокруг камеры; дальние страницы отдаются и собираются заново, когда вы вернётесь. На большой карте на ближнем масштабе это 86 МБ в окне 1600×1000 — меньше, чем 100 МБ, которые мир 16×8 занимает на всю карту.

Настройка «Детализация»

Чёткость стоит кадров, поэтому выбор за вами: «Графика» → «Детализация», шесть ступеней, смена применяется сразу, без перезапуска.

  • Наибольшая: символы 32×16 почти на всех масштабах, тени полные. Самая тяжёлая
  • Высокая, по умолчанию: 32×16 везде, где их видно, на средних масштабах — тени и проход клеток проще
  • Средняя: 32×16 с масштаба покрупнее, упрощённые тени — на большем числе масштабов
  • Экономная: 32×16 только вблизи, дальше — 16×8 того же цвета
  • Только 16×8: быстрее всего; рисунки 32×16 даже не загружаются
  • Авто: начинает с высокой и опускается на ступень, если кадр за две секунды в среднем дольше 18.4 мс, и поднимается, если пять секунд подряд короче 10 мс. Каждый шаг вверх пробуется один раз, качелей нет; на экране 60 Гц «авто» только снижает

Сколько это стоит: замеры

Замер на Apple M3 Pro, высокая графика, окно 1600×1000 с плотностью пикселей 2: средний кадр при проезде через обычную карту, вместе с ожиданием видеокарты.

  • На среднем масштабе: 3.1 мс на «Высокой» против 2.8 мс на «Только 16×8»
  • Ближе: 3.1 мс на «Высокой», 2.3 мс на «Средней», 2.2 мс на «Только 16×8»
  • «Наибольшая» стоит на среднем масштабе 9.8 мс, а в окне 2560×1440 доходит до 20.3 мс и уже не держит 60 кадров в секунду. Поэтому она и не умолчание
  • До удешевления та же клетка 32×16 стоила на среднем масштабе 11.3 мс, а вся обычная карта на экране — 72 мс
  • Средняя графика при 1280×800 и плотности 1 — разрешении Steam Deck — платит за 32×16 от 0.04 до 0.37 мс

Это быстрый ноутбук, поэтому числа говорят о том, как ступени соотносятся между собой, а не о том, что будет на слабом ПК. Минимальные требования появятся на странице Steam, когда их измерят на слабых машинах; до тех пор «Экономная» и «Только 16×8» нужны ровно для этого. Почему текстовая графика вообще остаётся лёгкой, рассказано в статье о том, как мы рисуем город символами.

И в демо тоже

Демо к Steam Next Fest с первыми тремя миссиями Ся пересобрано с новым уровнем детализации. Старый вид 16×8 никуда не делся: это по-прежнему дальние масштабы и настройка «Только 16×8», а история разработки хранит его снимки рядом с версиями, при которых они сняты.

«Срединное царство» готовится к выходу в Steam для Windows, macOS и Linux. Смотрите ролики, читайте об этом в истории разработки и посмотрите этот раздел игры; для журналистов есть материалы для прессы.