Unity подвела итоги конкурса 3D-игр Proxi Art Challenge


One more step

Please complete the security check to access www.artstation.com

Why do I have to complete a CAPTCHA?

Completing the CAPTCHA proves you are a human and gives you temporary access to the web property.

What can I do to prevent this in the future?

If you are on a personal connection, like at home, you can run an anti-virus scan on your device to make sure it is not infected with malware.

If you are at an office or shared network, you can ask the network administrator to run a scan across the network looking for misconfigured or infected devices.

Another way to prevent getting this page in the future is to use Privacy Pass. You may need to download version 2.0 now from the Chrome Web Store.

Cloudflare Ray ID: 53361328be708f0d • Your IP : 188.64.174.135 • Performance & security by Cloudflare

Подведены итоги Unity Awards 2015

Cities: Skylines (Colossal Order)

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

Золотой кубок — Cities: Skylines от Colossal Order

Лучшая трехмерная графика — Endless Legend от Amplitude Studios

Лучшая двухмерная графика — Ori and the Blind Forest от Moon Studios

Лучший геймплей — Kerbal Space Program от Squad

Лучшая визуальная симуляция — Parachute Training Simulator от Pennant PLC

Лучшая не игра — UEFA Champions League Nissan Orchestra от Wasd Studio

Лучший VR-проект – Tilt Brush от Google

Лучшая студенческая работа — Anarcute by Anarteam от Supinfogame Rubika

Лучший проект для Asset Store — Chronos- Time Control от Ludiq

Выбор сообщества — Kerbal Space Program от Squad

Узнать о последних трендах игровой индустрии из первых рук, лично встретиться и обсудить рабочие вопросы с ведущими компаниями на рынке разработки и издания игр — можно будет на White Nights Moscow 2015, которая пройдет 13-14 октября.

Создатель The Sims выпустит новую игру впервые за 10 лет

Известный геймдизайнер Уилл Райт анонсировал новый проект. Игра получила название Proxi.

Ранее разработчик занимался играми SimCity, The Sims и Spore. Его новый проект — мобильная игра. Пока нет информации, на каких именно платформах она будет доступна.

Игра Proxi создаётся в сотрудничестве с фирмой Gallium Artists на движке Unity. Как и предыдущие игры, Proxi — это симулятор. В нём геймеры должны будут создавать целые миры, используя при этом воспоминания.

Сначала игра будет пустой, однако при помощи воспоминаний, выполненных в игре в виде блоков, игроки смогут создать собственный 3D-мир на любую тему вроде «семейных приключений».

Вместе с этим разработчики проведут конкурс — Proxi Art Challenge. Его участники должны будут показать команде свои творения. После этого разработчики выберут кандидата на должность художника на свой проект.

Unity подвела итоги конкурса 3D-игр Proxi Art Challenge

Нажимая кнопку «Зарегистрироваться с помощью ВК», «Зарегистрироваться с помощью ТГ» или «Зарегистрироваться», вы соглашаетесь с правилами и требованиями пользовательского соглашения.


Вход в сервис

Нажимая кнопку «Войти с помощью ВК», «Войти с помощью ТГ» или «Войти», вы соглашаетесь с правилами и требованиями пользовательского соглашения.

Наш паблик ВКонтакте

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

Телеграм канал ‘GameDEV’
  • Общая статистика
  • Детальная статистика
  • Эффективность размещения
  • Instagram ADS
  • Графики динамики
  • Аналитика аудитории
  • Youtube-размещения

1’356 подписчиков
0 просмотров на пост

Канал о разработке игр.

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

По всем вопросам — @qween13

Детальная рекламная статистика будет доступна после прохождения простой процедуры регистрации

  • Детальная аналитика 70’046 каналов
  • Доступ к 28’004’146 рекламных постов
  • Поиск по 112’332’059 постам
  • Отдача с каждой купленной рекламы
  • Графики динамики изменения показателей канала
  • Где и как размещался канал
  • Детальная статистика по подпискам и отпискам

Найдено 235 постов

​​Оригинальную Shadow Warrior отдают бесплатно

Магазин GOG.com в качестве очередного подарка посетителям выбрал классический фантастический шутер Shadow Warrior, вышедший в 1997 году. В издание Shadow Warrior Classic Complete помимо оригинальной игры вошли два дополнения, Wanton Destruction и Twin Dragon, а также руководство и саундтрек. Русский язык игра не поддерживает.


EZ Camera Shake

В этой статье я опишу работу с плагином EZ Camera Shake.

Его можно использовать для создания множества эффектов, начиная от коротких, таких как взрывы, до продолжительных, таких как землетрясения.

Разработчик The End is Nigh использовал статистику «ачивок», чтобы получить данные о продажах игры

На днях представитель Valve заявил, что компания была недовольна точностью предоставляемых данных о количестве владельцев игр и сейчас обдумывает создание нового инструмента для получения данных о продажах. Оказалось, что не только Valve не устраивают получаемые из Steam числа — один из разработчиков The End is Nigh Тайлер Глэйел поделился кодом, который улучшит точность получаемых данных о количество покупателей разных игр в Steam.

​​СМИ: Джим Керри исполнит роль доктора Эггмана в экранизации «Соника»

Издание Deadline сообщает, что Джим Керри исполнит роль в экранизации франшизы Sonic the Hedgehog. Комику достанется амплуа главного злодея всей серии — человека по имени Robotnik, он же Dr. Eggman.

Unity подвела итоги конкурса 3D-игр Proxi Art Challenge

19 марта Gallium Artists запустили Proxi Art Challenge на Unity Connect с намерением найти талантливого 3D-артиста, чтобы присоединиться к их команде. Менее чем за 3 месяца участникам конкурса требовалось превратить три личных воспоминания в 3D-игры.

Команда из Gallium Artists и всей судейской коллегии была ошеломлена качеством и талантом, который живет в сообществе Unity. Просмотреть все проекты-победители вы можете в этой статье.

#news #unity #challenge

30 дней спустя: инфографика и итоги выпуска игры в Steam

28 мая разработчики независимой студии GameLiberty, выпустили свой дебютный проект. Это цифровая настольная игра под названием Fated Kingdom, основная особенность которой заключается в отсутствии строго-запрограммированного игрового процесса.

В этой статье они описывают свой опыт продивжения игры в Steam, продажи игры, работу с прессой и многое другое.

DevGAMM 2020: Большой зарплатный опрос

Компания VALUES VALUE провела второй по счету зарплатный опрос русскоязычного геймдева, в котором любой желающий может анонимно указать свою должность и заработную плату. Ознакомится с результами этого опроса, а также узнать сколько получают работники игровой индустрии вы можете посмотрев видео ниже.

Лучшие игровые движки 2020: плюсы и минусы

Прежде, чем приступить к разработке игры, делаете ли вы ее на профессиональном уровне, или же решили попробовать в первый раз, один из важнейших вопросов, который встает перед вами — это выбор движка. На данный момент в мире существует огромное количество игровых движков. Среди них Unreal Engine, Unity, CryEngine, Godot и множество других. Мы остановимся на спецификациях, пожалуй, самых популярных — это Unreal Engine и Unity.

Мы не будем утомлять вас чересчур подробными техническими деталями, а скорее предлагаем краткий экскурс в мир движков, на которых в наше время собирается большая часть игр. Если вы новичок в геймдеве — этот материал подойдет вам идеально.

​​В Dark Souls 3 мог появиться режим «Королевской битвы»

Датамайнер Лэнс Макдональд хорошенько покапался в файлах Dark Souls 3 и обнаружил добрую порцию невыпущенного контента для мультиплеера. По всей видимости, на определенном этапе разработки у From Software была идея создать отдельные игровые локации для масштабных PVP-баталий. На это указывает найденный в файлах игры предмет «Церемониальный меч тьмы». В описании значилось, что с помощью него происходила «церемония лунного света», которая погружала мир в мрачную атмосферу, схожую с Темным Анор Лондо в первой части игры. Также в файлах был найден «Меч огня», который позволял бы игрокам вторгаться в созданный темный мир. На примере одной из первых локаций — «Высокой стены Лотрика», Лэнс Макдональд демонстрирует как бы выглядела обстановка для массовых PVP.

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

Русскоязычные книги по Unity

Если вы новичок и не знали с чего начать или ищите хорошие материалы для поднятия своего скила, то книга это отличный вариант.

В этой статье представлены все русскоязычные книги по Unity, начиная с основ разработки и доходя до таких тем как Шейдеры и VR.

Бесплатные выходные Destiny 2

На PlayStation 4 стартуют бесплатные выходные. Весь контент игры будет доступен владельцам консоли с 29 июня по 2 июля.

Fallout 76 рассказывает о пользе ядерных боеголовок

В Fallout 76 у игроков будет возможность раздобыть коды от ядерных ракет, которыми затем можно превратить чье-нибудь поселение в выжженный радиацией кратер, кишащий всевозможными формами агрессивно настроенной жизни.

Игра появится на персональных компьютерах, PS4 и Xbox One 14 ноября этого года.


​​Unity: Введение в Entity Component System и C# Job System

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

Для начала, что же такое ECS?
ECS предоставляет способ написания программного кода, сосредоточенный на решаемых вами фактических проблемах: данных и поведении, составляющих вашу игру.

Помимо лучшего подхода к игровому программированию по соображениям дизайна, использование ECS ставит вас в идеальное положение для использования системы задач Unity C# и компилятора Burst Compiler, позволяя вам воспользоваться всем преимуществом современных многоядерных процессоров.

#news #unity #example

Новые подробности The Elder Scrolls VI

Несколько дней назад Тодд Говард сообщил, что знает примерную дату выхода The Elder Scrolls VI.

Что ж, теперь творческий руководитель Bethesda Game Studios пошёл чуть дальше и сообщил (вполне ожидаемо), что разработчики знают и место действия игры. Да и все фанаты могут и сами легко вычислить местность, уверен продавец «Скайрима».

При этом когда Говарда спросили, а не Хаммерфелл ли это, он предпочёл воздержаться от ответа.

Unity представила новую версию ML-Agents

Разработчики Unity объявили о выходе обновления инструмента ML-Agents v0.4, которое позволяет проводить обучение напрямую из окна редактора. Также стал доступен более широкий спектр условий и алгоритмов, благодаря чему агенты теперь могут изучать ранее не доступные задачи. Все нововведения представлены в git-репозитории проекта.

Игровые разработчики рассказали о своих ошибках на работе

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

Тред запустил бывший сотрудник Firaxis и Zenimax Ден Перри. Он рассказал о том, как в первый день работы над своей второй ААА обрушил тестовый сервер компании сломанным файлом. Коллеги поддержали его и поделились своими историями.

Мастер Йода рекомендует:  Выбираем ноутбук для программирования

Как сделать музыку для игры

В этой статье будут рассмотрены принципы создания музыки, а также основы работы с FL Studio

FL Studio — это один из инструментов, с помощью которого вы можете создавать невероятные саундтреки для своих игр. Представляя более чем 20-летнюю инновационную разработку, у нее есть все, что вам нужно, в одном пакете, чтобы составлять, организовывать, записывать, редактировать, смешивать и осваивать музыку профессионального качества.

Новым героем Overwatch стал. хомяк?

Последнюю неделю Blizzard тизерила нового героя Overwatch на практически статичном фоне со стеной — однако время намёков, похоже, прошло, и разработчики представили нового героя командного шутера. Им стал милый хомяк, управляющий шарообразным роботом.
Не стоит, правда, исключать, что американская компания продолжает дразнить поклонников. Всё-таки анонс персонажа оказался сумбурным — всего лишь 10-секундный ролик и описание «Чемпион прибыл». Пока Blizzard напрямую не сообщает, что это действительно новый герой Overwatch.

Создание следов от выстрелов на персонажах в Unreal Engine 4

Том Луман из Epic Games в своём блоге рассказал, как сделать так, чтобы на персонажах в Unreal Engine 4 оставались следы от выстрелов. Метод накладывает некоторые ограничения, зато не использует много ресурсов системы. Мы выбрали главное из руководства.

Количество активных игроков в Pokemon Go в мае достигло максимума за два года

Больше пользователей было только после запуска игры летом 2020-го.
По данным аналитической фирмы SuperData, число активных игроков в мобильную Pokemon Go в мае 2020 года достигло рекордного значения с лета 2020-го, когда игра была официально запущена.

Как мы конкурс от Unity проиграли

История о том, как инди-девелоперы проиграли совместный конкурс Unity и Universal, сделав крутой проект (или нет… решать вам!)

Осторожно, длинный текст!

О Gamedev Challenge

В марте на выставке GDC в Америке Unity (разработчики игрового движка) совместно с Universal Studios объявили о GameDev Challenge. Суть конкурса была в том, что Universal Studios дали 5 различных IP, принадлежащих им, предложив разработать идею для PC-игры на основе этих франшиз. Выбрать было из чего: Назад в Будущее, Челюсти, Турок, Battlestar Galactica, Voltron (слышали о нем?) — всего 5 различных проектов. Конкурс проводится в два этапа: на первом этапе надо разработать условный GDD, вторым этапом идет разработка прототипа, который основан на поданном GDD. Геймдизайн документ больше походил на презентацию, в условиях конкурса был пример, на основе которого все участники делали свой вариант. Второй этап начался с оглашения результатов 31 мая. Во второй этап вышло 6 участников, а всего подали заявку 543 команды.

Призовой фонд очень впечатляющий: 250 000$, из которых победителю полагалось 150 000$ — а также различного уровня возможности поработать напрямую с Universal Studios и Unity. Это тот случай, когда даже не знаешь, что больше ценно — деньги или потенциальная возможность выпустить игру по крутому фильму. Конкурс позиционировали как возможность для инди-студий, собственно условия участия действительно были такими, что огромных усилий не требовалось.

Хотя были и шероховатости, изначально первый этап озвучили со сроками с 19 марта по 19 апреля, но потом дедлайн перенесли до 30 апреля, а озвучили о переносе числа 15го. Нам как участникам не очень приятно было получить такую новость, потому что время к первому дедлайну мы распланировали вплоть до часов, что и как мы будем делать. Конечно зная о сроке до 30 апреля мы бы возможно чуть иначе подошли к процессу дизайна нашего документа. Ну и психологический момент, вместе с дедлайном еще и перенесли оглашение результатов.

Более подробно о конкурсе тут


Наша команда — это небольшая инди-студия Apelsin Games, которая находится в Риге, Латвия. Всего в команде 9 человек, начали мы работать в 2020 году. Наш посыл в том, что хотим делать крутые игры консольного или уровня PC, но на мобильные девайсы (iOS/Android/Nintendo Switch). Более того, мы на самом деле хотим и верим, что эти платформы способны уже дать полноценный игровой опыт, сопоставимый с удовольствием от прохождения условного Uncharted на PS, хотя, конечно, будет очень тяжело побороть определенные устойчивые мнения на счет игр на мобильных. Но надо признаться, что в портфолио у нас есть match-3, честно — это была попытка заработать денег на росте популярности этих игр и главное росте выручки этого сегмента. Попытка оказалась не совсем удачной и мы работаем сейчас над двумя premium-проектами.

Начало: путь халявщика

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

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

В процессе заходили в тупик раз пять.

Сначала пытались выстроить логику обсуждения через путь халявщика по жизни “где конкуренция будет меньше, давайте выберем франшизу, где никто не будет участвовать и потом обсудим жанр”. Мы думали, что это будет Voltron или Челюсти. И на деле мы оказались близки, потому что меньше всего проектов проектов оказалось по Voltron и Battlestar Galactica. Как мы и думали, у Назад в будущее уверенный отрыв.

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

Кажется идея того, что надо предлагать то, что сделать хочется самому и тебе нравится — это самый правильный путь. Фраза, которую вы прочтете в каждой книге про геймдев 🙂

Естественно, это и самый тяжелый путь. Мы выбрали жанр (об этом ниже), который, на наш взгляд, просто идеально вписывался только во вселенную “Назад в будущее”. Вообще, наверное, это будет вторая претензия к конкурсу — франшизы настолько неравнозначны, что очевидно было, что финалисты будут разного уровня. Такой бренд как Турок предполагает только стрельбу (думали, например, над королевской битвой, естественно), какие-то бренды слабы вообще для игровой индустрии (например, Челюсти, но идея подводной охоты интересна у финалиста, хотя это, конечно, не прорыв), единственная вселенная, которая дает простор — “Назад в Будущее”.

Поэтому, наверное,пожелание всем, кто, проводит конкурсы: не делайте так, чтобы в одном месте у вас была катастрофическая конкуренция, а в другом — выбрать не из чего. Это никому не идёт на пользу (а еще и обидно!)

Помните Road Rash? Вот и мы помним! Мы начали фантазировать на тему того, что классно было бы сделать аркадные гонки с огромным количеством экшена. Посмотрели Mario Kart, Sega& Sonic All Stars racing (хотя половина нашей команды первый раз увиделао этот проект). А сейчас анонсировали Onrush от Codemasters. Гонки на ховербордах с возможностью отмахнуться от преследователей — то, что нам показалось шикарной идеей! Чуть жестче, чем Mario Kart, чуть разнообразней, чем в классической Road Rash.

Гонка на ховербордах проходит в командном режиме 5 на 5. Игрок — это персонаж на ховерборде с определенным набором пассивных и активных умений, у каждого персонажа этот набор уникальный. Персонажи делятся на классы: “Racer” и “Hunter”. Самая лучшая аналогия — это квиддич в Гарри Поттере. Задача рэйсеров — это первым добраться до финиша, задача хантеров — максимально этого не допустить.

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

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

Закономерный вопрос — почему разделение на классы и зачем команды, почему не сделать как в Mario Kart?

В процессе обсуждения мы выяснили, что половина нашей команды в аркадных экшен гонках хотела просто делать западло на трассе, не особо гоняясь за первым местом, а половина хотела как раз-таки финишировать первым. Поэтому родилась идея, что нужно дать и то, и другое, просто разделив роли в игре, кому будет интересно с противниками сражаться на скорости — тот выберет Хантера, а кому важнее первым финишировать — выберет Рэйсера.

В документе мы также прописали управление, сделали условный набросок UI, более подробно описали трассы и типы поверхностей, делимся документом с вами, если интересно.

Что мы сделали для документа и как?

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

Мы уже во время обсуждения выяснили, что для представления нашей идеи мы хотим сделать в 3D двух персонажей на ховербордах, один примерный набросок трассы в 3D, концепты 5 персонажей, а также мелочи в виде различных схем, наброски UI и т.п. Работали над документом полноценно 1,5 недели два художника — наш Lead 3D Artist и наш concept artist. Первый концепт сразу передавался для работы в 3Ds Max, а дальше параллельно шло уже собственно моделирование и работа над концептами. Все мы делали с нуля и не использовали какие-то наши предыдущие наработки. Чтобы сэкономить время считерили только на заготовке трассы: ее набросали в движке и поверх просто раскрасили скриншоты — быстрее, чем текстурить каждую модель. Также поступили и с примерами “скриншотов” — ставили модель в Unity, делали скриншот, а разукрашивали уже потом, с текстурой была только панк-девушка.

Помимо этого наш геймдизайнер взяла шаблон презентации из условий конкурса и три дня потратила на детальные описания нашего проекта. Где-то день на то, чтобы свести документ в красивую презентацию.

Помимо самого GDD по условиям конкурса надо было сделать видео с презентацией нашей команды — на это ушло где-то день съемок, кто-то выучил текст на английском, кто-то говорил на русском, а мы наложили потом закадровый перевод. И второй наш 3D-художник все это свел потом за день в крутой видеоряд в After Effect.

Безумно увлекательные 1,5 недели, которые увенчались нашим поражением. Пока еще не открыли проекты победителей, но по тому, что нам удалось узнать — мы все гордимся проделанной работой. Несмотря на то, что победители достойные и предложили интересные работы, у нас нет ощущения, что мы в чем-то уступили. Возможно тут был вопрос вкуса и каких-то недоработок в деталях.

Многим покажется барством оторваться от своих проектов на 1,5 недели, но это реально помогает вернуться к своим играм и посмотреть на них свежим взглядом, переключиться между задачами иногда бывает очень полезно.

В данный момент мы заканчиваем наш первый stealth проект под названием Mercenary, поэтому больше о нас и наших играх можно узнать тут и тут

Мастер Йода рекомендует:  Как стать успешным программистом и найти работу — доклад в рамках недели кода

Скоростная разработка Unity3D игры на конкурс

В данной статье я расскажу про интересные и немного неочевидные моменты разработки видеоигры в сжатые сроки: по регламенту конкурса, работоспособную демку необходимо сдать в течение недели, а релиз — в течение двух недель. Статья предназначена для тех, кто уже игрался с Unity3D, но еще не делал на этом игровом движке никаких проектов сложнее HelloWorld’а.

Картинка для привлечения внимания — скриншот игры.

Идея игры, концепт

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

Однако, с двухнедельного конкурса игр и спрос небольшой, тут можно попробовать.


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

В данном случае я выбрал довольно простой жанр — аркада с видом сверху, с элементами hack&slash. Вдохновлялся я следующими играми (я думаю, многие в них играли, видели, так или иначе знакомы):

Sword of the stars: The pit

Пошаговая игра в жанре Rogue-like, один из моих любимых рогаликов: необычайно простой, но в то же время захватывающий. Из этой игры я позаимствовал идею генерируемых лабиринтов и случайного спавна врагов.

Аркада с видом сверху. Из этой игры я позаимствовал количество противников и динамику.

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

Из чего мы можем выбирать? Существует огромное количество игровых и графических движков, но самыми популярными на данный момент являются Unity3D, UnrealEngine4, cocos2d, libGDX. Первые два используются в основном для десктопных “сложных” игр, последние два — для простых двухмерных игр под сотовые телефоны. Также для простых игр существуют мышкоориентированные конструкторы.

Несмотря на то, что я зилот C++ и бесконечно люблю этот язык, я отдаю себе отчет, что данный язык — не то, на чем следует писать игру за две недели. Unity3D предоставляет возможность написания скриптов на C#, JS и на собственном пайтон-подобном языке Boo-script. Большинство программистов используют C# ввиду очевидных причин. Да и понравился мне Юнити, на уровне ощущений.

Разработка, архитектура, интересные моменты

Уровни

Игра предполагает бег по лабиринту, а лабиринт надо сгенерировать. Сначала я решил придумать алгоритм самостоятельно, на первый взгляд дело казалось простым: разбиваю поле на две неравные части по горизонтали или по вертикали, создаю проход из одной части в другую. Затем рекурсивно прохожу по левому и правому “островку” и так же их обрабатываю: если размеры позволяют — разделяю их на две части, если не позволяют — то оставяю комнату такой, как есть.

Получается такое несбалансированное бинарное дерево со всеми вытекающими — из любой комнаты в любую другую можно пройти по одному единственному пути. Это не очень правильно с точки зрения интереса исследования данного лабиринта, да и сами лабиринты имели явный квадратно-гнездовой вид с тенденцией к вытянутым, узким комнатам, похожий чем-то на застройку спальных районов в России, как бы я не юстирован константы. К сожалению, первоначальный вариант алгоритма не сохранился, и я не могу показать его результаты.

Иллюстрация к первоначальному алгоритму генерации лабиринта

Затем, я решил искать алгоритм генерации в интернете, нашел его на сайте gamedev.ru, написанный на языке C++.

Суть алгоритма такова: на пустом поле размещается желаемое количество — n комнат. Для каждой новой комнаты случайным образом в указанных пределах задается её размер, затем комната размещается на случайных координатах игрового поля. Если создаваемая комната пересекает ранее созданные комнаты, то её следует пересоздать в случайном месте со случайными размерами. Если комната через усновные m = 100 итераций не может найти себе место, то поле считается заполненным, и переходим к следующей комнате.

Затем, когда необходимое количество комнат создано, необходимо соединить их проходами: Обходим все созданные комнаты и просчитываем путь по алгоритму поиска пути А* от центра обрабатываемой комнаты к центру каждой другой комнаты. Для алгоритма A* задаем вес для клетки комнаты единицу — 1, а для пустой клетки — k. Алгоритм выдаст нам набор клеток — путь от комнаты до комнаты, в этом и таится магия: увеличивая k, мы получаем более запутанный лабиринт с меньшим количеством коридоров, увеличивая — получаем “прошитый” коридорами лабиринт. Этот эффект достигается благодаря тому, что при большем весе пустой клетки, алгоритм поиска пути старается проложить путь в обход, нежели “пробить” дорогу.

Зелёными тайлами отмечен результат поиска пути из каждой комнаты в каждую.

Затем идет “декорация” лабиринта, поиск стен.

Алгоритм крайне неоптимизирован, на ноутбучном i7 генерация лабиринта 50*50 (правда, вместе с созданием игровых объектов, представляющих уровень) занимает порядка 10 секунд. К сожалению, я не могу даже примерно оценить сложность алгоритма генерации уровня, потому что сложность волнового алгоритма поиска пути зависит от коэффицента k — чем запутаннее лабиринт, тем более A* склонен к экспоненциальной сложности. Однако, он создает именно такие лабиринты, какие я хотел бы видеть в своей игре.

Теперь, у нас есть лабиринт, в виде двухмерного массива. Но игра у нас трехмерная, и необходимо как-то создать этот албиринт в трёхмерном пространстве. Самый очевидный и неправильный вариант — создаём для каждого элемента массива игровой объект — куб или плоскость. Минусом данного подхода будет тот факт, что каждый из этих объектов встроится в систему обработки событий, которая и так работает в одном потоке ЦП, существенно затормозив её. Сцена из скриншота с большим количеством комнат у меня на компьютере серьезно лагает. Может показаться, что этот подход будет нагружать видеокарту draw-call’ами — но нет, Юнити отлично батчит различные объекты с одним материалом. И всё же, так делать не стоит.

Правильным подходом является создание одного объекта, с мешем на основе двухмерного массива тайлов уровня. Алгоритм простой: для каждого тайла рисуем два треугольника геометрии для рендера, два треугольника геометрии для коллайдера и задаем точкам текстурные координаты. Тут есть одна тонкость.

Для текстуры пола я использую алтас из четырёх разных тайлов:

Причем я заметил, что естественнее выглядит такое распределение, когда одних тайлов больше, а других — меньше. На самом деле, нет такого подзамелье, где в среднем на каждом втором квадратном метре пола раскидано аккурат по одному скелетику рыбки.
Для создания такого неравномерного распределения, я использую следующую строку:

Она обеспечивает коренную зависимость количества тайлов.

Затем, в список текстурных координат задаются текстурные координаты выбранного тайла. Этот блок кода работает на тайлсетах с числом тайлов равним степени двойки.

Результат виден на КДПВ — вполне естественно и непринуженно, несмотря на то, что у тайлов всё же есть стыки, и их всего четыре.

На этом этапе мы имеем геометрию уровня, но нам необходимо “оживить” его, добавив врагов, пауер-апы, катсцены и ещё какую-нибудь игровую логику, если это необходимо.

Для этого создадим синглтон Менеджера, отвечающего за уровни. Можно сделать “правильный” синглтон, но я просто добавил объект менеджера объектов на сцену, в которой непосредственно происходит геймплей и сделал поля менеджера глобальными. Такое решение может быть академически неправильным (и имеет название индусский синглтон), однако с его помощью я добился того, что Юнити сериализует поля менеджера и позволяет редактировать их в реальном времени инспекторе объектов. Это гораздо удобнее и быстрее, чем изменять настройки ка;lого уровня в коде, позволяет отлаживать баланс не выключая плеер. Очень полезная фича, ей я пользовался не раз, например, для создания объектов класса, отвечающего за диалоги:

Набор игровых уровней — это массив объектов, описывающих каждый уровень. Класс, описывающbй уровень таков:

Создание уровня происходит следующим образом: менеджер уровней получает сообщение Awake(), считывает значение глобальной переменной — номера уровня, который следует загрузить (первоначально оно равно нулю, увеличивается по мере продвижения протагонистом вглубь лабиринта), выбирает из массива объектов типа Level нужный уровень. Затем, если уровень процедурно генерируемый (generated == true), то запускается построение и декорация лабиринта. Построение лабиринта рассмотрено ранее, а декорация происходит за счет выполнения делегатов decorations и decorationsSize. В первый делегат я добавляю процедуры, не принимающие аргументов, например, добавление на уровень лестницы, а во второй — с аргументом, например, добавление на уровень пауер-апов (для сохранения равной плотности пауер-апов на квадратный метр лабиринта количество бонусов должно быть пропорционально квадрату линейного размера лабиринта) или врагов.


Размещает врагов следующая функция, с помощью массива структур из двух полей — прафаба противника, который следует создать, и веса этого противника. Например, если массив будет таков:

<, >

То моб типа Mob1 будет спавнить с вероятностью в пять раз больше, чем Mob2. Количество типов мобов может быть произвольным.
С помощью подобной функции можно случайно с определенной вероятностью размещать так же артефакты в сундуках, эффекты от неизвестных зелий и чего угодно!

Затем, как для генерируемого, как и для жестко заданного, мы инстанциируем префаб уровня, если таковой есть. Для жестко заданного уровня, это непосредственно уровень, со своей геометрией, персонажами. А для генерируемого это может быть диалогом или кат-сценой.

Персонажи. Скрипты. Взаимодействия

Несмотя на то, что Unity3D использует C#, предполагается работать не с привычным ООП, а с собственным паттерном, основанной на объектах, компонентах и событиях.

Если Вы хоть раз запускали Юнити, то Вам должны быть понятны эти сущности — игровые объекты имеют несколько компонентов, комноненты отвечают за те или иные функции объекта, среди которых могут быть пользовательские скрипты. Сообщения (пользовательские, или служебные, вроде Awake(), Start(), Update()) посылаются гейм объекту и доходят до каждого компонента, каждый компонент их обрабатывает по своему усмотрению. Из этого выходит привычный для Юнити паттерн: вместо наследования стоит использовать композицию компонентов, например, как показано на картинке.

Есть объект типа “Mob”, с компонентами, выполняющие спецефические задачи, названными характерными именами. Компонент EnemyScript отвечает за ИИ, посылает своему гейм обджекту сообщения Shoot(Vector3 target), чтобы выстрелить и сообщения MoveTo(Vector3 target), чтобы отправить моба к данной точке.

Компонент ShooterScript принимает сообщения “Shoot” и стреляет, MoveScript принимает сообщения MoveTo. Теперь, допустим, мы хотим сделать моба, который похож на данного, но с измененной логикой поведения, ИИ. Для этого можно просто заменить компонент со скриптом ИИ на какой-нибудь другой, например, вот так:

В привычном ООП на С++ это могло бы выглядеть вот так (в Юнити так делать не стоит):

В Юнити сделано очень юзер-френдли и мышкоориентировано, на мой взгляд, это хорошо, поскольку разнообразие врагов, это скорее контент игры, нежели “программистская” часть.

Общение между разными объектами происходит похожим образом: когда объект пули обрабатывает служебное сообщение столкновения, он шлет сообщение “Damage(float)” тому объекту, с которым он столкнулся. Затем, компонент “Damage Receiver” принимает это сообщение, уменьшает количество хитпоинтов, и если хитпоинты ниже нуля — шлет себе сообщение “OnDeath()”.

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

Лайфбар

В проекте используется много интересных и неочевидных для начинающего разработчика приёмов, все в рамках статьи рассмотреть не получится, так что в данной статье я рассмотрю проcтую реализацию лайфбара.

Мастер Йода рекомендует:  AJAX. Тонкости Web Setup Project

Во всех играх есть противники у которых надо отбавлять HP, и почти во всех играх есть герой, который ради отбавления HP у противников, тратит свою энергию либо ману. Для моего решения понадобится дочерний геймобджект (скажем, его можно назвать Healthbar) с квадом, который будет отображать нужную полоску. У этого объекта должен быть установлен компонент MeshRenderer с материалом, которым можно увидеть на превьюшке (квадрат, у которого левая сторона зеленая, а правая — красная).
Так же, для правильного отображения задуманного необходимо, чтобы текстура лайфбара имела точечную (POINT) фильтрацию.

Идея такова: устанавливаем тайлинг по горизонтальной оси в 0.5, и квад будет отображать половину изображения. Когда оффсет по той же оси установлен в 0, отображается левая половина квадрата (зелёная), когда в 1 — правая, в промежуточных значениях лайфбар ведёт себя так, как и следует вести себя лайфбару. В моём случае текстура лайфбара состоит из двух пикселей, но данный ментод позволяет отображать и красивые, ручной работы лайфбары.

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

Метод для отображения маны “умнее”, поскольку оперирует ещё смещением по вертикальной оси — в этом случае используется текстура из четырех пикселей, в которой верхняя часть соответствует активной полоске, а нижняя — пассивной (например, во время перезарядки, перегрева оружия или переутомления колдуна).

Итоги

Конкурс я, к сожалению, проиграл, заняв позорное место в середине списка участников.

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

Ещё, Юнити3д — это про ассеты. Конечно же, мне было интереснее разрабатывать велосипеды, что я и делал — ни одного ассета не использовал, все скрипты и ресурсы — свои. Но так делать не надо, если работа идет на результат, а не на интерес.

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

Надеюсь, статья была интересной и познавательной.

3D Systems Art Challenge: шанс выиграть 3D-принтер и удивить скептиков

Несмотря на то, что 3D-печать уже завоевала расположение множества энтузиастов и поклонников, некоторые все еще относятся к этой технологии скептически.Команда сайта CG Trader отмечает, что они сотрудничают с компанией 3D Systems в рамках конкурса 3D Systems Art Challenge для того, чтобы доказать скептикам, что они не правы. Миссия конкурса – продемонстрировать вклад 3D-печати в мир искусства. Представители CG Trader называют 3D-печать «шляпой фокусника, в которой предметы возникают из ничего». Как показывает искусство и сама жизнь, даже самые обычные вещи могут стать необычными.

По словам организаторов, призы на конкурсе очень привлекательные – и с этим трудно поспорить. 3D Systems Art Challenge – отличный стимул для создателей цифрового контента, которым требуется здоровая конкуренция, чтобы представить миру свою новую работу. Конкурс продлится до 11.01.2015.

3D Systems Art Challenge фокусируется на создании на 3D-принтере предметов искусства для украшения интерьера. Команда CG Trader и 3D Systems призывают участников конкурса представлять работы в следующих областях:

  • Мебель
  • Декор стен
  • Вазы
  • Скульптуры
  • Фигурки
  • Промышленный дизайн
  • Декор для дома

Участники должны загрузить свои работы на сайт CG Trader, где есть возможность установить на них цену. Конкурс делится на две категории, первая из которых – «Лучшая модель». В ней будет определен победитель и два участника, занявших второе место. Авторы лучших 3D-моделей предметов искусства получат призы.


Победитель будет награжден:

  • Принтером CubePro от 3D Systems
  • Одной катушкой нити Innofil3D от Igo3d
  • Одной катушкой нити Ninjaflex fillament от Fennerdrives
  • Внутренней валютой сайта CG Trader на сумму 200 долларов
  • Специальным продвижением на сайте CG Trader

Участники, которые займут второе место, получат:

  • Одну катушку нити Innofil3D от Igo3d
  • Внутреннюю валюту сайта CG Trader на сумму 100 долларов
  • Специальное продвижение на сайте CG Trader

Во второй категории, «Лучшее портфолио», также будет определен победитель, а второе место разделят два участника. Победителю достанется:

  • Ручка для создания 3D-рисунков 3Doodler от одноименной компании
  • Одна катушка нити Innofil3D от Igo3d
  • Одна катушка нити Ninjaflex fillament от Fennerdrives
  • Внутренняя валюта сайта CG Trader на сумму 300 долларов
  • Специальное продвижение на сайте CG Trader

Участники, которые займут второе место, получат:

  • Одну катушку нити Innofil3D от Igo3d
  • Внутреннюю валюту сайта CG Trader на сумму 100 долларов
  • Специальное продвижение на сайте CG Trader

В чем преимущества участия в конкурсе? Это отличный способ поддержать творческий тонус, получить признание за свою работу, а также продемонстрировать, на что способны технологии 3D-печати. Здоровая конкуренция положительно влияет на мир искусства в целом, так же, как это происходит в сфере науки и технологий: одни идеи порождают другие, а люди вдохновляют друг друга мыслить более открыто и смело.

Анонсирована Proxi — новая игра от создателя Simcity и The Sims

На мероприятии Game Developers Conference (GDC) легендарный игровой дизайнер Уилл Райт анонсировал свою новую игру — Proxi. Она будет доступна на мобильных устройствах.

Создатель Simcity, The Sims и Spore предложит игрокам снова заниматься строительством. На сей раз необходимо проектировать целые миры, причем не простые, а из воспоминаний.

Изначально перед игроком откроется белый, пустой мир. Постепенно его нужно наполнять своими воспоминаниями. Для начала выбирается любая тематика: дом, семья, учёба или приключения, после чего начинается проектирование. Игроку будут доступны различные 3D модели и прочие материалы для постройки. Постепенно создается некая картинка, которая предстает в игре в виде небольшого островка. Эти островки объединяются в один и получается целый мир воспоминаний.

Райт описывает игру как некое приключение, во время которого каждый игрок лучше познает себя, найдет собственное Я.

Если вы художник и так видите, вас это заинтересовало, то вы можете поучаствовать в конкурсе Proxi Art Challenge. Райт проводит его совместно с Unity. Любой участник может прислать на рассмотрение свое собственное воспоминание, собранное из созданных им материалов/моделей. Самые лучшие будут отобраны Райтом. Победители смогут пообщаться с самим дизайнером, разработчиками, а также стать частью их команды, если повезет, конечно.

Will Wright partners with Unity to announce the Proxi Art Challenge, a 3D game dev art challenge

Do you have what it takes to land a gig with a legendary game designer? Show us by bringing your memories to life in Will Wrights Proxi Art Challenge!

by Braelyn Johnson on 12th April 2020

  • — Unique views

Do you have what it takes to land a gig with a legendary game designer? Show us by bringing your memories to life in Will Wrights Proxi Art Challenge!

Will Wright, world-renowned game designer and creator of The Sims, Sim City, and Spore, has announced that his game dev studio, Gallium Artists, which was co-founded by Where in the World is Carmen Sandiego creator Lauren Elliott, is working on its newest mobile game, Proxi.

During their keynote at GDC, Unity announced that they have partnered with Will Wright and Gallium Artists to bring the Proxi Art Challenge to the community! Artists will submit their creations for the opportunity to become one of two grand prize winners, who will be flown to California to meet with well-known industry legends as well as interview with Will Wright and his team. After the interview, one of those winners may be selected as the 3D artist hired to help Will Wrights team bring Proxi to life! Do you have what it takes to land the gig?

Join the Proxi Art Challenge

Will Wright is stepping back into the spotlight to build his first game in approximately ten years and he is building his game with Unity. Proxi is a mobile simulation game currently in development that follows in the footsteps of his other successful games series — The Sims, Sim City, and Spore. However, this time its all about the player.

Proxi will allow players to build worlds from their own memories. Players will be given a blank world to start with and must develop it using memories as building blocks. The player will place memories in the world, creating and naming islands of connected memories, which can be on any topic they choose, such as Family adventures, or High School Days. Over time, these interlinked environments become rich, 3D worlds.

Will Wright and Gallium Artists chose Unity due to its flexibility, easy integration with AI/ML, and cross-platform capabilities. Unity allows the team to quickly prototype in the environment they create, allowing non-programming artists to build conceptual artwork, import it into Unity and then iterate on it rapidly. For the Proxi team, Unity has become the crossroads for art and artistic expression.

The Challenge: Turn your own personal memories into 3D game art.

The memories you choose to create are entirely up to you.

On May 29 a little less than two months from now judges will pick two grand prize winners, who will be flown out to the San Francisco Bay Area to meet Will Wright and the team at Gallium Artists, as well as have the opportunity to interview for a chance to land a job on their team. View the full job description here. The contest is underway, and will run until May 14. We have a group of renowned creators participating as judges including:

  • Will Wright: Co-Founder Maxis The Sims, Spore, Sim City
  • Ocean Quigley: Creative Director, Facebook, EA
  • Bill Robinson: Disney Illustrator and Character Design Frozen
  • Matt Jones: Story Artist, Pixar Inside Out, Finding Dory
  • Jenna Chalmers: Game Designer, Tech Lead
  • Robin Hunicke: Game Designer Journey, Professor of Game Design
  • Lauren Elliott: Game Designer Carmen Sandiego, CEO Gallium
  • Nick Klingensmith: Unity Asset creator, Unity Developer Certification contributor
  • Oskar Stalberg: Game Developer Planet Tile Experiment
  • Mark Schoennagel: Evangelist, Unity
    The Proxi Art Challenge is hosted on Unity Connect, the first professional network and community hub dedicated to the full spectrum of Unity creators, from the games industry to VR/AR and beyond.

    Программирование [Unity3DSchool] Комплексное обучение созданию игр на Unity3D (2020-2020)

    Автор: Unity3DSchool
    Название: Комплексное обучение созданию игр на Unity3D (2020-2020)

    Описание:
    — Unity3D базовый курс (разработка игр на Unity3D для начинающих);
    — Unity3D углубленный курс (моделирование и анимация в 3ds max и многое другое);
    — Монетизация мобильных игр (создание мобильной 2d игры на Unity3D, ее публикация и способы ее монетизации).

  • Добавить комментарий