что такое ассеты в играх
Что такое ассеты Unity, где их скачать и как добавить
За 12 минут чтения этой статьи вы узнаете, что такое ассеты, где их взять и почему без них нельзя создать ни одной игры на Unity.
Ассеты — это компоненты, которые представляют собой графику, звуковое сопровождение или скрипты. Они прикрепляются к объектам и составляют важную часть игры.
Например, к объекту Skeleton (скелет) могут быть прикреплены такие компоненты:
Все эти компоненты нужны, чтобы игрок видел не неподвижную болванку, а полноценного врага, который преследует героя и нападает на него, издавая при этом страшные звуки.
Какие бывают ассеты
К ассетам относятся:
Пишет о разработке сайтов, в свободное время создает игры. Мечтает открыть свою студию и выпускать ламповые RPG.
Где брать ассеты для Unity
По умолчанию в Unity есть стандартные ассеты (если вы не отключили их во время установки), но только для 3D-проектов. Для двумерных игр их приходится искать или создавать самостоятельно.
Самый простой вариант — скачать их в Unity Asset Store. Это официальный магазин, где можно найти как платные, так и бесплатные компоненты для игр. Здесь можно выбрать категории ассетов и нужное измерение (2D или 3D).
Тут вы можете узнать, что входит в набор, а также проверить, поддерживается ли он в вашей версии Unity.
Спрайты, звуки и модели подходят практически для всех версий движка. Проблемы с совместимостью могут быть у скриптов, эффектов, префабов и анимации.
В Asset Store можно зайти прямо из редактора Unity — это удобно, если вам понадобились ассеты во время разработки и вы не хотите открывать браузер.
Если у вас старая версия Unity, вы можете указать в фильтре поиск только совместимых наборов. Для этого нужно перейти в старый магазин, нажать кнопку Filters и указать версию в поле Supported Unity Version.
Если в официальном магазине Unity вы не нашли ничего подходящего, попробуйте сделать это на других площадках.
Также можете поискать что-нибудь на форумах и сайтах для инди-разработчиков:
Если ничего подходящего нет и там, можно заказать нужные ассеты у фрилансеров, которые специализируются на разработке скриптов или создании графики для игр.
Это может быть дороже и дольше, чем использование готовых компонентов, но вы получите что-то созданное специально для вашего проекта. А значит, будете уверены, что ассеты уникальны, а не встретятся еще в десяти или двадцати играх.
Как создать ассеты для Unity самому
Если нет возможности купить или заказать ассеты, то создать их можно и самостоятельно, но для этого понадобится знание программ для работы с графикой и аудио, а также навыки программирования.
Спрайты можно нарисовать в Adobe Photoshop или Adobe Illustrator, но подойдет и MS Paint. Для этого нужно владеть векторной графикой или уметь рисовать в стиле pixel art. А еще можно просто сфотографировать реальный предмет, а потом обрезать фото и обработать его для игры.
Модели можно создавать в программах Blender или 3ds Max. Для этого нужно разбираться в трехмерной графике, в том числе и в создании скелетной анимации.
Скрипты пишут в MonoDevelop (встроенный редактор Unity) или любом другом редакторе кода. Для этого нужно знать JavaScript или C#, а также библиотеки для работы с Unity.
Аудио можно записать на диктофон, а потом обработать в Sony Sound Forge, Adobe Audition или в бесплатном Audacity. Могут получиться очень атмосферные эффекты, если у вас скрипят полы или двери. Также вы можете записать какую-нибудь композицию в Frutty Loops или Cubase.
На что обратить внимание при создании ассетов
Прежде всего — на их качество и размер. С большими ассетами игра станет более требовательной. Если же, наоборот, сжать спрайты, аудио и модели, то проект станет менее привлекательным. Поэтому нужно соблюдать баланс между производительностью и качеством.
Также вы можете дать игрокам возможность самим выбирать качество — но тогда придется добавлять ассеты в нескольких вариациях, и из-за этого увеличится размер программы.
Как использовать ассеты в Unity
Есть несколько способов добавить ассеты в Unity-проект. Самый простой — с помощью обозревателя поместить файлы в папку Assets.
Можно и перетащить их в поле Assets внутри редактора Unity. Там же можно создать новые скрипты или префабы.
Если проект еще не был создан, можно добавить набор ассетов с помощью кнопки Add Asset Package. Чтобы воспользоваться ею, нужно быть авторизованным. Также у вас должны быть уже куплены или добавлены ассеты из Asset Store.
Чтобы добавить ассет на локацию, его нужно перетащить из поля Assets в поле Scene.
Вы можете прикрепить ассет к уже готовому игровому объекту. Для этого надо выбрать объект и в поле Inspector нажать Add Component, а затем указать какой-нибудь компонент.
С помощью нескольких ассетов вполне можно создать простую игру.
Заключение
Поиск и использование хороших ассетов — это только полдела. Чтобы создать серьезную игру, нужно уметь грамотно связать все компоненты в единое целое.
Кроме того, вам понадобятся знания в гейм- и левел-дизайне и дополнительные технические навыки. Если вы новичок в разработке игр, то получить нужные знания и почувствовать себя увереннее поможет учебный курс «Профессия разработчик игр на Unity».
Что такое игровой ассет в Unity
Чтобы разобраться с игровыми ассетами для Unity, для начала надо разобраться с ассетами в принципе. Игровой ассет (англ. Game Asset), также игровой ресурс — цифровой объект, преимущественно состоящий из однотипных данных, неделимая сущность, которая представляет часть игрового контента и обладает некими свойствами.
Каждый отдельный файл в нашем Unity-проекте — это неделимая сущность, а значит он является ассетом. Мы можем разделить ассеты юнити (и в принципе везде) на несколько типов.
Встроенные ассеты
Встроенные ассеты — это ассеты, являющиеся частью игрового движка. Они создаются и редактируются внутри самого движка. Туда входят:
Некоторых из вас, возможно, заинтересует, почему я отделил текстуру от спрайта. Дело в том, что спрайт от текстуры отличается именно возможностью настройки ассета. Ведь текстура — это просто набор пикселей, а спрайт — это объект, который обладает своей геометрией, что даёт нам много возможностей для настройки. Именно поэтому за основу работы UI взят именно спрайт, а не текстура. Подробнее о настройках ассетов в юнити и вообще мы поговорим дальше.
Ассеты, которые не являются частью игрового движка
Помимо встроенных ассетов, есть и ассеты, которые не являются частью игрового движка. Они могут создаваться с помощью различных программ, включая написанные на С#.
Настройка ассетов
Как ни странно, но конечный вид ассетов на сцене зависит от настройки ассетов. Настройка одних ассетов может повлиять не только на внешний вид, но и на производительность. Например, настраивая аудиомикшер, вы изменяете только уровни громкости и, возможно, аудиоэффекты — на производительности проекта это особо не скажется. Но настраивая материалы или текстуры, вы можете повлиять не только на конечный вес вашего приложения, но и на производительность рендеринга в целом.
Если понизить разрешение с 2048 до 1024, мы сократим конечный вес текстуры почти в 5 раз. Выгода очевидна.
Подобное, увы, работает не со всеми ассетами в юнити, поэтому некоторые ассеты придётся «облегчать» на этапе их создания или в сторонних программах.
Настраивая материалы и их шейдеры, мы тоже можем разгрузить нашу систему, но уже со стороны потребления ресурсов видеокарты, а не жёсткого диска. Например, для объектов, на которых не нужно отображать тени (например, экран дисплея или искра от лампы), мы можем использовать шейдер unlit, который снизит потребление ресурсов GPU.
Можно ли создать игры без ассетов?
Конечно, можно. Даже если не использовать стандартные примитивы, мы можем создавать объекты — те же примитивы — с помощью скриптов, ресурсов движка из кода, как наши «прадеды» из 80-90-х годов. Можно упростить себе жизнь и создавать уровни и персонажей из примитивов. Для создания уровней вам может пригодиться инструмент Pro Builder. Хотя с недавнего времени он встроен в движок, он всё же является ассетом для юнити :).
Где найти ассеты?
Как несложно догадаться, есть ассеты платные, есть бесплатные, а есть те, что вы создаёте сами для конкретных целей. Да, ассеты можно и нужно создавать самому.
На самом деле мало кому понравится игра, которая была собрана из кучи 2D и даже 3D ассетов для unity. Это связано с тем, что разные ассеты имеют разный стиль, графику, общее качество, что накладывает свой отпечаток. Невероятно сложно создать атмосферную игру полностью из скачанных или купленных ассетов. Поэтому я рекомендую делать игры, которые будут нести целостную атмосферу — пусть даже и с очень простой графикой.
В Сети есть немало площадок, где можно найти ассеты, начиная от Unity Asset Store и заканчивая сторонними магазинами вроде Syntystore.com или Sketchfab.com.
Зачем же тогда нужны ассеты?
Ответ простой: для прототипирования. Это дешёвый способ сделать набросок проекта и понять, стоит ли он будущих вложений. Однако даже это не гарантирует вам инвестиций, потому что всегда есть вероятность, что подобранные вами ассеты не создадут нужную атмосферу. Именно поэтому профессия арт-директора никогда не вымрет 🙂
Island Survival — пример мобильной игры, созданной полностью на бесплатных ассетах
Как создавать свои ассеты?
Создавать свои юнити ассеты не сложно, для этого достаточно использовать программы-редакторы.
Здесь вам понадобятся не только навыки работы с самими программами, но и понимание всей сферы деятельности. Например, для создания моделей нужно понимать их анатомию. Для создания звуков — знать саунд-дизайн, чтобы добиваться красивых звуковых эффектов или раздражающих и нервирующих звуков.
Как обмениваться ассетами?
Обмениваться ассетами в юнити достаточно просто. Если вы создали ассет сам по себе, вам достаточно просто предоставить своему коллеге исходники работы. Но если вы хотите переместить ассет из одного юнити в другой, то лучше использовать функцию «export package», чтобы гарантированно, без потери данных и настроек объекта перенести его из одного юнити в другой.
Если вы с друзьями работаете над одним проектом, то лучше использовать репозиторий. Я могу порекомендовать GitHub, но вообще разных сервисов, предоставляющих систему версионирования, в интернете много. Вы даже можете завести собственную систему, если пожелаете.
Освоить лучшие практики работы с ассетами в Unity и вообще вы сможете на факультете разработки игр Geek University. Кроме того, недавно у нас открылся факультет геймдизайна! Выбирайте, что интереснее 🙂 Ждём вас!
Чтобы разобраться с игровыми ассетами для Unity, для начала надо разобраться с ассетами в принципе. Игровой ассет (англ. Game Asset), также игровой ресурс — цифровой объект, преимущественно состоящий из однотипных данных, неделимая сущность, которая представляет часть игрового контента и обладает некими свойствами.
Каждый отдельный файл в нашем Unity-проекте — это неделимая сущность, а значит он является ассетом. Мы можем разделить ассеты юнити (и в принципе везде) на несколько типов.
Встроенные ассеты
Встроенные ассеты — это ассеты, являющиеся частью игрового движка. Они создаются и редактируются внутри самого движка. Туда входят:
Некоторых из вас, возможно, заинтересует, почему я отделил текстуру от спрайта. Дело в том, что спрайт от текстуры отличается именно возможностью настройки ассета. Ведь текстура — это просто набор пикселей, а спрайт — это объект, который обладает своей геометрией, что даёт нам много возможностей для настройки. Именно поэтому за основу работы UI взят именно спрайт, а не текстура. Подробнее о настройках ассетов в юнити и вообще мы поговорим дальше.
Ассеты, которые не являются частью игрового движка
Помимо встроенных ассетов, есть и ассеты, которые не являются частью игрового движка. Они могут создаваться с помощью различных программ, включая написанные на С#.
Настройка ассетов
Как ни странно, но конечный вид ассетов на сцене зависит от настройки ассетов. Настройка одних ассетов может повлиять не только на внешний вид, но и на производительность. Например, настраивая аудиомикшер, вы изменяете только уровни громкости и, возможно, аудиоэффекты — на производительности проекта это особо не скажется. Но настраивая материалы или текстуры, вы можете повлиять не только на конечный вес вашего приложения, но и на производительность рендеринга в целом.
Если понизить разрешение с 2048 до 1024, мы сократим конечный вес текстуры почти в 5 раз. Выгода очевидна.
Подобное, увы, работает не со всеми ассетами в юнити, поэтому некоторые ассеты придётся «облегчать» на этапе их создания или в сторонних программах.
Настраивая материалы и их шейдеры, мы тоже можем разгрузить нашу систему, но уже со стороны потребления ресурсов видеокарты, а не жёсткого диска. Например, для объектов, на которых не нужно отображать тени (например, экран дисплея или искра от лампы), мы можем использовать шейдер unlit, который снизит потребление ресурсов GPU.
Можно ли создать игры без ассетов?
Конечно, можно. Даже если не использовать стандартные примитивы, мы можем создавать объекты — те же примитивы — с помощью скриптов, ресурсов движка из кода, как наши «прадеды» из 80-90-х годов. Можно упростить себе жизнь и создавать уровни и персонажей из примитивов. Для создания уровней вам может пригодиться инструмент Pro Builder. Хотя с недавнего времени он встроен в движок, он всё же является ассетом для юнити :).
Где найти ассеты?
Как несложно догадаться, есть ассеты платные, есть бесплатные, а есть те, что вы создаёте сами для конкретных целей. Да, ассеты можно и нужно создавать самому.
На самом деле мало кому понравится игра, которая была собрана из кучи 2D и даже 3D ассетов для unity. Это связано с тем, что разные ассеты имеют разный стиль, графику, общее качество, что накладывает свой отпечаток. Невероятно сложно создать атмосферную игру полностью из скачанных или купленных ассетов. Поэтому я рекомендую делать игры, которые будут нести целостную атмосферу — пусть даже и с очень простой графикой.
В Сети есть немало площадок, где можно найти ассеты, начиная от Unity Asset Store и заканчивая сторонними магазинами вроде Syntystore.com или Sketchfab.com.
Зачем же тогда нужны ассеты?
Ответ простой: для прототипирования. Это дешёвый способ сделать набросок проекта и понять, стоит ли он будущих вложений. Однако даже это не гарантирует вам инвестиций, потому что всегда есть вероятность, что подобранные вами ассеты не создадут нужную атмосферу. Именно поэтому профессия арт-директора никогда не вымрет 🙂
Island Survival — пример мобильной игры, созданной полностью на бесплатных ассетах
Как создавать свои ассеты?
Создавать свои юнити ассеты не сложно, для этого достаточно использовать программы-редакторы.
Здесь вам понадобятся не только навыки работы с самими программами, но и понимание всей сферы деятельности. Например, для создания моделей нужно понимать их анатомию. Для создания звуков — знать саунд-дизайн, чтобы добиваться красивых звуковых эффектов или раздражающих и нервирующих звуков.
Как обмениваться ассетами?
Обмениваться ассетами в юнити достаточно просто. Если вы создали ассет сам по себе, вам достаточно просто предоставить своему коллеге исходники работы. Но если вы хотите переместить ассет из одного юнити в другой, то лучше использовать функцию «export package», чтобы гарантированно, без потери данных и настроек объекта перенести его из одного юнити в другой.
Если вы с друзьями работаете над одним проектом, то лучше использовать репозиторий. Я могу порекомендовать GitHub, но вообще разных сервисов, предоставляющих систему версионирования, в интернете много. Вы даже можете завести собственную систему, если пожелаете.
Освоить лучшие практики работы с ассетами в Unity и вообще вы сможете на факультете разработки игр Geek University. Кроме того, недавно у нас открылся факультет геймдизайна! Выбирайте, что интереснее 🙂 Ждём вас!
Что такое Unity Asset Store и как на нем зарабатывать?
Доброго времени суток, Habr! Я являюсь паблишером Asset Store уже 4 года и хочу поделиться с вами своим опытом. Расскажу вам что такое Unity Asset Store глазами программиста и что нужно знать для создания ассета.
Итак, что же такое этот Unity Asset Store? Это магазин в котором можно приобрести ассеты для Unity, такие как 3D модели, звуки/музыка, наборы UI, шейдеры/частицы, наборы спрайтов, а так же инструменты. Asset Store был создан в 2010 году и не так давно ему исполнилось 10 лет! Практически в любом проекте Unity можно встретить ассеты, которые делают процесс разработки более комфортным и быстрым. Если вы знакомы с Unity, у вас есть идея и желание, то вы можете стать паблишером и увеличить свой пассивный (но это не точно) доход.
Что нужно для создания ассета?
Создание ассета
Итак, вы определись с тематикой и содержанием ассета, далее необходимо реализовать задумку.
При создании ассета следует учитывать некоторые моменты:
Документация
Качественная документация — залог довольных покупателей. Когда вопросы пользователей повторяются — это явный признак того, что какие-то узкие места стоит вынести в документацию и описать максимально просто и понятно. Если пользователи вам не пишут с вопросами об ассете, а в отзывах появляются 5 звезд — это показатель того, что документация написана отлично. Знание английского должно быть не ниже уровня Intermediate.
Подготовка перед публикацией
Перед публикацией необходимо создать ассет в панели паблишера Asset Store:
Ассет опубликован, что дальше?
Поздравляю! Теперь дело за малым — ассет можно продвигать, для базового продвижения подойдут:
В качестве контента для продвижения можно использовать описание ассета и/или демонстрация его фичей, которые смогут заинтересовать пользователей. В целом продвижение — очень опциональная вещь. Некоторые из ассетов я вовсе нигде не постил, но люди все равно их находят и покупают, видимо здесь большую роль играют теги в сторе и Youtube.
Если вы опубликовали платный ассет, его нужно поддерживать, а именно:
Аналитика
Asset Store предлагает использовать в качестве сервиса аналитики Google Analytics. Для этого достаточно указать Tracking ID в консоли паблишера. Так вы сможете понять — географию ваших клиентов, сколько посещений страниц было сегодня у ваших ассетов, как меняется динамика посещений и т. д. Очень удобный и полезный инструмент!
Отзывы пользователей
Отличный показатель для пользователей которые присматриваются к покупке ассета — наличие положительных отзывов. Даже если вам поставили 1 звезду, не стоит отчаиваться, достаточно вежливо и непредвзято, в ответе на отзыв, сообщить пользователю что вы намерены помочь с возникшей проблемой и попросить сообщить о проблеме максимально детально, предоставив свои контакты. С негативными отзывами нужно работать и игнорировать их — худший вариант. Если пользователь вам напишет и вы сможете ему помочь, он может исправить свою оценку.
Вывод средств
Asset Store поддерживает 2 способа выплат:
Плюсы и минусы Asset Store
Плюсы
Минусы
Результаты
После публикации моего дебютного ассета, за первый месяц Asset Store принес мне 56$. А за полгода на счету было уже 316.8$. Я не строил никаких ожиданий касательно Asset Store и вполне доволен результатом. Особенно, если учитывать, что в основном это пассивный доход.
За 4 года я опубликовал 14 ассетов, которые приносят мне неплохой дополнительный заработок. По большей части — это мой Pet-project, над которым я работаю в свободное от основной работы время, получая от этого огромное удовольствие.
Asset Store — отличная площадка для разработчиков Unity, здесь вы можете найти нужный инструмент, а так же придумать, реализовать и опубликовать свой.
Если кто-то занимается аналогичным творчеством, пишите, буду рад вашим мыслям и комментариям!