"Объясняю каждую строчку" - ровно середина пути

250-ый стрим, к которому я таки доделал середину игры, приходится на мой день рождения. Так что, те, кто следил за мной ради результатов - сегодня ваш день. 250-ый стрим исключительно про результаты. Никакой занудной работы. Почти ежемесячный отчёт, в котором я расскажу о том, что добавилось, и расскажу, где можно будет посмотреть, что получилось.

У этого скриншота странные пропорции. А ещё время уровня по другому рисуется. Подробности в статье.
У этого скриншота странные пропорции. А ещё время уровня по другому рисуется. Подробности в статье.

Что было перед прошлым отчётом?

У нас был полностью готов третий акт. На луне из сыра нас теперь ждёт босс.

Что изменилось?

Ну, не так уж и мало. Назовём эти изменения Quality of service.

Первое. То самое Resolution independency. Теперь и на 4К, и на том, что раньше называлось HD мы видим одно и тоже. Пропорции и часть уровня под наблюдением игрока неизменны. Да, чёрные полосочки в наличии. Какая же пропорция взята за основу? О-о-о-о-ох... Чуть попозже.

Второе. Настройки громкости звука и музыки. Чтобы они у нас появились, нам понадобился отдельным пункт в главном меню. Надеюсь, очевидно, что это настройки.

"Объясняю каждую строчку" - ровно середина пути
По поводу разрешения...<br />
По поводу разрешения...

Третье. Теперь, вы можете выбрать предпочитаемый девайс. Клавомышь или геймпад? Какая разница, если у тебя нет геймпада? Игра заботливо переключит тебя на клавомышь, если геймпад не найдётся. Всё ещё поддерживаются только геймпады с XInput. К сожалению, Monogame не умеет определять, подсоединена ли клавиатура. Но так как у нас только PC, это не так актуально.

Четвёртое. Уведомления. Это когда у тебя отсоединился геймпад, а игра такая "БИ-И-И-ИП!".

Пятое. Самое важное и страшное: настройка разрешения. В общем, в прошлый раз я был в раздумьях, какую пропорцию экрана взять за основу. 16:9? 4:3? 16:10? Ещё что-то? Я полез гуглить возможные варианты, и на меня высыпался ворох всякой разной экзотики. В какой-то момент я осознал, что мне лучше вернуться к корням, и поискать что-то, что было распространено в те времена, на которые я ориентируюсь.

Как тут некоторые могут помнить, я ориентируюсь на NES. И я решил поискать, как оно было на NES. И приохренел. В общем, кто там предлагал 1:1? Чувак, ты был близок. Оказалось, что эта приставка рендерит картинку в разрешении 256:240. Пропорция 16:15, чуть что. НО! Так как верх и низ экрана в те времена скруглённый, и не факт, что нижние и верхние пиксели попали бы на экран (кинескопы, там свои нюансы), то зоной безопасного рендера считается прямоугольник 256:224 пикселя. Пропорция 8:7 - золотой стандарт всех игр на NES.

Как же я решил вопрос? Так как в природе не существует, кажется, мониторов с экраном 8:7 (хотя были когда-то 5:4), то в полноэкранном режиме, у нас по любому будут чёрные полосочки по бокам. Я просто беру, и вхерачиваю отрендеренное изображение в этой пропорции в центр экрана, растягивая его так, чтобы вписалось. В оконном режиме у меня можно выбирать между разрешениями прямо пропорциональными тому самому 256:224, пока они ещё влезают на экран. Да, в оконном и полноэкранном режиме вы выбираете разные разрешения.

Так как я разрабатывал игру долгое время с разрешением 1024:768, то за основу, которую я потом растягиваю/сжимаю до выбранного, я взял 1024:896 (четырёхкратное увелечение оригинального изображения с NES). Как вот так.

Шестое. Время прохождения уровня теперь рисуется не ариалом, а красивыми циферками.

Седьмое. Мне не очень нравилось, что уровни у меня просто начинаются и кончаются вот так вот без всякого намёка на то, что сейчас происходит. И я начал решать этот вопрос. Пока что решил вопрос с началом уровня. Я выбрал путь, который требует больше рисования, чем кода. Просто показывать картинку перед началом уровня. Как выяснилось, зря. Тыкать пиксели я уже немного придрочился, но когда понадобилось рисовать что-то похожее на настоящий пейзаж...

Мост из уровня 1-2. Типа вид сверху, но под наклоном.<br />
Мост из уровня 1-2. Типа вид сверху, но под наклоном.

Что дальше?

Дальше я буду праздновать свою днюху. 7 июля, в 21:00 мой день рождения совпадёт с юбилейным, 250-ым стримом. Где я покажу всё, что у меня есть. Потыкаюсь в менюшке и пройду все уровни с 1-1 по 3-4. Залетайте!

А потом уровни 4-Х. Что там будет? Понятия не имею. Буду устраивать консилиум со зрителями. Надо что-то не слишком тривиальное, но и такое, чтобы не задолбался рисовать.

Традиционные ссылки

Скачать и поиграть (никаких гарантий, возможно потребуются какие-то редисты для Monogame, .NET Core и прочего).

Канал на ютубе, паблик вк, дискорд-сервер:

А если вы хотите прям максимально со всем разобраться, то вот плей-лист и репозиторий на Гитхабе. Опять, таки, без всяких гарантий.

Ну и ещё разок. 7 июля, среда, 21:00 по Москве.

3434
4 комментария

Ты конечно человек-кремень. Помню как смотрел немного из 1 стрима и думал, что надолго тебя не хватит.

4
Ответить

Комментарий недоступен

Ответить

Что за игра-то?

Ответить

Top-down shooter. С закосом под ретро. Так как рисовать вообще не умею. И потому что иногда это делает разработку веселее.

Ответить