Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр
Собирайте комбинации из блоков! Бесконечный режим, более 100 уровней, ежедневные задания и турниры.

Расслабьтесь и отдохните: игра без ограничений по времени.

Проверьте свою смекалку: головоломка для любителей

Блоки Судоку - расслабляющая головоломка

Головоломки, Гиперказуальные, Мобильная

Играть

Топ прошлой недели

  • AlexKud AlexKud 38 постов
  • SergeyKorsun SergeyKorsun 12 постов
  • SupportHuaport SupportHuaport 5 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня

Unity3D

С этим тегом используют

Gamedev Unity Игры Разработка Инди игра Инди Компьютерные игры Все
992 поста сначала свежее
23
sambahopkins
sambahopkins
8 лет назад
Лига Разработчиков Видеоигр

Делаем Тунца - два!⁠⁠

Ну что же, после некоторого перерыва - продолжаем.

Начало здесь: http://pikabu.ru/story/delaem_tuntsa__raz_4489410

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

Для удобства я создал пустой объект и собрал в него все элементы моря. А теперь создаем в этом нашем общем море еще один элемент - тоже пустой объект и в нем добавляем один очень интересный компонент:

Делаем Тунца - два! Unity3D, Android, Windows Phone, Игры, Gamedev, Аркадные игры, Туториал, Длиннопост

И еще один компонент:

Делаем Тунца - два! Unity3D, Android, Windows Phone, Игры, Gamedev, Аркадные игры, Туториал, Длиннопост

Теперь настраиваем в Buoyancy Effector параметр Surface Level так, чтобы поверхность воды примерно совпадало с нижней линией волн. А в Box Collider 2D настраиваем его размеры так, чтобы всё море до дна было "водой", которая будет выталкивать нашего тюленя к своей поверхности.

Делаем Тунца - два! Unity3D, Android, Windows Phone, Игры, Gamedev, Аркадные игры, Туториал, Длиннопост

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

Делаем Тунца - два! Unity3D, Android, Windows Phone, Игры, Gamedev, Аркадные игры, Туториал, Длиннопост

После добавления компонента Rigidbody2D добавляем еще один - Circle Collider 2D:

Делаем Тунца - два! Unity3D, Android, Windows Phone, Игры, Gamedev, Аркадные игры, Туториал, Длиннопост

И настраиваем размер коллайдера:

Делаем Тунца - два! Unity3D, Android, Windows Phone, Игры, Gamedev, Аркадные игры, Туториал, Длиннопост

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

Делаем Тунца - два! Unity3D, Android, Windows Phone, Игры, Gamedev, Аркадные игры, Туториал, Длиннопост

И вот что будет в том скрипте:

Делаем Тунца - два! Unity3D, Android, Windows Phone, Игры, Gamedev, Аркадные игры, Туториал, Длиннопост

Настройки Buoyancy Effector, массу тюленя в его Rigidbody2D, а так же нижнюю и верхнюю границу для ныряния в скрипте, в методе FixedUpdate() попробуйте менять, чтобы получить наиболее (на ваш взгляд) реалистичное движение персонажа. На сегодня всё, в следующий раз будем делать первых врагов и пищу тюленя.

Напоминаю, что установить готовую игру, чтобы увидеть результат можно здесь для Андроида: https://play.google.com/store/apps/details?id=com.FRN.tuna

и здесь для Windows Phone: https://www.microsoft.com/ru-ru/store/p/tuna/9nblggh4td3k

Показать полностью 8
[моё] Unity3D Android Windows Phone Игры Gamedev Аркадные игры Туториал Длиннопост
4
109
umb16
umb16
8 лет назад
Лига Разработчиков Видеоигр

История разработки Rencounter⁠⁠

История разработки Rencounter Gamedev, Unity3D, Длиннопост, Rencounter

Всё началось в декабре 2012-го.


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


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


И как-то раз перед уходом на зимние каникулы мы решили попробовать сделать собственную игру. Причем вдохновились мы проектом который делали на работе (что-то вроде клона "Бойцовского клуба" - некогда очень популярная в рунете браузерная онлайн игра).

Мы хотели сделать онлайн PvP игру с очень простой механикой, чтобы люди могли играть с разных устройств одинаково комфортно. Название Rencounter появилось именно на этом этапе разработки, подразумевалось, что вы встречаетесь с противниками случайно, находясь в пути к какой-то цели.

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


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


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

В дальнейшем мы планировали расширить всё это до групповых боёв, добавить в игру умения и т.д


Выглядело всё это так:

История разработки Rencounter Gamedev, Unity3D, Длиннопост, Rencounter
История разработки Rencounter Gamedev, Unity3D, Длиннопост, Rencounter
История разработки Rencounter Gamedev, Unity3D, Длиннопост, Rencounter
История разработки Rencounter Gamedev, Unity3D, Длиннопост, Rencounter

Но немного протестировав прототип и показав его знакомым, мы решили, что хотим сделать что-то большее. (далее такое повторится не раз)

И где-то с 1 июля начали экспериментировать с графикой, системой боя, интерфейсами и сетевым взаимодействием игроков.


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


Концепт пещеры:

История разработки Rencounter Gamedev, Unity3D, Длиннопост, Rencounter

Скриншоты из прототипа:

История разработки Rencounter Gamedev, Unity3D, Длиннопост, Rencounter
История разработки Rencounter Gamedev, Unity3D, Длиннопост, Rencounter

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


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


В этот период я решил сделать игру OK! A drain., которая являлась моим собственным переосмыслением arkanoid’о подобных игр. Я работал над ней почти 12 дней почти без перерывов на сон.

Если честно это было похоже на какую-то одержимость такого до этого я не испытывал никогда.

Ну да речь не о том, после выпуска демоверсии я вернулся к работе над Rencounter’ом.


Работа шла как-то медленно, мы не совсем понимали, чего хотим.

Добавили карту и перемещение по ней как в старых Follaut'ах.

История разработки Rencounter Gamedev, Unity3D, Длиннопост, Rencounter

Иллюстрация которая служила фоном для интерфейса в городе:

История разработки Rencounter Gamedev, Unity3D, Длиннопост, Rencounter

Немного подтянули графику:

История разработки Rencounter Gamedev, Unity3D, Длиннопост, Rencounter
История разработки Rencounter Gamedev, Unity3D, Длиннопост, Rencounter

В декабре мы узнали о событии с довольно пафосным названием "Game development world championship 2013" и решили в нем поучаствовать, надеясь на то, что сможем выиграть Unity3d Pro.


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


Была собрана рабочая сетевая версия с возможностью играть как в кооперативе (серия комнат с боссом в конце), так и PvP бои 3 против 3.

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


Кадры из прототипа для конкурса:

История разработки Rencounter Gamedev, Unity3D, Длиннопост, Rencounter
История разработки Rencounter Gamedev, Unity3D, Длиннопост, Rencounter
История разработки Rencounter Gamedev, Unity3D, Длиннопост, Rencounter

Мы вошли в 11 лучших проектов этого конкурса (не знаю почему 11, но организаторы отобрали именно 11), но к сожалению мы не заняли призового места, но участие в нем дало нам огромный толчок.


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


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


Скриншоты из синглплеерной версии:

История разработки Rencounter Gamedev, Unity3D, Длиннопост, Rencounter
История разработки Rencounter Gamedev, Unity3D, Длиннопост, Rencounter

К сожалению сроки были очень сжатые и игра была не так хороша как хотелось бы.


В начале апреля мы выложили web версию игры на Kongregate, рассчитывая получить обратную связь. Нас очень вдохновляло, что есть люди, которым нравится наша игра. И мы стали дорабатывать её, прислушиваясь к пользователям.

Попутно подготавливали её к работе на мобильных устройствах.

Была добавлена небольшая предыстория состоящая из нескольких иллюстраций с текстом, и несколько концовок.

История разработки Rencounter Gamedev, Unity3D, Длиннопост, Rencounter
История разработки Rencounter Gamedev, Unity3D, Длиннопост, Rencounter
История разработки Rencounter Gamedev, Unity3D, Длиннопост, Rencounter

В конце апреля мы поучаствовали в Games Jam: Gamm и за неделю сделали игру Stazis (http://www.indiedb.com/games/stazis), но призового места не заняли.



В июле была выпущена бесплатная версия Rencounter для Android.


Игра обросла приличным количеством нововведений, но всё ещё была очень далека от той, которую видели мы в финале.


Наши деньги подходили к концу, и мы решили выпустить платную версию игры на iOS и Android.

Продажи были очень слабыми и в августе нам пришлось пойти на работу, попутно делая ещё одну игру для конкурса на основе Stazis - Zealot(http://www.indiedb.com/games/zealot), мы вновь не заняли призового места.


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

Но в декабре 2014го мне написал один из покупателей платной версии на Android, он предложил выложить игру в Steam и таким образом заработать денег на дальнейшую разработку.

Каким бы странным не было его предложение мы решили попробовать пройти Steam Greenlight.


На этом история не заканчивается, продолжение я напишу в следующем посте.

Показать полностью 19
[моё] Gamedev Unity3D Длиннопост Rencounter
28
126
Sghwarzengold
8 лет назад
Лига Разработчиков Видеоигр

От туториала до релиза⁠⁠

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

От туториала до релиза Gamedev, Unity3D, Разработка игр, Мобильные игре, Длиннопост

В прошлом году я решил изучить Unity3D. За плечами уже было 5 лет опыта работы разработчиком. Вспомнив, зачем я вообще начал учить программирование когда-то, я отсмотрел залпом туториал по 2D рогалику. Поскольку учиться я привык на практике - мне нужна была идея для первой игры. Выручила сестра:


- лягуха на кувшинках

- мило и вроде не сложно

- короче болото

- кувшинки

- и мухи

- и тут лягуха начинает такая убивать всё что видит


Сказано - сделано. Через пару часов работы был готов "арт" и прототип. Собственно, на этом и хотел остановиться и заняться чем-то следующим... Но я залип минут на 15 поедая мух. Допилив немного динамику и логику движения этих самых мух, решил сделать полноценную игру. Зачем? Ну чтобы пройти все муки геймдева залпом - найти нужных людей, разобраться в нюансах работы с маркетами и просто таки начать делать игры.


К слову, первый прототип выглядел так:

От туториала до релиза Gamedev, Unity3D, Разработка игр, Мобильные игре, Длиннопост

Для поиска художника я вывесил объявление на gamedev.ru и в комьюнитиUnity3D в спецразделе. Через месяц переписок и поисков нашлась Катя. Человек, который вместо долгих разговоров прислал через несколько часов саму лягушку.

От туториала до релиза Gamedev, Unity3D, Разработка игр, Мобильные игре, Длиннопост

А на следующий день фон болота.

От туториала до релиза Gamedev, Unity3D, Разработка игр, Мобильные игре, Длиннопост

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

От туториала до релиза Gamedev, Unity3D, Разработка игр, Мобильные игре, Длиннопост

Потом был перерыв на НГ. После праздников у меня появилась возможность заниматься лягушкой на фулл тайме. Самая большая проблема была в том, что не было ни диздока, ни плана. Каждую неделю начинали со словами - в воскресенье уже можно релизиться. Так прошло 2 месяца.

Полностью оформился арт, 4 раза перерабатывалась концепция. Игра успела обзавестись встроенными покупками и потерять их.

От туториала до релиза Gamedev, Unity3D, Разработка игр, Мобильные игре, Длиннопост

В общем, прототипировали по живому.

Когда активная фаза завершилась - началось "ЗБТ". Имея в своем распоряжении младших брата и сестру, я немного отполировал геймплей, сделал подобие баланса и закрыл кучу багов.

От туториала до релиза Gamedev, Unity3D, Разработка игр, Мобильные игре, Длиннопост

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

Сам релиз лягухи, к слову, откладывался довольно долго - не было времени привести всё в порядок, постоянно хотелось что-то доделать. То анимация отваливалась, то размер самой игры не устраивал. Дозрела она только к июлю.

От туториала до релиза Gamedev, Unity3D, Разработка игр, Мобильные игре, Длиннопост

В следующую неделю после релиза я занимался тем, чем и все авторы статей - рассылал спам. То ли я не могу в маркетинг, то ли сказалась детская специфика игры, но про нас ВООБЩЕ никто не написал. Эппл стор показывал скачивания, народ играл, даже возвращался к ней, но отзывов не писал. В общем то так релиз и зафакапили. Я пробовал купить один обзор, но это абсолютно никак не повлияло на количество покупок.

Игра до сих пор продается по паре штук, об окупаемости речи не идет. Но главная цель достигнута - релиз нормальной игры с нормальной графикой. За то время, пока я писал эту игру, я приобрел очень много полезных навыков, а тот факт, что на проект можно дать ссылку, очень сильно мотивирует работать дальше в этом направлении. В конце концов теперь геймдев - это моя основная работа. Пусть пока что на "дядю", но я всё-таки оказался в той теме, ради которой вообще запустил в 2000 г. Турбопаскаль.


Если кого-то интересуют технические подробности или есть вопросы по процессу разработки с удовольствием отвечу в комментариях.


П.С. Для осиливших пост бонус: в наличии имеется с десяток ключей для андроида и ios, если кому надо пишите - вышлю

Показать полностью 7
[моё] Gamedev Unity3D Разработка игр Мобильные игре Длиннопост
95
15
sambahopkins
sambahopkins
8 лет назад
Лига Разработчиков Видеоигр

Делаем Тунца - раз!⁠⁠

Делаем Тунца - раз! Unity3D, Android, Windows Phone, Игры, Gamedev, Туториал, Пример, Длиннопост

У этого поста есть дубликат: http://pikabu.ru/story/delaem_tuntsa_1_4487033 - было бы здорово, наверное, если бы админы его удалили. Я вчера просто забыл прикрепить пост к сообществу, но всё таки он должен быть именно здесь, в Лиге.


Ну что же, раз два человека высказали заинтересованность, как и обещал, пишу пост о том, как сделать на Unity3D простенькую игру, вроде того самого Тунца, который, кстати, уже зарелизился не только для Андроида, но и для Виндовсфона, вот ссылки:

https://play.google.com/store/apps/details?id=com.FRN.tuna


https://www.microsoft.com/ru-ru/store/p/tuna/9nblggh4td3k


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


Для меня это первый опыт написания каких-то примеров, уроков по Юнити, так что пинайте меня ногами, тыкайте меня носом в мои ошибки (но не слишком больно).


Будем делать так: я создам в Юнити новый проект и заново сделаю игру. Правда, у меня уже заготовлены и скрипты и префабы и графика, так что я всё сделаю быстро. Вам же я не дам заготовок, ибо считаю, что намного полезнее самому набрать код, создать объекты и всё настроить, чем взять готовенький архивчик и оп-ля - урок пройден. Дело не обойдется одной статьей, хотя игра простенькая и маленькая. Будет их 3 или 4. А может и 5. Вообще первый будет рассказывать о том, как сделать скроллинг фонов в игре и будет он пробным, понравится ли, может быть что-то по-другому делать, всё по другому делать или вообще прекратить - жду отзывов и критики, короче говоря. Итак:



1. Идея


Будем считать, что Юнити у нас уже есть, установлено, мы зарегистрированы и т.д. и т.п., то есть можем запускать среду разработки и разрабатывать. Но, конечно же, игра начинается с идеи, с желания сделать что-то определенное, в определенном жанре. С Тунцом у меня всё было просто - еще на этапе первоначального знакомства захотелось сделать что-то вроде Корявой Птички, но немного другое, чтобы надо было не только уворачиваться, но и ловить, чтобы объекты на экране были не статичные, а движущиеся и... и... и еще что-нибудь, в результате раздумий над этим что-нибудь родилась идея перенести действия игры из воздуха под воду и единственным действием персонажа сделать не взлёт, а нырок.



2. Реализация


Как уже говорилось выше, я не стану рассказывать, где скачать и как установить Unity3D.


Мы сразу создаем 2D-проект и начнем делать игру. С чего же начать? Ну раз наш персонаж и все прочие в этой игре плывут в море, то очевидно, что с воды, дна и самого персонажа. Вам нужно нарисовать текстуры для воды и дна и спрайт для персонажа. Итак, у нас созданы текстуры, я импортировал их в Юнити (просто бросайте файлы драг-н-дропом в Assets и потом переключайте у них Texture Type со Sprite на Texture) и расположил эти текстуры на сцене.

Делаем Тунца - раз! Unity3D, Android, Windows Phone, Игры, Gamedev, Туториал, Пример, Длиннопост

Красота! Но наш персонаж будет постоянно плыть по морю, то есть волны должны двигаться, да и песок на дне. Поэтому придется сделать скроллинг нашим текстурам.

Для этого создаем на сцене объект типа Quad:

Делаем Тунца - раз! Unity3D, Android, Windows Phone, Игры, Gamedev, Туториал, Пример, Длиннопост

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

Делаем Тунца - раз! Unity3D, Android, Windows Phone, Игры, Gamedev, Туториал, Пример, Длиннопост

Пожалуй, стоит удалить текстуры, которые мы набросали до этого в сцену. Без ниж картина следующая:

Делаем Тунца - раз! Unity3D, Android, Windows Phone, Игры, Gamedev, Туториал, Пример, Длиннопост

Мелко как-то получилось, ну так возьмем и увеличим, поменяем значения Scale у нашего Quad (кстати, значение Scale по y на картинке у меня слишком большое, я его потом поменял на 10):

Делаем Тунца - раз! Unity3D, Android, Windows Phone, Игры, Gamedev, Туториал, Пример, Длиннопост

Ох, страсть то какая, ужасно выглядит, наверное, нужно сменить шейдер. Меняем шейдер со стандартного на Sprites-Diffuse:

Делаем Тунца - раз! Unity3D, Android, Windows Phone, Игры, Gamedev, Туториал, Пример, Длиннопост

И получаем уже что-то более-менее похожее на море и волны, а теперь проделываем всё это для второй текстуры волн и песка и видим уже что-то прямо таки похожее на сцену игры:

Делаем Тунца - раз! Unity3D, Android, Windows Phone, Игры, Gamedev, Туториал, Пример, Длиннопост

Небольшое пояснение: у нас будут волны, которые как бы между персонажем и нами и волны, которые за персонажем. А так же песок, до которого персонаж сможет опускаться. Нам нужно расположить песок на переднем плане, волны которые между персонажем и нами - за песком, а уже за ними - еще одни волны. А персонаж наш окажется между волнами. Для этого мы просто меняем координату Z в Position у компонента Transform нашего Quad. Песку поставим, например, 1, вторым волнам 1, а у первых волн пусть остается 0. Пора бы бросить в это море нашего тюленя!

Делаем Тунца - раз! Unity3D, Android, Windows Phone, Игры, Gamedev, Туториал, Пример, Длиннопост

Выбираем наш Quad и видим, что в нем есть некоторые компоненты. Нам не понадобится компонент Mesh Collider, поэтому удаляем его:

Делаем Тунца - раз! Unity3D, Android, Windows Phone, Игры, Gamedev, Туториал, Пример, Длиннопост

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

Делаем Тунца - раз! Unity3D, Android, Windows Phone, Игры, Gamedev, Туториал, Пример, Длиннопост

Итак, мы сделали воду достаточно прозрачной и тюлень стал виден, когда он всплывёт на поверхность, будет видна граница воды на его тельце, а так же дальние волны у нас отличаются оттенком от передних. Отлично. Теперь нужно сделать, чтобы волны двигались. Для этого создаем в Quad новый компонент - скрипт:

Делаем Тунца - раз! Unity3D, Android, Windows Phone, Игры, Gamedev, Туториал, Пример, Длиннопост

Называем скрипт WaterController. Открываем его и вводим такой код:



using UnityEngine;


using System.Collections;



public class WaterController : MonoBehaviour {



public float scrollSpeed;


private Vector2 savedOffset;


private Material mat;


private float offset = 0f;



void Start () {


mat = GetComponent<Renderer> ().material;


savedOffset = mat.GetTextureOffset ("_MainTex");


}



void Update () {


float rate = scrollSpeed * Time.deltaTime;


offset = offset + rate;


if (offset <= -1f || offset >= 1f) {


offset = 0f;


rate = 0f;


}


mat.mainTextureOffset = new Vector2 (offset, savedOffset.y);


}



}


Пожалуйста, озаботьтесь табуляцией самостоятельно, пикабу ее почему-то "съедает".


Сохраняем скрипт. Что происходит в нашем скрипте? В методе Start() определяется наш материал, который использует наш Quad и offset нашего материала. В методе Update() каждый кадр offset меняется и таким образом создается эффект скроллинга текстуры.


Запускаем наш проект... Тюлень в воде висит, но ничего никуда не двигается. Смотрим тогда на наш компонент Скрипт (или в код) и видим, что есть public переменная scrollSpeed. Делаем скорость, скажем, 0.2. И еще один нюанс: идем в наши текстуры и меняем Wrap Mode с Clamp на Repeat, чтобы скроллинг был закольцован. Теперь добавляем наш скрипт (уже не надо создавать новый) ко вторым волнам и к песку и выставляем им скорость , скажем пусть у дальних волн она будет 0.1, у ближних 0.2, а у песка - 0.3 (не забываем так же и про Wrap) и... Всё прекрасно работает!


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

Показать полностью 11
[моё] Unity3D Android Windows Phone Игры Gamedev Туториал Пример Длиннопост
4
2
sambahopkins
sambahopkins
8 лет назад

Делаем Тунца 1⁠⁠

Делаем Тунца 1 Unity3D, Android, Windows Phone, Игры, Gamedev, Туториал, Длиннопост

Ну что же, раз два человека высказали заинтересованность, как и обещал, пишу пост о том, как сделать на Unity3D простенькую игру, вроде того самого Тунца, который, кстати, уже зарелизился не только для Андроида, но и для Виндовсфона, вот ссылки:

https://play.google.com/store/apps/details?id=com.FRN.tuna

https://www.microsoft.com/ru-ru/store/p/tuna/9nblggh4td3k

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

Для меня это первый опыт написания каких-то примеров, уроков по Юнити, так что пинайте меня ногами, тыкайте меня носом в мои ошибки (но не слишком больно).

Будем делать так: я создам в Юнити новый проект и заново сделаю игру. Правда, у меня уже заготовлены и скрипты и префабы и графика, так что я всё сделаю быстро. Вам же я не дам заготовок, ибо считаю, что намного полезнее самому набрать код, создать объекты и всё настроить, чем взять готовенький архивчик и оп-ля - урок пройден. Дело не обойдется одной статьей, хотя игра простенькая и маленькая. Будет их 3 или 4. А может и 5. Вообще первый будет рассказывать о том, как сделать скроллинг фонов в игре и будет он пробным, понравится ли, может быть что-то по-другому делать, всё по другому делать или вообще прекратить - жду отзывов и критики, короче говоря. Итак:


1. Идея

Будем считать, что Юнити у нас уже есть, установлено, мы зарегистрированы и т.д. и т.п., то есть можем запускать среду разработки и разрабатывать. Но, конечно же, игра начинается с идеи, с желания сделать что-то определенное, в определенном жанре. С Тунцом у меня всё было просто - еще на этапе первоначального знакомства захотелось сделать что-то вроде Корявой Птички, но немного другое, чтобы надо было не только уворачиваться, но и ловить, чтобы объекты на экране были не статичные, а движущиеся и... и... и еще что-нибудь, в результате раздумий над этим что-нибудь родилась идея перенести действия игры из воздуха под воду и единственным действием персонажа сделать не взлёт, а нырок.


2. Реализация

Как уже говорилось выше, я не стану рассказывать, где скачать и как установить Unity3D.

Мы сразу создаем 2D-проект и начнем делать игру. С чего же начать? Ну раз наш персонаж и все прочие в этой игре плывут в море, то очевидно, что с воды, дна и самого персонажа. Вам нужно нарисовать текстуры для воды и дна и спрайт для персонажа. Итак, у нас созданы текстуры, я импортировал их в Юнити (просто бросайте файлы драг-н-дропом в Assets и потом переключайте у них Texture Type со Sprite на Texture) и расположил эти текстуры на сцене.

Делаем Тунца 1 Unity3D, Android, Windows Phone, Игры, Gamedev, Туториал, Длиннопост

Красота! Но наш персонаж будет постоянно плыть по морю, то есть волны должны двигаться, да и песок на дне. Поэтому придется сделать скроллинг нашим текстурам.

Для этого создаем на сцене объект типа Quad:

Делаем Тунца 1 Unity3D, Android, Windows Phone, Игры, Gamedev, Туториал, Длиннопост

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

Делаем Тунца 1 Unity3D, Android, Windows Phone, Игры, Gamedev, Туториал, Длиннопост

Пожалуй, стоит удалить текстуры, которые мы набросали до этого в сцену. Без ниж картина следующая:

Делаем Тунца 1 Unity3D, Android, Windows Phone, Игры, Gamedev, Туториал, Длиннопост

Мелко как-то получилось, ну так возьмем и увеличим, поменяем значения Scale у нашего Quad (кстати, значение Scale по y на картинке у меня слишком большое, я его потом поменял на 10):

Делаем Тунца 1 Unity3D, Android, Windows Phone, Игры, Gamedev, Туториал, Длиннопост

Ох, страсть то какая, ужасно выглядит, наверное, нужно сменить шейдер. Меняем шейдер со стандартного на Sprites-Diffuse:

Делаем Тунца 1 Unity3D, Android, Windows Phone, Игры, Gamedev, Туториал, Длиннопост

И получаем уже что-то более-менее похожее на море и волны, а теперь проделываем всё это для второй текстуры волн и песка и видим уже что-то прямо таки похожее на сцену игры:

Делаем Тунца 1 Unity3D, Android, Windows Phone, Игры, Gamedev, Туториал, Длиннопост

Небольшое пояснение: у нас будут волны, которые как бы между персонажем и нами и волны, которые за персонажем. А так же песок, до которого персонаж сможет опускаться. Нам нужно расположить песок на переднем плане, волны которые между персонажем и нами - за песком, а уже за ними - еще одни волны. А персонаж наш окажется между волнами. Для этого мы просто меняем координату Z в Position у компонента Transform нашего Quad. Песку поставим, например, 1, вторым волнам 1, а у первых волн пусть остается 0. Пора бы бросить в это море нашего тюленя!

Делаем Тунца 1 Unity3D, Android, Windows Phone, Игры, Gamedev, Туториал, Длиннопост

Выбираем наш Quad и видим, что в нем есть некоторые компоненты. Нам не понадобится компонент Mesh Collider, поэтому удаляем его:

Делаем Тунца 1 Unity3D, Android, Windows Phone, Игры, Gamedev, Туториал, Длиннопост

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

Делаем Тунца 1 Unity3D, Android, Windows Phone, Игры, Gamedev, Туториал, Длиннопост

Итак, мы сделали воду достаточно прозрачной и тюлень стал виден, когда он всплывёт на поверхность, будет видна граница воды на его тельце, а так же дальние волны у нас отличаются оттенком от передних. Отлично. Теперь нужно сделать, чтобы волны двигались. Для этого создаем в Quad новый компонент - скрипт:

Делаем Тунца 1 Unity3D, Android, Windows Phone, Игры, Gamedev, Туториал, Длиннопост

Называем скрипт WaterController. Открываем его и вводим такой код:


using UnityEngine;

using System.Collections;


public class WaterController : MonoBehaviour {


public float scrollSpeed;

private Vector2 savedOffset;

private Material mat;

private float offset = 0f;


void Start () {

mat = GetComponent<Renderer> ().material;

savedOffset = mat.GetTextureOffset ("_MainTex");

}


void Update () {

float rate = scrollSpeed * Time.deltaTime;

offset = offset + rate;

if (offset <= -1f || offset >= 1f) {

offset = 0f;

rate = 0f;

}

mat.mainTextureOffset = new Vector2 (offset, savedOffset.y);

}


}

Пожалуйста, озаботьтесь табуляцией самостоятельно, пикабу ее почему-то "съедает".

Сохраняем скрипт. Что происходит в нашем скрипте? В методе Start() определяется наш материал, который использует наш Quad и offset нашего материала. В методе Update() каждый кадр offset меняется и таким образом создается эффект скроллинга текстуры.

Запускаем наш проект... Тюлень в воде висит, но ничего никуда не двигается. Смотрим тогда на наш компонент Скрипт (или в код) и видим, что есть public переменная scrollSpeed. Делаем скорость, скажем, 0.2. И еще один нюанс: идем в наши текстуры и меняем Wrap Mode с Clamp на Repeat, чтобы скроллинг был закольцован. Теперь добавляем наш скрипт (уже не надо создавать новый) ко вторым волнам и к песку и выставляем им скорость , скажем пусть у дальних волн она будет 0.1, у ближних 0.2, а у песка - 0.3 (не забываем так же и про Wrap) и... Всё прекрасно работает!

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

Показать полностью 11
[моё] Unity3D Android Windows Phone Игры Gamedev Туториал Длиннопост
4
106
eono
8 лет назад
Лига Разработчиков Видеоигр

Субботний скриншот⁠⁠

По вечерам делаю стратегию моей мечты, в которой нужно будет привести свою династию к богатству и власти. Что-то вроде Crusader Kings + The Guild 2

Субботний скриншот Gamedev, Unity3D, Low poly, Screenshotsaturday
[моё] Gamedev Unity3D Low poly Screenshotsaturday
48
142
meGGa
meGGa
8 лет назад
Лига Разработчиков Видеоигр

Возможно моя новая игра⁠⁠

Возможно моя новая игра
[моё] Gamedev Unity3D Low poly Разработка игр Моё Гифка
56
Партнёрский материал Реклама
specials
specials

Сколько нужно времени, чтобы уложить теплый пол?⁠⁠

Точно не скажем, но в нашем проекте с этим можно справиться буквально за минуту одной левой!

Попробовать

Ремонт Теплый пол Текст
12
sambahopkins
sambahopkins
8 лет назад
Лига Разработчиков Видеоигр

Tuna! Тунец!⁠⁠

Привет всем!
Внезапно доделал и довел до маркета очередную игру. Игрушка очень простая, может быть поэтому у меня никак не придумывается длиннопост. Просто хотелось сделать игру в духе "корявой птички", чтобы было простое управление, простой геймплей, простая графика, всё простое. Вроде бы получилось. Вот она - Tuna! Просто жмите в экран и тюлень будет нырять ко дну, не жмите - и он всплывёт на поверхность воды. Ловите и ешьте тунца, играйте с дельфинами и пингвинами - всё это повышает жизнь, и избегайте всех прочих тварей морских - они враги тюленя и понижают жизнь. И так до бесконечности.


https://play.google.com/store/apps/details?id=com.FRN.tuna


Пока только на Андроид, релиз на Виндовсфон как обычно дня через 2-3 - сертификация длительная ибо.

Простите за короткопост. Нет, ну серьезно, какой тут может быть длиннопост? :) Рассказать о том, как устроена игра, как она сделана? Могу, если это кому-то интересно.

Tuna! Тунец! Игры, Аркадные игры, Android, Unity3D, Длиннопост
Tuna! Тунец! Игры, Аркадные игры, Android, Unity3D, Длиннопост
Tuna! Тунец! Игры, Аркадные игры, Android, Unity3D, Длиннопост
Tuna! Тунец! Игры, Аркадные игры, Android, Unity3D, Длиннопост
Tuna! Тунец! Игры, Аркадные игры, Android, Unity3D, Длиннопост
Показать полностью 5
[моё] Игры Аркадные игры Android Unity3D Длиннопост
20
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии