Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: "Making Of " от John Isaac
Форум .:3DCenter.ru:. > .: 3DCenter.ru :. - внутренний мир сайта > Kонкурсы > Конкурс “Лучший Making Of”
John Isaac
"Making Of " от John Isaac

Всем доброго времни суток. Меня зовут Кудрявцев Евгений! Хочу поведать вам о кое чём интересном. Особенно это будет впрок тем людям кто так или иначе связан с гейминдустрией.Я являюсь одним из разработчиков игры Storm. Вот офф сайт где при желании можете скачать и ознакомиться с демо версией для PC http://www.cybergeeks.net.ua/ . Ежели нет желания качать и играть, то можете посмотреть ролики с геймплеем на нашем канале http://www.youtube.com/user/lllCyberGeekslll .Сразу отмечу для жюри и модераторов, что по данной ссылке ролики без лого 3DСenter.ru , так как они собственность всей нашей команды разработчиков как и сам сайт игры, и потому я не имею права размещать там сторонние логотипы и прочее. А в тех материалах которые размещал я, непосредственно присутствуют лого 3DСenter.ru Это всё для того чтобы читатели уловили все аспекты моей статьи. Данный материал ранее нигде не выкладывался, всё что тут будет изложено является эксклюзивом =) Спасибо моему руководству, которое любезно согласилось на то, чтобы я раскрыл некоторые моменты (секреты) о проекте Storm.
Демо версия была разработана на собственном движке, который написал наш руководитель Антон Трил. 2.5D мир игры представлял собой простые слои из фотошопа, и спецэффекты самого движка:
Нажмите для просмотра прикрепленного файла


Если вы посмотрели ролики или уже поиграли, то увидели как довольно не плохо передана атмосфера игры. Однако планы вскоре поменялись. Инвестор изъявил желание выпустить игру под iOS причём все объекты должны быть в полном 3D . Старый движок естественно не подходил для этого. И потому был выбран движок Unity3D по соотношению цены и качества. Я как 3D моделлер должен был заняться портированием игрового мира шторма из 2.5D в полный 3D. Общим совещанием было решено осуществить это с помощью Camera Mapping. Как выяснилось для создании игр Camera Mapping ранее никогда не применялся, только для видеороликов с пролётом камеры. В игре же требовалось создать 3D примитив того или иного объекта, спроецировать на него соответствующую текстуру и импортировать в движок Unity3D. Этим всем я и занялся. И сразу же начали появляться трудности, в ввиду которых пришлось отбросить все 2 существующих способа Camera Mapping. Описывать тут я их не буду естественно,они общеизвестны, укажу разве что на причины по которым они не подошли. Перейдём к причинам. Данные методы Camera Mapping годны только лишь для роликов с пролётом камеры, в нашем же случае текстуры свободно плавают по объектам при их перемещении. Конечно, я пробовал запекать их и "прилеплять" к объектам, но как оказалось для Unity3D это неудачный вариант, да и к тому же это пагубно влияет на производительность, а следовательно и на FPS в игре. Поэтому надо было найти новый способ проецировать. Путём проб и ошибок я нашёл решение. И вот наконец-то я приступлю к его непосредственному описанию =)
Во фронтанльной проекции создаётся плоскость. С размерами сторон соответствующего слоя в фотошопе. В материалах выбираем обычный стандартый мат, выбираем нашу текстурку (фон). Выделяем плоскость, конвертируем в Edit Poly, потом выбираем модифакатор UVW Map, переходим в его параметры, ставим радиоточку напростив Planar и убираем галочку Real-World Map Size. И получается вот так:
Нажмите для просмотра прикрепленного файла

И далее приступаем к моделированию в окне фронтальной проекции. Объясню почему именно в ней. При обычном Camera Mapping текстура текстура проецируется из камеры, то есть из одной точки. А в моём случае текстура проецируется параллельно на все точки. Для удобства моделирования советую создать обычный материал с нулевой прозрачностью и набросить на тот примитив который будете моделить. В итоге получается следующее:
Нажмите для просмотра прикрепленного файла

Я решил начать с земли, забора ну и остальных массивных объектов, причём всё делал одной плоскостью. Процесс моделирования самый традиционный так же не нуждается в описании. Как вы заметили количество полигонов самое минимальное, это для того чтобы не нагружать железо устройств, на которых будет играть пользователь в Storm.
И так, у нас готов примитив. Теперь непосредственно "прилепим" к нему ту текстуру под которую мы его моделировали. Для этого выделяем плоскость которую изначально создали. Заходим в модификаторы. В стеке выбираем Edit Poly, нажимаем кнопочку Attach и указываем на созданный примитив. Выскочит окошко, где спрашивают какой вариант присоединения выбрать. Ставим радиоточку на самом нижнем пункте:
Нажмите для просмотра прикрепленного файла

и вот что получится:
Нажмите для просмотра прикрепленного файла

Таким же образом моделируются и "текстурятся" остальные мелкие объекты в сцене.
Нажмите для просмотра прикрепленного файла

И описанным ранее способом "аттачатся" с главной плоскостью:
Нажмите для просмотра прикрепленного файла

Далее переходим ко второму второму, третьему и тд слою...
Нажмите для просмотра прикрепленного файла

После того как все операции над всеми примитивами завершены получается такая вот сцена:
Нажмите для просмотра прикрепленного файла


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

В общем на этом я завершаю свою статью. Как и говорил ранее этот материал ценен для тех кто так или иначе связан с гейминдустрией. Существует огромное количество 2D и 2.5D игр которые довольно просто портировать в 3D описанным мною способом во многие известные Игровые движки.
На последок хочу показать ролик. В котором можете увидеть скомпилированную (адаптированую под Android OS) игру для телефона Sony ericsson Xperia 10. Планшета у меня на момент написания статьи не оказалось, так что извиняйте =) Качество не ахти, но это и не главное, всё самое важное я изложил в материале.

Если вдруг по каким то причинам ролик тут не просматривается вот прямая ссылка http://www.youtube.com/watch?v=0C5rRCEkP7o
В ролике я говорю о количестве FPS 66 кадров в секунду. Ну а если прибавить погодные условия и спец эффекты то выйдет в районе 40, что вполне подойдет для комфортной игры на планшетах и смартфонах под управлением iOS Android =)
Всем желаю удачи и творческих успехов!
Akmyrza
Интересный урок, но я считаю он таков для очень узкого круга геймделателей
За старания респект
John Isaac
Спасибо за комент!
На счёт узкого числа людей, могу согласиться, однако. Важный момент - это я так написал, что данный материал будут полезен тем, кто занимается разработкой игр,так как применяю это в своей работе в геймстрое. Никому не мешает его использовать в других целях, хотя бы к примеру в том же Camera Mapping. Мой вариант может полностью заменить его, причём с огромным плюсом в перевес по возможностям. А именно, можно будет делать не только статичные видео ролики с простым пролётом камеры, но и динамические, с движением и взаимодействием объектов на которые была ранее проецирована текстура, без опасения что она слетит как при обычном Camera Mapping. Можно так же фотографии лиц легко таким образом нанести на примитив в виде лица и в дальнейшем использовать для анимации и тд. В фильме Кинг-Конг в постпродакшене использовался Matte Painting для создания окружающей среды, то что я изложил в материале вполне является альтернативой, конечно у меня всё завязано в 3D Max'е но ведь это не главное, важна сама идея, а как и где применить это уже зависит от нас самих и от нашей находчивости.Я применил это в гейм индустрии, и вдохнул в проект жизнь, и в скором времени игра Storm выйдет в свет, принося доход её разработчикам, и к тому же, прошу заметить играть будут не 2-3 человека, а все кто питает любовь к 3D играм на планшетах и смартфонах с любой OS а таких миллионы. Может и узкий круг лиц из геймстроилей будет применять данный материал, но вот пользоваться плодами в перспективе будут тысячи. Другой человек применит в другой сфере 3D графики и так далее...Так что вопрос о применении материала мне кажется совсем не важным. Один скажет "Та ну, мне это не нужно,я в автокаде здания черчу", а другой скажет "Это то что я искал!" Как бы то ни было я рад что поделился своим знанием, но буду ещё больше рад если люди воспользуются этим в своих проектах, ведь для этого мы все и участвуем в конкурсе!
Alexander Enlou
материал очень позновательный, хоть не поголовно для всех тридешников но всё же позновательный!автору респект!
жду следующих работ!
Ole-ole-ole
Спасибо, было интересно и неожиданно просто! Возьму на вооружение)
John Isaac
Всё гениальное просто!Пользуйтесь на здоровье !!! =))
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2019 IPS, Inc.