Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > разработка игр, графический дизайн и моделирование > Gamedev - cоздание игр: Unity, OpenGL, DirectX
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.11.2013, 03:17   #1
Shkolota
Пользователь
 
Регистрация: 02.04.2013
Сообщений: 51
Восклицание 2D-платформеры

Здравствуйте. Интересуют идеи по поводу создания продвинутых уровней в 2D-платформарах. Примеры того, что хочется видеть:



Таким образом, интересуют платформеры с нестандартным представлением уровней, состоящих не из легко различимых ячеек подобно Mario. Допустим, моделируем объекты для уровня в 3D Max (чтобы не рисовать вручную) и затем переносим их в игру в виде изображений или набора изображений (анимация). Насколько я знаю, уровни в играх строются из ячеек - повторяющихся объектов, и это единственный вариант, который я знаю. За исключением, конечно варианта с представлением уровня в виде одного изображения. Тогда, конечно же, проблем, описываемых мною не было, но и игра занимала бы намного больше пространства на жестком диске. Ну и, конечно же, объекты на уровне были бы статичными.

Проблемы начинаются тогда, когда мы поднимаем камеру в 3D Max'е немного вверх. Тогда возникает перспектива, которая и мешает нам бесшовно соединить два объекта. Вот, что я имею в виду:



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

Как вообще могли создаваться подобные уровни для игр, представленных в первом скриншоте?
Shkolota вне форума Ответить с цитированием
Старый 14.11.2013, 09:10   #2
Гром
Старожил
 
Аватар для Гром
 
Регистрация: 21.03.2009
Сообщений: 2,193
По умолчанию

А представленное на скриншотах и есть что-то вроде Марио, только графика покрасивше. Нарисовано полностью в 2Д, Макс тут не при чем.

Уровень содержит в себе, грубо говоря, список платформ, каждая из которых имеет свое представление для физического движка - простой отрезок, заданный координатами концов (это может быть даже наклонная платформа) или прямоугольник, заданный координатами двух углов; и представление для графического - текстуру, которая рисуется так, что отрезок или верхняя сторона прямоугольника приходится примерно на середину той части текстуры, которая изображает "поверхность пола" платформы.

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

Все отличие от Марио - в том, что игровое поле создано не из блоков, а из отрезков/прямоугольников, которые имеют гораздо больше различных вариантов положения.
Простые и красивые программы - коды программ + учебник C++
Создание игры - взгляд изнутри - сайт проекта
Тема на форуме, посвященная ему же
Гром вне форума Ответить с цитированием
Старый 14.11.2013, 13:31   #3
Shkolota
Пользователь
 
Регистрация: 02.04.2013
Сообщений: 51
По умолчанию

Цитата:
Макс тут не при чем
3D Max - лишь средство для создания игровой графики. В представленных на скриншотах играх текстуры, возможно, нарисованы вручную, но это не значит, что мы не можем использовать для этих целей 3D Max.

И вопрос даже не в том, по каким поверхностям они двигаются, а...

Цитата:
только текстуры нарисованы и расположены так хитро, что создается впечатление объема
... как нарисовать такие текстуры.
Shkolota вне форума Ответить с цитированием
Старый 14.11.2013, 17:55   #4
dampirik
Форумчанин
 
Регистрация: 02.07.2009
Сообщений: 722
По умолчанию

1)
Цитата:
как нарисовать такие текстуры
тут форум программистов, а не художников...
2) если вопрос, где их взять? То фриланс или найти на долях, но вряд ли у Вас это выйдет, у меня не вышло…
3) Также вам не чего не мешает делать 3д мир с фиксированной камерой…

P.S. Гром Вам все правильно сказал, это обычные 2д спрайты качественно от рисованные.
dampirik вне форума Ответить с цитированием
Старый 14.11.2013, 17:58   #5
dampirik
Форумчанин
 
Регистрация: 02.07.2009
Сообщений: 722
По умолчанию

P.S.S. лично я пока никого не встречал кто рисует текстуры в 3д максе… :-D
dampirik вне форума Ответить с цитированием
Старый 14.11.2013, 18:25   #6
Shkolota
Пользователь
 
Регистрация: 02.04.2013
Сообщений: 51
По умолчанию

dampirik, если вы не встречали никого, кто создает текстуры в 3D Max'е, это не значит, что никто этого не делает. Для создания 2D-игр очень активно используется 3D Max, и вы даже представить не можете, в каких случаях его используют.

Цитата:
если вопрос, где их взять? То фриланс или найти на долях, но вряд ли у Вас это выйдет, у меня не вышло…
Вопрос был именно в том, как их нарисовать.

Цитата:
тут форум программистов, а не художников...
К тому же, сам процесс рисования мне известен. И вопрос не художественный, он даже более связан с программированием, чем с рисованием. А данный раздел так и называется: 'Создание и обсуждение игр'. Читайте внимательнее мой вопрос.

Меня интересуют идеи по представлению как можно более реалистичных уровней в 2D-платформерах. А это значит, что здесь замешаны и программирование, и рисование. Даже не столько рисование, сколько принципы создания графики для подобных игр. Если бы я создал тему, в которой спрашивал бы о принципах рисования графики для изометрических стратегий, разве у вас возникли бы подобные вопросы? Здесь то же самое.

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

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

Цитата:
Также вам не чего не мешает делать 3д мир с фиксированной камерой…
И вновь я посоветовал бы вам внимательнее читать вопрос. Меня интересует именно создание двухмерного платформера. Причины этому есть и очень веские, но вас посвящать в них я не буду. Создание 3D-платформера недопустимо.

Цитата:
P.S.S. лично я пока никого не встречал кто рисует текстуры в 3д максе… :-D
Не думаю, что вы сталкивались с серьезными разработчиками компьютерных игр, иначе не говорили бы подобного. В любом случае, рассматривается вариант не простой игры, типа тех, что тоннами выкладываются на этом форуме. Здесь обычные методы вряд ли подойдут.
Shkolota вне форума Ответить с цитированием
Старый 14.11.2013, 20:21   #7
dampirik
Форумчанин
 
Регистрация: 02.07.2009
Сообщений: 722
По умолчанию

Посмеялся от души :-D
Я не говорил, что для 2д игр не используется 3д макс, я сказал, что сказал!
Переубеждать Вас с Вашим то опытом, да Вы что…. Куда мне до вас, Вы наверное из Epic Games или из Blizzardа?
Вот только вопросы какие-то у Вас странные… Скажу еще раз, это обычные 2д спрайты качественно от рисованные. Само собой, вывод графики идет слоями, судя по второму слайду, вывод такой: частицы, игрок/мобы, текстура поверхности, задний фон. Задний фон двигается в медленнее чем поверхность, объяснять зачем я думаю не нужно?!
По поводу объема, не говорите чуши! Слои равноудалены от камеры, весь эффект достигается чисто визуальной составляющей, которую делает хороший художник.
В марио различимые ячейки были в первую очередь из-за железа.

Последний раз редактировалось dampirik; 14.11.2013 в 20:31.
dampirik вне форума Ответить с цитированием
Старый 14.11.2013, 21:15   #8
Shkolota
Пользователь
 
Регистрация: 02.04.2013
Сообщений: 51
По умолчанию

dampirik, да, опыта для рассуждений на подобные темы у меня достаточно, хоть я и не работаю ни в Epic Games, ни в Blizzard. И я не говорю чуши. Я думаю, что для любого, хоть немного разбирающегося в этом человека, понятно, что если речь идет об удалении слоев от камеры в 2D игре, то, скорее всего, этот эффект искусственно достигается скоростью перемещения слоев, сменой их цветовой гаммы и некоторыми другими параметрами.

Призываю вас еще более внимательно читать мои сообщения или не читать их вовсе. В своем предыдущем сообщении я ясно разделил понятия 'Воздушная перспектива' и 'Обычная перспектива', тогда как вы намешали их в одном предложении. И если с Воздушной перспективой все более-менее ясно (слои по первому представлению дают нормальный эффект Воздушной перспективы), то с Обычной дела обстоят намного хуже. Еще раз вопрос: Как стыковать два объекта (текстуры, если вам угодно), чтобы эффект перспективы не терялся? Как рисовать подобные объекты - вопрос не столько к художникам, сколько к программистам, ибо именно они задают правила для последующего рисования графики.

Цитата:
Я не говорил, что для 2д игр не используется 3д макс, я сказал, что сказал!
А я, в свою очередь, не говорил, что вы это говорили:

Цитата:
P.S.S. лично я пока никого не встречал кто рисует текстуры в 3д максе… :-D
Цитата:
dampirik, если вы не встречали никого, кто создает текстуры в 3D Max'е, это не значит, что никто этого не делает. Для создания 2D-игр очень активно используется 3D Max, и вы даже представить не можете, в каких случаях его используют.
Цитата:
Не думаю, что вы сталкивались с серьезными разработчиками компьютерных игр, иначе не говорили бы подобного.
А если говорить насчет Mario, то это совершенно иной стиль игры, и дело не в железе. Возьмем недавнюю Cave Story (если вы в нее играли) - те же различимые ячейки, тот же вид полностью сбоку, только на вполне современном железе. Стили различаются.

P.S. Кстати, фраза 'качественно отрисованные' - совершенно противоположна моему вопросу. Качество - это одно, а методы, которыми достигается эффект объема - совсем другое. И методы эти относятся не к рисованию, а к организации игры программистом. Еще раз приведу пример с изометрией. Никто, ведь, не скажет, что изометрия - это обычная 2D-графика, только качественно отрисованная. Это технология создания 2D-игр с поддержкой некоего подобия перспективы. Так же и здесь. Технология и качество рисования - совершенно разные понятия.

Последний раз редактировалось Shkolota; 14.11.2013 в 21:20.
Shkolota вне форума Ответить с цитированием
Старый 14.11.2013, 21:37   #9
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,291
По умолчанию

Вклинюсь в Ваш разговор. Посмотрел ролик из Реймана. Уровень представляет собой несколько слоев (как минимум 3: фон, дорожка для бега, растения на переднем плане). Никакого честного объема у дорожки для бега нет (перспектива не меняется при перемещении персонажа). Объемность достигается за счет колышущихся растений, облачков, частиц, теней на дорожке для бега. "Честный" объем можете посмотреть в Gravity Defied (понятное дело, что сама графика не производит того же эффекта объема, как Рейман, но уровень все же более 3Д, чем в Реймане).
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )

Последний раз редактировалось BDA; 14.11.2013 в 21:41.
BDA вне форума Ответить с цитированием
Старый 14.11.2013, 22:25   #10
Shkolota
Пользователь
 
Регистрация: 02.04.2013
Сообщений: 51
По умолчанию

BDA, спасибо. Насчет слоев думаю, что для достижения максимальной объемности их должно быть более трех. Ну, как мне кажется, - один из слоев - главный, на котором происходят основные игровые действия, и с объектами на котором игрок взаимодействует. Также, вторая группа слоев - те, что ближе к камере (как тот, с растениями, о котором вы говорите) - их может быть несколько, в зависимости от ситуации. Третья группа - дальние слои. Здесь могут присутствовать как слои с такими же объектами, что и на основном, но взаимодействие с которыми невозможно, так и фоновые слои, которых, в зависимости от ситуации, также, может быть несколько.

Но, все же, ситуация на главном слое так и осталась непонятной. Как мы видим на скриншоте из Rayman'а в моем первом сообщении, он бежит по какой-то платформе, с видом сбоку и немного сверху. Платформа состоит из нескольких частей, заполняясь подобно ячейкам в старых стратегиях (Warcraft 2) или же представлена одним большим изображением? Если она собирается из нескольких частей, то как эти части стыкуются без потери эффекта перспективы?
Shkolota вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц