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

Башня

Аркады, Строительство, На ловкость

Играть

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

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

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

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

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

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

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

Android + Gamedev

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

Игры Смартфон Приложение iOS Телефон Google Play iPhone Инди Разработка Инди игра Unity Компьютерные игры YouTube Все
567 постов сначала свежее
14
sambahopkins
sambahopkins
8 лет назад
Лига Разработчиков Видеоигр

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

Прошла неделя и таки продолжаем. Начала здесь: http://pikabu.ru/story/delaem_tuntsa__dva_4503397

Итак, сегодня мы делаем первых врагов и пищу для нашего тюленя. Сразу создадим папку Prefabs и закинем в нее самого Тюленя со сцены, пусть лежит там тоже:

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

Затем берем спрайты наших пищи и врагов - это будут медуза и тунец и кидаем их в папку спрайты, потом вытаскиваем на сцену и добавляем каждому из них компонент Polygon Collider 2D, ставим у компонента параметр isTrigger в true. Понадобится он нам чуть позже и не раз.

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

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

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

Создадим на сцене два пустых объекта и назовем их medusaFactory и tunaFactory - эти объекты будут порождать наших медуз и тунца.

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

Добавим нашим фабрикам иконки, чтобы мы их видели и расположим их в правой части экрана, за пределами видимости камеры.

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

Добавим к одной из наших фабрик новый скрипт и назовем его FactoryController.

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

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

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

Добавим уже готовый скрипт и ко второй фабрике и настроим наши значения: Min и Max Time Out будут отвечать за то, какую минимальную и максимальную паузу нужно делать между генерацией объектов, MinY и MaxY за то, где по оси Y генерировать новый объект, ну и Prefab - это наш объект, чтобы задать его, берем в папке Prefabs тунца и тащим его в это поле у tunaFactory, аналогично поступаем и с медузой и medusaFactory.

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

Далее, добавляем компонент - новый скрипт нашему тунцу, назовем его, скажем, MovingObjectController. И в скрипте том вот что:

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

Добавляем этот скрипт и медузе и настраиваем ей и тунцу максимальную и минимальную скорость.

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

Теперь, если мы запустим игру, медузы и тунцы начнут появляться и проплывать мимо тюленя справа налево. Однако, как не сложно догадаться, они будут плыть и плыть в никуда. Поэтому создадим еще один пустой объект, который назовем Terminator, поместим его слева за пределами видимости камеры, добавим ему компонент Box Collider, настроим его так, чтобы всё, чтобы проплывало по нашей воде, попадало в этот коллайдер, не забываем выставить isTrigger в true, так же добавляем компонент Rigidbody2D и ставим isKinematic в true и добавляем компонент - новый скрипт, который называем Terminator Controller.

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

А в скрипте этом совсем короткий код, который будет удалять всё, что попадет в коллайдер нашего терминатора:

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

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

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

Как сделать игру на Android.⁠⁠

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


Основной проблемой как всегда являются люди. Понимая что действительно качественный проект должен иметь команду, начал разрабатывать "Ubbee"(это название игры) с толковым программистом, сразу забегу на перед, он должен был сделать только 1ну вещь: передвижение основного героя, поскольку с помощью Unity мы не смогли добиться именно того передвижения, которое нам было нужно. За восемь месяцев работы, он это не сделал. Что в принципе уже не имело никакого значения, потому что все работа мной была уже выполнена, и я имел запасной план. Поскольку сам я программист так себе, по большей части все делаю через место которым явно не думать надо, да и вообще оно для этого не приспособленое, передвижения сделал не алгоритмом, а просто описал все возможные взаимодействия главного героя с окружающей средой (этот код занял более 10 000 строк, не считая вспомогательные скрипты, а их было около 15).


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

Вот на что были похожие уже более менее рабочие попытки:

Как  сделать игру на Android. Головоломка, Android, Игры, Мобильни, Gamedev, Длиннопост

Не хочу нагружать разнообразными историями которые были связаны с самим кодом, поскольку это скучно. Могу лишь сказать, что в процессе, разработчики Unity, провели много работы с исправлением различных багов, которые присутствовали в их программе. За это им огромное спасибо!

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

Как  сделать игру на Android. Головоломка, Android, Игры, Мобильни, Gamedev, Длиннопост

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

Когда более менее представление было составлено, что и как должно происходить в игровом процессе, приступил к основному меню и меню выбора уровня.
Основное меню:

Как  сделать игру на Android. Головоломка, Android, Игры, Мобильни, Gamedev, Длиннопост

Меню выбора уровня:

Как  сделать игру на Android. Головоломка, Android, Игры, Мобильни, Gamedev, Длиннопост

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

Как  сделать игру на Android. Головоломка, Android, Игры, Мобильни, Gamedev, Длиннопост

Остановился на этом:

Как  сделать игру на Android. Головоломка, Android, Игры, Мобильни, Gamedev, Длиннопост
Как  сделать игру на Android. Головоломка, Android, Игры, Мобильни, Gamedev, Длиннопост
Как  сделать игру на Android. Головоломка, Android, Игры, Мобильни, Gamedev, Длиннопост

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

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

Как  сделать игру на Android. Головоломка, Android, Игры, Мобильни, Gamedev, Длиннопост
Как  сделать игру на Android. Головоломка, Android, Игры, Мобильни, Gamedev, Длиннопост

Кстати, рекомендовал бы в процессе работы не забывать над оптимизацией не только кода, но и самих спрайтов (атласных картинок) поскольку это стало одной из самых больших моих ошибок. Из-за большого количества спрайтов, эта игра использует 200Мб оперативной памяти, для телефонов с 512 является убийственным явлением, игра иногда просто вылетает на них.
Конечно я придумал как это обойти, но для этого мне нужно переписать большие количество кода и переделать практически все анимации в игре. Это займет очень много времени ... Напримере покажу наглядно разницу как это выглядит:

Как  сделать игру на Android. Головоломка, Android, Игры, Мобильни, Gamedev, Длиннопост

С левой стороны новый спрайт, который заменяет 4 спрайты с правой стороны. Поэтому желательно подходить с головой к такой работе...
К сожалению та версия которая сейчас на Google Play еще со старыми спрайтами, но вскором времени я выпущу обновление, и Вы сами сможете убедиться как поднимется производительность.
И в завершение хочу дать несколько советов. Один из основных не сдавайтесь! У меня 100500 раз опускались руки а иногда даже впадал в депрессию, потому что не мог решить ту или иную проблему ... Уделяя время, ища ответы Вы найдете! Материала, который может Вам помочь сейчас множество в интернете, не считая сами форумы ... Не зря говорится, не отвлекаться надолго от разработки. Бывали моменты, когда я плевал на все, ничего не делал... Возвращаясь к работе, за неделю, вторую, мне приходилось просматривать весь код, что бы понять что я там сделал ..) Иногда бывают такие идеи, которые реализовать именно в этот момент невозможно. В таком случае рекомендую подумать стоит ли действительно зацикливаться над ними, так как это может затянуться на месяцы... По моему мнению лучше сделать готовый продукт, а в последующих, уверен, что Вы уже сможете реализовать свои идеи!
Желаю всем успехов!

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


Ссылка, которыю обещал: Ubbee

Показать полностью 11
[моё] Головоломка Android Игры Мобильни Gamedev Длиннопост
14
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
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
nnn777mmm
8 лет назад
Лига Разработчиков Видеоигр

Простая игра на Android для детей⁠⁠

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

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

Простая игра на Android для детей Игры на Android, Приключения, Морские, Android, Gamedev, Nautical Adventures
Игры на Android Приключения Морские Android Gamedev Nautical Adventures
19
0
phonecrusher
phonecrusher
8 лет назад

Постапокалиптический шутер с открытым миром на мобилки и о том, как мы к этому пришли :)⁠⁠

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

Постапокалиптический шутер с открытым миром на мобилки и о том, как мы к этому пришли :) Indiedev, Gamedev, Android, Чернобыль, Зона, Unity, Моё, Видео, Длиннопост

Пойдем по порядку. Наверное, кто-то вспомнит про гоночки на внедоржниках, о которых я писал тут - http://pikabu.ru/story/delaem_igru_mechtyi_pro_gonki_na_vned...

Постапокалиптический шутер с открытым миром на мобилки и о том, как мы к этому пришли :) Indiedev, Gamedev, Android, Чернобыль, Зона, Unity, Моё, Видео, Длиннопост

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


А теперь о хорошем, т.е. об этой новой игре.


Это постапокалиптический шутер с бесшовным открытым миром про катастрофу на ЧАЭС. Главная задумка проекта - сделать огромный бесшовный и максимально реалистичный живой мир (в пределах возможного, разумеется). Сюжет, как таковой, в игре отсутствует, но уже продумана система квестов, которая его заменит. В финале каждое прохождение игры будет уникальным, а игра будет выдавать новые квесты до тех пор, пока те не закончатся. Возможно будет генератор этих квестов и тогда игра будет бесконечной, но пока это просто идея и ее надо хорошо обдумать, т.к. мы хотим постараться сделать больше оригинальных заданий. В идеале в конце добавится возможность играть в игру с друзьями в кооперативе и со всеми в мультиплеере. Мультиплеер пока только в очень далеких планах и в итоге его может и не быть.

Постапокалиптический шутер с открытым миром на мобилки и о том, как мы к этому пришли :) Indiedev, Gamedev, Android, Чернобыль, Зона, Unity, Моё, Видео, Длиннопост

Что уже реализовано:

-Полноценный персонаж, который ходит, приседает, бегает, прыгает и стреляет, имеет потребности в еде, воде и отдыхе;

-Маленький кусочек (область 1х1км) игрового мира;

-Большое количество мелких деталей в зданиях, на улице, большие леса;

-Смена суток и погоды;

-Выбросы;

-Простая система AI (на первое время, пока разрабатывается очень сложный продвинутый AI для симуляции жизни людей, животных и всяких монстров);

-Инвентарь, торговля, диалоги;

-Управление сенсором, джойстиком, мышью и клавиатурой;


А еще вы можете посмотреть небольшое видео геймплея, реализованного на данный момент. На nVidia Shield Portable идет в 50-60 FPS, в тяжелых местах иногда опускается до 40.

За качество видео не бейте, снимал на тапок, если смотреть в 720p или 1080p, то выглядит терпимо.

И пара скриншотов :)
Постапокалиптический шутер с открытым миром на мобилки и о том, как мы к этому пришли :) Indiedev, Gamedev, Android, Чернобыль, Зона, Unity, Моё, Видео, Длиннопост
Постапокалиптический шутер с открытым миром на мобилки и о том, как мы к этому пришли :) Indiedev, Gamedev, Android, Чернобыль, Зона, Unity, Моё, Видео, Длиннопост

И как обычно про планы на ближайшее будущее...

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

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

Заранее отвечу на очевидные вопросы, ибо я уже писал, что против такой модели распространения. В случае с THE OFFROADER у нас гоночная игра с очень слабым геймплеем на данный момент, это больше технический прототип, чем полноценная игра. Соваться с таким в ранний доступ - ни себя, ни других не уважать. В данном случае мы в раннем доступе планируем продавать уже не сырой продукт, который постоянно будет улучшаться и дорабатываться до задуманного нами. Почему именно так? Ну вы все прекрасно понимаете почему, этот проект изначально задумывался с желанием заработать, но это не отменяет того, что в первую очередь игра делается ради игры и доходы, если что, подождут. Может быть звучит не очень убедительно, зато честно :)


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

ВК - https://vk.com/thechroniclesofchernobyl

4PDA - http://4pda.ru/forum/index.php?showtopic=754653

YouTube - https://www.youtube.com/channel/UClDFx4TK9l2aP9ZVRPu24SA

Сайт (пока старый, скоро обновим и запилим бложик) - http://reactivesloth.com/

Спасибо, что дочитали это все до конца и приятных вам выходных! А мы пошли работать дальше :)

Показать полностью 4 1
[моё] Indiedev Gamedev Android Чернобыль Зона Unity Моё Видео Длиннопост
17
Партнёрский материал Реклама
specials
specials

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

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

Попробовать

Ремонт Теплый пол Текст
partizang
partizang
8 лет назад
Лига Геймеров

Геймплей видео, для моих трех подписчиков⁠⁠

Да и мы кстати опубликовали наконец игру в play, ох уж и не легко было все. Если пост соберет хоть немного зеленушки, то напишем девстори, как мы ее создавали. Ссылка на гугл в комментариях.

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