Как стать автором
Поиск
Написать публикацию
Обновить
46.68

Unity *

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

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

Как написать генератор кода который сможет поддерживать даже твоя бабушка?

Время на прочтение3 мин
Количество просмотров4.1K

Недавно мне понадобилось написать генератор кода для одного из своих проектов. Так как надо было обеспечить поддержку Unity 2021, от более современного API — incremental generators пришлось отказаться сразу. Но пост не об этом, а о том, как повысить читаемость и поддерживаемость синтаксического дерева для генерации исходного кода.

Читать далее

Создание сервера для онлайн ММО игр на PHP ч. 7 — Игровые локации (тайловые карты)

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров3.1K

Продолжая рассказывать о своем пути создания ПО для догружаемого контента в играх в этой статье хотел бы остановится на игровых картах (локациях).

Читать далее

Мечтают ли нейронные гонщики об электрокубках

Время на прочтение4 мин
Количество просмотров1.6K

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

Читать далее

Технический геймдизайн. Конфиги, баланс и контент на примере PC стратегии

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров12K

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

Читать далее

Переосмысление SOLID: почему традиционные принципы проектирования не работают при разработке игр

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров9.8K

Принципы SOLID (Single Responsibility, Open-Closed, Liskov Substitution, Interface Segregation, and Dependency Inversion) - это общепризнанные рекомендации, разработанные для улучшения сопровождаемости и читаемости исходного кода программного обеспечения. Однако их применение в сфере разработки игр часто оказывается сложным из-за уникальных особенностей этой области. Чтобы полностью оценить контекст, мы погрузимся в эти сложности и изучим альтернативные парадигмы проектирования, которые лучше подходят для динамичной природы разработки игр.

Читать далее

Решение концептуальной проблемы с Unity ECS. Messenger для System

Уровень сложностиСложный
Время на прочтение7 мин
Количество просмотров2.8K

Всем привет! В этой статье я подробно разобрал своё решение проблемы реализации "ивентов" в ориентированном на данные дизайне для Unity ECS. Если вы заинтересованы в Unity DOTS/ECS, то данная статья нацелена именно на вас.

Читать далее

Как я адаптировал игру к экранам мобильных устройств

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров3.2K

Мне нужно было адаптировать игру к экранам различным мобильных устройств.

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

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

А начал я, как и любой новичок, конечно с

Урок на Unity. Интерактивное взаимодействие игрока с окружающими предметами в 3D с помощью меток

Уровень сложностиСредний
Время на прочтение15 мин
Количество просмотров9.6K

Урок на Unity. Интерактивное взаимодействие игрока с окружающими предметами в 3D с помощью меток.

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

Бонус урока. Делаем простое пианино!

Наверно всем знаком такой элемент в игре, как всплывающая иконка рядом с игровым объектом, позволяющая с ним интерактивно взаимодействовать.

Читать далее

Допиливаем VirtualMouse в новой Input System, для геймпада в Unity

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров3.1K

Привет, Хабр! Читаю Хабр с момент его появления, но всегда в риад онли режиме и этой статьей решил изменить ситуацию. Меня зовут Вениамин Афанасьев и я cоло инди разработчик, работающий в Unity. Довольно часто сталкиваюсь с различными проблемами движка и способах их решения. Сегодня я расскажу вам как заставить VirtualMouse из нового Input System Unity работать.

Читать далее

Unity компонентно-ориентированный подход

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров3.5K

Привет Хабр

Всегда интересовался программной архитектурой. Читал много статей и примеров. Подходов много, и лучшего конечно же нету.

Данная статья будет показывает мой взгляд на проектирование архитектуры в Unity в компонентно-ориентированном подходе (КОП). Кода в статье не будет!

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

Читать далее

Оптимизация вставки в R-дереве в рамках Unity проекта

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров2.9K

Привет, Хабр! Меня зовут Алмаз, я работаю программистом Unity. В этой статье хочу поделиться небольшой историей оптимизации вставки данных в R-дереве в рамках проекта на Unity. В статье не будет кода, но будут сравнения результатов поэтапного процесса оптимизации вышеупомянутого алгоритма.

* * *

Немного предыстории. Некоторое продолжительное время назад я задался целью реализовать несложный геймплей игры уровня “танчики”, который бы поддерживал мультиплеерный режим по сети на удаленных устройствах. Примером для копирования я выбрал многим известную игру из 90х для MS-DOS Dyna Blaster, или более известную как Bomberman.

Читать далее

Способы замены цветов текстур при помощи Shader Graph в Unity

Время на прочтение11 мин
Количество просмотров6.6K

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

В статье приведены примеры в Shader Graph, однако есть и ссылки на документацию Shader Graph (Node Library), где можно просмотреть сгенерированный код на HLSL.

Эти методики могут использоваться в следующих случаях:

  • Цвета игроков/команд, например, в RTS или в многопользовательских командных играх, или для изменения внешнего вида игрока.
  • Вариации цветов на пропсах окружения, растительности/листве, вариантах врагов и так далее.
  • Настраиваемые цвета и линейные градиенты, применяемые для VFX/эффектов частиц.
  • Заменяемые цвета палитры для пиксель-арта (спрайтов/карт тайлов). Могут использоваться для эстетики или связаны с геймплеем.
  • Эффекты постобработки, но это уже выходит за рамки моего поста.

Обычно в таких методиках в качестве входных данных используются какие-то текстуры (однако некоторые могут работать с шумами или процедурными формами, созданными из функций расстояний со знаком). Кроме того, неважно, будут ли использоваться текстуры для 3D-модели, 2D-спрайта, UI и так далее.
Читать дальше →

Почему вам стоит использовать Unity Simulator при разработке под мобильные платформы

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров4.5K

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

Читать далее

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

Архитектура на Unity без Zenject. Часть 3

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров7.4K

Всем привет! 👋

Меня зовут Игорь Гулькин, и я Unity разработчик. За свои 5 лет накопилось много опыта, поэтому в этой статье хотел бы поделиться принципами и подходами, с помощью которых можно реализовать архитектуру игры просто и гибко без фреймворка. Цель доклада, дать не просто готовое решение, а показать ход мыслей и паттерны, с помощью которых ее можно выстроить. Если вы не читали первую и вторую части, то рекомендую начать с них :).

Читать далее

Ошибка квадратных скобок в хедерах UnityFramework в Xcode

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров2.4K

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

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

Читать далее

Выражение числа в виде букв

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров6.5K

Разрабатывая Idle игры часто сталкиваются с тем что нужно выразить число через его сокращенную форму. Если в игре используются маленькие числа (хотя бы до 20 знаков), то такие числа в принципе можно выражать в их существующем виде. Для примера в проекте unity создам отображение монет и кнопку, которая будет умножать число монет на некое значение.

Читать далее

Вариант Mvvm в Unity

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров9.3K

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

P. S. спасибо автору этой статьи за взятую без спроса картинку.

Читать далее

Архитектура игры на Unity без Zenject. Часть 2

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров7.5K

Всем привет!

Меня зовут Игорь Гулькин, и я Unity разработчик. За свои 5 лет накопилось много опыта, поэтому в этой статье хотел бы поделиться принципами и подходами, с помощью которых можно реализовать архитектуру игры просто и гибко без фреймворка. Цель доклада, дать не просто готовое решение, а показать ход мыслей, как она выстраивается. Если вы не читали первую часть, то рекомендую сначала прочитать ее :).

Читать далее

Архитектура игры на Unity без Zenject. Часть 1

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров11K

Всем привет!

Меня зовут Игорь Гулькин, и я Unity разработчик. За свои 5 лет накопилось много опыта, поэтому в этой статье хотел бы поделиться принципами и подходами, с помощью которых можно реализовать архитектуру игры просто и гибко без фреймворка. Цель доклада, дать не просто готовое решение, а показать ход мыслей, как она выстраивается.  Ну что ж поехали :)

Читать далее

MVC без контроллера

Уровень сложностиСредний
Время на прочтение2 мин
Количество просмотров7.8K

Прошло уже лет 25 со дня изобретения концепции Model‑View‑Controller, а споры и её модификации не завершаются по сей день. Хотя очевидно, что в изначальном виде эта концепция ужасна, не объектно‑ориентирована и избыточна. А избыточно именно наличие контроллера, в то время как разделение визуализации и бизнес‑логики является сердцем этой концепции, из‑за чего и живет эта идея до сих пор. Но вопрос контроллера замыливается, хотя понятно, что на его месте должна быть реализация биндинга. Особенно, когда в игровом движке Unity это биндинг уже есть изначально, хотя и появился косвенно. Об этом подробно рассказываю в следующем видео.

Читать далее