Обновить
7.15

Unity *

Инструмент разработки 2D/3D-игр

Сначала показывать
Порог рейтинга
Уровень сложности

Поиск случайной точки на PolygonCollider2D Unity

Время на прочтение3 мин
Охват и читатели3.2K

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

Узнать

Как и зачем создавать собственный игровой движок

Время на прочтение9 мин
Охват и читатели72K

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

Читать далее

Знакомство Unity с FMOD за пять минут

Время на прочтение3 мин
Охват и читатели14K

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

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

Теперь представим ситуацию посложнее. Компания/команда решает подтянуть звуковой дизайн игры с помощью FMOD. Программист начинает предполагать, как новые условия / требования повлияют на код. Придется переписывать кучу всего... Короче, страшное дело. Тем более видели этот интерфейс FMOD Studio? Управление космическим кораблем.

Читать далее

Проектирование непредсказуемого интеллекта в играх. Часть 1 — архитектура

Время на прочтение9 мин
Охват и читатели28K

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

В этой статье я познакомлю вас с методикой проектирования искусственного интеллекта под названием GOAP на примере игры Hitman.

Подобные методики редко применяются в СНГ, но более популярны в зарубежных студиях (чаще всего уровня ААА), где есть отдельный департамент разработки ИИ и вместо готовых ассетов проектируются интереснейшие поведения. Но чем плохо начать сейчас внедрять в наш геймдев эти техники и наконец сделать достойную триплэй игру?

Читать далее

Что у ECS под капотом

Время на прочтение6 мин
Охват и читатели12K

Всем привет, это моя первая статья на Хабр. Давно хотел попробовать что-то написать, но всё никак не решался, да и темы подходящей не было. Наконец тема подвернулась, и пришло время закрыть этот гештальт =)

В данной статье я опишу общий принцип "подкапотной" работы ECS фреймворков и некоторые проблемы, с которыми столкнулся при написании своего.

Когда я только начал узнавать про ECS, всё это казалось очень красивым, но только на бумаге, и нужно было начать что-то на нём реально писать, чтобы на собственном опыте проверить всё, о чём пишут. Успел попробовать несколько фреймворков на разных движках и языках. В основном это был великолепный entt, который я прикручивал к Godot, и LeoECS на Unity. Родной Unity фреймворк я пробовать не стал, потому что, когда начинал своё знакомство, API у него менялось чуть ли не раз в месяц, что меня отпугнуло. 

В общем, получил достаточно опыта в использовании ECS на практике, но меня всё никак не покидал вопрос о том, как же оно работает под капотом. Есть пара хороших блогов о разработке ECS (от автора entt - https://skypjack.github.io/ и от автора flecs - https://ajmmertens.medium.com/), но все они давали мне недостаточно понимания как это можно сделать самому. В итоге я решил что лучший способ что-то понять — сделать это самому, поэтому мне пришлось писать свою ECS, как завещал старина Бендер =)

Читать далее

Игра мечты, которую я делаю вместе с женой (Часть 0)

Время на прочтение3 мин
Охват и читатели35K

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

Читать далее

Unity «Best» Practices

Время на прочтение11 мин
Охват и читатели30K

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

Что такое AssetPostprocessor и чем Animation отличается от Animator? Почему не стоит доверять OnTriggerExit и зачем вам CanvasGroup? Чем хорош GameObject.Find и как вас спасут Property?

Далее в статье обсудим это, а также другие «особенности» работы с движком Unity.

Читать далее

Soviet Project — Хоррор игра о недалеком прошлом

Время на прочтение3 мин
Охват и читатели17K

Однажды я долго искал интересные 3D игры в Play Market и к своему сожалению не нашел почти ничего интересного.

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

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

Читать далее

Защита от копирования Unity-проекта с использованием библиотеки kernel32.dll

Время на прочтение5 мин
Охват и читатели5.2K

Опубликовав свой первый проект в Steam «любовался» достаточно неплохим количеством скачивания. Только какой в этом толк, если вся эта движуха происходила на торрент-трекерах...

Поэтому всерьез задумался о защите своих коммерческих проектов от пиратов.

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

Я лишь вашему вниманию в свою очередь хочу предложить вариант защиты Unity-проекта с использованием библиотеки kernel32.dll. А использовать данную технологию в своем проекте, либо не использовать – решать вам. И так приступим.

На нулевой нашей сцене создадим объект с названием SecurityManager и повесим на него скрипт с одноименным названием со следующим кодом (синглтон):

Читать далее

Метод проб и ошибок: как создать игру, которая понравится всему миру

Время на прочтение5 мин
Охват и читатели12K

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

Меня зовут Матвей Палаш (Product Owner, DEVGAME), и я собрал несколько советов, которые помогут придумать крутую игру и выбиться вперед, даже если ваш конкурент — это Touch Instinct.

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

Читать далее

Внутриигровые эмодзи: как мы создаем анимации для Rush Royale

Время на прочтение4 мин
Охват и читатели4.5K

Привет! Я Виталий, ведущий 2D-художник, аниматор и специалист по эффектам в мобильной tower-defence игре Rush Royale студии IT Territory. Сегодня я расскажу об одной довольно важной части нашего проекта — эмодзи. Именно благодаря ним игроки могут выразить эмоции в жарких боях за башни — что, на наш взгляд, очень немаловажно.

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

Читать далее

Создание шутера с LeoECS. Часть 4

Время на прочтение7 мин
Охват и читатели6.5K

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

Обязательно прочитайте прошлую часть, если еще не сделали этого.

Читать далее

Создавая непредсказуемость. Примеры использования генераторов случайных чисел

Время на прочтение8 мин
Охват и читатели8.8K

Привет, Хаброжители! У нас вовсю продолжается распродажа «Старый Новый год»

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

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

Читать далее

Ближайшие события

Недельный геймдев: #53 — 16 января, 2022

Время на прочтение6 мин
Охват и читатели4.6K

Из новостей на этой неделе: Github показал игры с Game Off 2021 с наивысшими оценками, Godot 3.5 beta 1, Unity 2022.1.0 Beta 3, Axiom 2.1, UVPackmaster 3.

Из интересностей: видео про громадных боссов в играх, «Сапёр» на движке Doom, доклад с GDC про создание правдоподобных лошадей для Red Dead Redemption II, статья про внутренности звуковой системы Street Fighter II.

Читать далее

Использование NavMesh для навигации ИИ в Unity

Время на прочтение12 мин
Охват и читатели70K

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

Читать далее

Подводные камни Zenject или тайный мир Unity GetComponent

Время на прочтение5 мин
Охват и читатели19K

История о том, как незнание и невнимательность техартистов отняло у нас половину рабочего дня и побудило узнать больше про Unity вечером во вне рабочее время.

У нас на проекте артисты, как и программисты работают в своих ветках. Обычно это небольшие изменения в 1-2 префабе, добавление текстурок или изменение шейдера. Но тут внезапно возник запрос на большую фичу, которую они делают уже больше двух месяцев, в которую никто из разработчиков не лез и знал. Обычно все работает хорошо, но в этот раз, когда уже все было готово и протестировано в редакторе, у ребят не получилось запустить билд. Естественно, они пошли к нам и попросили помочь с проблемой.

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

Читать далее

Добавляем рекламу в мобильное приложение. AdMob для начинающих

Время на прочтение5 мин
Охват и читатели28K

Политика монетизации - одна из самых важных составляющих мобильного приложения. Доходит и до того, что разработчики сначала продумывают маркетинговую схему, а уже потом натягивают на нее геймплей. Сейчас существует множество проверенных способов повысить ARPU (Average Revenue Per User) своей игры: лутбоксы, батлпасы, прямые продажы апгрейдов или косметических предметов. В этой статье мы рассмотрим самый простой, старый, но от этого не менее эффективный способ получения прибыли с мобильного приложения - внутриигровая реклама, а так же поговорим о том, как внедрить ее в Unity на примере Google AdMob.

Читать далее

Выпустил 11 игр за 1 год | Первый год работы в GameDev

Время на прочтение7 мин
Охват и читатели13K

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

Читать далее

Фотореалистичная графика на уровне ААА в Unity

Время на прочтение12 мин
Охват и читатели39K

До сих пор распространено мнение о том, что Unreal Engine превосходит Unity в графическом плане, но так ли это в действительности? (Спойлер: нет.)

Такое мнение сформировалось по ряду причин. Одна из причин отсылает нас к 2015 году, когда в Unity был доступен лишь встроенный конвейер рендеринга с рядом ограничений. На тот момент добиться сопоставимого с Unreal Engine визуала было очень сложно. Другой причиной является порог входа в Unity: он довольно низкий, а начинающим программистам и дизайнерам совсем не очевидна концепция компонентной системы Unity, что порождает довольно много слухов по сей день.

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

Всем под кат! Далее мы расскажем, как добиться фотореалистичной графики в Unity.

Читать далее