Разработчикам Rust пришлось сделать персонажей жирафами, чтобы игроки могли видеть свои ноги

Истории про то, как создают игры всегда интересны, они позволяют лучше осознать то, какой процесс стоит за нашими любимыми тайтлами, на какие ухищрения пришлось пойти разработчикам, чтобы оживить творения. Создатель Rust Гарри Ньюман рассказал в блоге, что он долгое время хотел включить в сурвайвал возможность поворачивать камеру и видеть ноги виртуального персонажа, вместо того, чтобы летать в пространстве, как это работает в большинстве игр. 

Однако нельзя просто взять и показать модель персонажа при повороте камеры вниз. Как объяснил Ньюман, в Rust есть скелет, на который привязана модель персонажа, что позволяет видеть свою тень. Команда разработчиков хотела показать тело персонажа, но для этого требуется манипулировать костями, что приводит к кошмарному отображению тени.

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

По сути, мы сделали базовую копию модели с вида от третьего лица (она отбрасывает тени) и отдельно манипулировали костями. Манипуляция не представляет ничего сложного, просто позволяет разместить объект за пределами камеры. 

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

Так и родился человек-жираф, которого можно увидеть со стороны. Правда, игроки этого сами не заметят, потому что  на стороне клиента модель рендерится нормальным образом.

Такова специфика разработки видеоигр. Порой, очевидные вещи, требуют неочевидных решений.

Больше статей на Shazoo
Тэги: