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

Бильярд 3D: Русский бильярд

Симуляторы, Спорт, Настольные

Играть

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

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

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

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

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

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

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

Unity + Программист

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

Gamedev Разработка Инди Инди игра Игры YouTube Компьютерные игры Программирование IT IT юмор Юмор Картинка с текстом Работа Все
45 постов сначала свежее
HOINN
6 лет назад
Unity

Создание своей первой игры⁠⁠

Unity и как создать свою первую игру.
Всем привет , я начинающий программист , сейчас я расскажу вам как я создавал свою первую игру , возможно вам это прогадится)

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

Дальше  начались трудности ,так как я только начал изучать c# корой необходим для создания игр на unity. Разобрав несколько уроков программирования , я нашел спрайты для своей игры(рисовал я плохо , поэтому пришлось сделать это)) . После , когда весь код был написан и всю хорошо работало , сделал меню и добавил еще разных приколюх. Игру я выложил в playmarket.
Мне было бы приятно , если бы вы высказали свое мнение о моей игре , если захотите ее скачать , она называется Dodge Dangers, всем спасибо!

Пока я только учусь создавать игры и друе штуки , своим опытом я делюсь в своем телеграмм канале , если вы заинтересуетесь, то можете подписаться [Пикабу]https://web.tlgrm.eu/#/im?p=@putprogrammista22
Создание своей первой игры Программа, Игры на Android, Unity, Программирование, Gamedev, Программист, Игры, Google Play
[моё] Программа Игры на Android Unity Программирование Gamedev Программист Игры Google Play
11
22
galzuris
galzuris
7 лет назад
Лига Разработчиков Видеоигр

Программист-рукожоп #3. О танках и разработке⁠⁠

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

Выбор движка

Как вы уже знаете по предыдущему посту, мне всегда хотелось создать свой собственный движок, но дело было не в том что он "мой", а скорее в том что мне так было проще, чем разбираться в чужих API и функциях. Однако я все таки сделал для себя выбор в пользу Unity3D после того как попробовал в нем работать. Почему? Все просто - с ним быстрее.

Как выяснилось, сам unity довольно плохо оптимизирован и ИМХО, для разработки на пк подходит разве что под небольшие проекты, для крупных больше подойдет UE4 или подобные движки под игры ААА класса, так как в отличии от того же unity они разрабатывались и затачивались непосредственно "в бою". Однако unity хорошо подходит для быстрой разработки/прототипирования, особенно для мобильных платформ.

Программист-рукожоп #3. О танках и разработке Длиннопост, Игрострой, Gamedev, Unity, Android, Программист, Видео

( еще один эксперимент времен выхода 2D физики в unity3d, тестировал на android )


Танки

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


Механику покатушек по плоскости и простой стрельбы я освоил уже давно, все движение заключается в прибавлении координат через Rigidbody на объекте "танк", то же работает и для поворота. Почему через стандартную функцию? - так корректно работает физика, не писать же собственную для определения столкновений. Минусом простого подхода является отсутствие вертикального геймплея, но тут он нам и не нужен.


Стрельба в отличии от эксперимента rover не должна содержать в себе реально летающие снаряды - оптимизация. Вместо этого стоит использовать просто трассировку лучами или же Raycast, так же из стандартной физики unity, а при выстреле создавать в точке пересечения объектов лучом - взрыв, попутно определяя попали ли мы в объект-противник и отнимая ему здоровье.

Программист-рукожоп #3. О танках и разработке Длиннопост, Игрострой, Gamedev, Unity, Android, Программист, Видео

Сцены в проект организованы просто:

1. Сцена с главным меню и набором всех окон UI которые вообще встречаются в игре, и основными скриптами-контроллерами

2. Сцена с игрой


Почему я размещаю все "окна" в одной сцене? Мне так проще. Окна из себя представляют просто области во весь экран со своим компонентом CanvasGroup, находящиеся в одном объекте Canvas, на самом объекте висит скрипт-контроллер который переключает видимость у этих объектов и их содержимого, а так же в нем описаны методы на которые ссылаются все кнопки из окон. Контроллер интерфейса является синглтоном, т.е единственным экземпляром класса и не разрушается при переходе между сценами. Вообще все основные контроллеры я пишу в виде синглтонов, так проще организовать общение между ними (как же мне не хватало знания о синглтонах в той экспериментальной онлайн игре)

Программист-рукожоп #3. О танках и разработке Длиннопост, Игрострой, Gamedev, Unity, Android, Программист, Видео

До контроллера карты еще не дошел, но в планах сделать примерно так:

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


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

Программист-рукожоп #3. О танках и разработке Длиннопост, Игрострой, Gamedev, Unity, Android, Программист, Видео

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


Оптимизация

Unity, как я выяснил набивая шишки - очень капризный движок в плане оптимизации. Чтобы все работало без тормозов есть несколько советов:

1. Объединение мешей ("батчинг") происходит только при масштабе 1 и только при одинаковых материалах. Объединение позволяет сократить число вызовов отрисовки (Drawcalls или же DC).

2. Unity редиска не объединяет меши корректно, поэтому число DC может оставаться высоким - к этому рекомендую объединять их самому на уровне моделирования в 3d редакторе.

3. Луче всего использовать "атласы" текстур (несколько текстур в одном файле) вместо единичных раскиданных по разным файлам и хорошенько сжимать их.

4. По возможности не использовать в коде поиск по строкам, это довольно медленная штука

5. Вместо воссоздания объектов (вроде пуль, для каждого выстрела) лучше использовать "пул" объектов - массив с предзагруженными объектами

6. Парсинг текста вообще штука в Unity крайне медленная, особенно на андроиде (поэтому подобные операции лучше оставлять на одноразовые события)

7. Для простых типов, например единичного вектора, лучше всего создать константу, вместо использования "Vector3.up" каждый раз когда она понадобиться


Касательно числа вызовов - совсем недавно узнал что лучшим вариантом будет держать их в пределе 30, максимум до 60 drawcalls для мобильных устройств.

Программист-рукожоп #3. О танках и разработке Длиннопост, Игрострой, Gamedev, Unity, Android, Программист, Видео

Что дальше?

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


Целевая аудитория вроде понятна, стилистику буду стараться сохранять. Нужно продолжать.


Бонус от эксперимента в GooglePlay

Программист-рукожоп #3. О танках и разработке Длиннопост, Игрострой, Gamedev, Unity, Android, Программист, Видео
Программист-рукожоп #3. О танках и разработке Длиннопост, Игрострой, Gamedev, Unity, Android, Программист, Видео
Программист-рукожоп #3. О танках и разработке Длиннопост, Игрострой, Gamedev, Unity, Android, Программист, Видео
Программист-рукожоп #3. О танках и разработке Длиннопост, Игрострой, Gamedev, Unity, Android, Программист, Видео
Программист-рукожоп #3. О танках и разработке Длиннопост, Игрострой, Gamedev, Unity, Android, Программист, Видео

Если любопытно, вот ссылка на то прощупывание почвы в GooglePlay, оговорюсь что оригинальная идея была не моя и подобная игра была на PC:

GooglePlay: https://play.google.com/store/apps/details?id=com.galzuris.poord


Увидимся в следующем посте =)

Показать полностью 10
[моё] Длиннопост Игрострой Gamedev Unity Android Программист Видео
16
238
Driftmaniak
8 лет назад
Лига Разработчиков Видеоигр

Программист бесплатно)⁠⁠

Ребят уже больше 3х лет работаю в геймдеве программистом с замечательной технологией Unity. Все проекты делались на аутсорс, так что все под NDA и в портфолио даже нечего добавить. Возможно кому то в проект нужен кодер для работы по вечерам за идею. Интересны 2д проекты для телефонов или стима.

Программист Unity Текст
99
53
DELETED
10 лет назад

Типичный отец⁠⁠

Типичный отец
Программист Unity Родители и дети ВКонтакте
5
rollicc96
rollicc96
10 лет назад

Помогите. Лига Программистов. Нужна очень ваша помощь.⁠⁠

не могу найти ошибки в скрипте

var is NewGameButton = false;
var is OptionButton = false;
var is QualityButtonFastest = false;
var is QualityButtonFantastic = false;
var is MainMenuButton = false;
var is QuitButton = false;
var camera1 : Camera;
var camera2 : Camera;
function OnMouseEnter ();
{
render.material.color = Color.gray;
}
FunctionOnMouseExit ();
{
render.material.color = Color.white;
}

function OnMouseUp ();
{


if ( is QuitButton );
{
Application.Quit ();
}
esle if ( is QualityButtonFastest );
{
QualitySettings.currentLevel = QualityLevel.Fastest;
}
else if ( is QualityButtonFantastic );
{
QualitySettings.currentLevel = QualityLevel.Fantastic;
}
else if ( is NewGameButton );
{
Application.LoadLevel (1);
}
else if ( is OptionButton );
{
camera1.enabled = false;
camera2.enabled = true;
}
else if ( is MainMenuButton );
{
Application.LoadLevel (0);
}
}

вот скрипт

руководствовался инструкцией на youtube.

вот ссылка

http://www.youtube.com/watch?v=SgSa9PaKexs&index=22&list=PLD1B2C1D095B583B7
Скрипт Unity Скрипты Gamedev Unity3D Помощь Программист Текст
30
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии