Gamedev Artyom Kaleev
8 546

Как LEGO Star Wars устроена за кадром

С комментариями от разработчика.

В закладки
Аудио

Больше всего секретов разработчики оставляют в тех играх, где есть фиксированная камера. Silent Hill, Persona 5 — почти везде за кадром можно найти некоторые странности, от пасхалок до невырезанного контента и постановочных приёмов.

Пользователь YouTube под ником Shesez опубликовал очередной выпуск Boundary Break — рубрики, где разбирается «закульсье» видеоигр. На этот раз с комментариями Джона Бёртона — руководителя разработки LEGO Star Wars и автора популярного геймдев-канала GameHut. Выбрали самое интересное.

В «хабе», где игрок выбирает уровень для прохождения, за одной из дверей спрятан снеговик — в обычных условиях заметить его никак нельзя.

Джон Бёртон это связывает с игрой LEGO про Индиану Джонса.

Я смутно помню, но мне кажется, что это связано с одной запланированной локацией для LEGO Indiana Jones. В игре снеговик должен был загораживать путь к бонусному уровню, но в конце концов у нас не было возможности его сделать. [...] Я думаю, это снеговик, потому что уровень должен был происходить в Непале.

Джон Бёртон
глава разработки игр LEGO

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

Настоящее лицо

Со всеми остальными NPC со шлемами ситуация та же. У штурмовиков есть голова — правда, у неё странная текстура.

У Джанго Фетта вообще всё странно: под шлемом находится голова с настоящей текстурой лица персонажа, однако она почему-то развёрнута назад.

Если заглянуть внутрь Йоды, то так его голова выглядит немного жутко — видны текстуры зубов. В самой игре их редко когда можно заметить.

В твиттере у Shesez спросили, кто в таверне выстрелил первым — Гридо или Хан Соло. Выяснилось, что всё же Соло.

Когда лазер попадает в Гридо, можно поймать момент, где его торс «раздваивается». При попадании отваливается деталь его тела — в этот момент модель полного Гридо сменяется на частичную, а торс отлетает в сторону. На доли секунды видны обе детали одновременно.

Под уровнями часто можно найти серые коробки — странные объекты, используемые разработчиками. Они встречаются и во многих других играх, и далеко не всегда понятно, какую функцию они выполняют.

Джон Бёртон объяснил их предназначение в LEGO Star Wars. Дело в том, что это так называемые «специальные объекты» — сущности, работающие не согласно стандартному коду движка, а по особым правилам.

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

В других случаях с помощью серых коробок двигались массивные объекты — например, космический корабль. По словам Бёртона, в такие моменты коробки помогали программистам прописывать поведение нужных предметов. Чтобы управлять огромным звездолётом в катсцене, было достаточно «сдвинуть» связанный с ним маленький куб.

Часто подобные объекты служат стандартным барьером — как, например, в уровне на Дагобе, где игра не даёт проплыть по воде, пока Люк не решит определённую головоломку.

Так в игре выглядят некоторые уровни, если почти максимально отдалить камеру.

Конечно, Звезда смерти смоделирована не вся, а лишь небольшой её кусок.

LEGO Star Wars использует любопытное построение катсцен. Все локации и объекты внутри сцены находятся в одном месте — персонажи «оживают», как только на них сменяется ракурс. Игра не подгружает дополнительные куски карты с новыми «комнатами», а в одной локации могут стоять сразу три Люка Скайуокера сразу.

Пока Люк борется с чудовищем в пещере, сверху ожидают своей очереди другие модели

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

Но в целом LEGO Star Wars использует стандартные для игр приёмы — оптические иллюзии. Например, когда Люк и Оби-Ван смотрят с горы на Татуин, сами персонажи на самом деле летают в воздухе — а почти что плоская текстура планеты расположена где-то вдали.

А сами уровни в катсценах по понятным причинам не проработаны за пределами ракурса.

Под плавником рыбы, который Люк видит над поверхностью воды, ничего нет.

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

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

#starwars #lego #закадром #опыт #разборы

{ "author_name": "Artyom Kaleev", "author_type": "editor", "tags": ["\u0437\u0430\u043a\u0430\u0434\u0440\u043e\u043c","\u0440\u0430\u0437\u0431\u043e\u0440\u044b","lego","\u043e\u043f\u044b\u0442","starwars"], "comments": 19, "likes": 137, "favorites": 100, "is_advertisement": false, "subsite_label": "gamedev", "id": 41021, "is_wide": true, "is_ugc": false, "date": "Tue, 26 Feb 2019 18:56:48 +0300" }
{ "id": 41021, "author_id": 17412, "diff_limit": 1000, "urls": {"diff":"\/comments\/41021\/get","add":"\/comments\/41021\/add","edit":"\/comments\/edit","remove":"\/admin\/comments\/remove","pin":"\/admin\/comments\/pin","get4edit":"\/comments\/get4edit","complain":"\/comments\/complain","load_more":"\/comments\/loading\/41021"}, "attach_limit": 2, "max_comment_text_length": 5000, "subsite_id": 64954, "last_count_and_date": null }

19 комментариев 19 комм.

Популярные

По порядку

Написать комментарий...
35

Обожаю такие материалы! Спасибо автору. Создатели лего игр в былые времена сделали крутую игру Toy Story. Игра была сложная, но очень фановая и поражала графически на Sega Mega Drive

Ответить
7

и поражала графически на Sega Mega Drive

В звуковом плане там вообще взрыв мозга. У них какой-то программист заморочился и сделай отдельный драйвер, микширующий трекерную .MOD музыку в один канал и преобразующий её для воспроизведения на обычном внутреннем ЦАП. Зачем? Просто потому что мог, лол. Genesis does what Nintendon't.

Ответить
24

Чёт напомнило

Ответить
23

кто в таверне выстрелил первым — Гридо или Хан Соло. Выяснилось, что всё же последний.

Не самый удачный выбор слов

Ответить
15

Под уровнями часто можно найти серые коробки — странные объекты, используемые разработчиками. Они встречаются и во многих других играх, и далеко не всегда понятно, какую функцию они выполняют.

Из нового вот как то в Антеме такую нашел
Это так чтобы хоть где-то моя находка пришлась кстати)

Ответить
–25

Не могу воспринимать игры Лего как что то стоящее внимания

Ответить
–19

Короче игры Лего говно

Ответить
–2

Какая ценность у этих видосов? Интересующиеся итак знают, что в играх всегда что-то доделывают костылями на велосипедах, не интересующиеся и не поймут особо ничего.

Ответить
1

Какой смысл играть в игру, если достаточно прочитать правила?

Ответить
–1

Тупее примера придумать не мог?

Ответить
1

А что поделать, если человек не помнит о "лучше один раз увидеть, чем семь раз услышать".

Ответить
–1

Читай внимательнее мой первый коммент. Очень внимательно прочти, вникай в каждое слово.

Ответить
0

Интересная статья, спасибо!

Ответить
0

Он этот камхак на пк использовал?
А скачать его где-то можно?

Ответить
0

Скорее всего использовал CheatEngine.

Ответить
0

Обожаю материалы про "костыли" разработчиков. Прямо шик

Ответить
0

Это не Lego Star Wars, а Lego Star Wars: Complete Saga

Ответить
0

Прямой эфир

[ { "id": 1, "label": "100%×150_Branding_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox_method": "createAdaptive", "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfl" } } }, { "id": 2, "label": "1200х400", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfn" } } }, { "id": 3, "label": "240х200 _ТГБ_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fizc" } } }, { "id": 4, "label": "240х200_mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "flbq" } } }, { "id": 5, "label": "300x500_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfk" } } }, { "id": 6, "label": "1180х250_Interpool_баннер над комментариями_Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "ffyh" } } }, { "id": 7, "label": "Article Footer 100%_desktop_mobile", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjxb" } } }, { "id": 8, "label": "Fullscreen Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjoh" } } }, { "id": 9, "label": "Fullscreen Mobile", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjog" } } }, { "id": 10, "label": "Native Partner Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyb" } } }, { "id": 11, "label": "Native Partner Mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyc" } } }, { "id": 12, "label": "Кнопка в шапке", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fdhx" } } }, { "id": 13, "label": "DM InPage Video PartnerCode", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox_method": "createAdaptive", "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "flvn" } } }, { "id": 14, "label": "Yandex context video banner", "provider": "yandex", "yandex": { "block_id": "VI-250597-0", "render_to": "inpage_VI-250597-0-1134314964", "adfox_url": "//ads.adfox.ru/228129/getCode?pp=h&ps=clmf&p2=fpjw&puid1=&puid2=&puid3=&puid4=&puid8=&puid9=&puid10=&puid21=&puid22=&puid31=&puid32=&puid33=&fmt=1&dl={REFERER}&pr=" } }, { "id": 15, "label": "Плашка на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byudo", "p2": "ftjf" } } }, { "id": 17, "label": "Stratum Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fzvb" } } }, { "id": 18, "label": "Stratum Mobile", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fzvc" } } } ]
Уве Болл вернулся в кино
и начал экранизировать flash-игры
Подписаться на push-уведомления