Pull to refresh
7
0
Игорь Гулькин @StarKRE

Senior Game Developer

Send message

Переизобрел ECS. Паттерн Entity-State-Behaviour

Level of difficultyMedium
Reading time13 min
Views4.3K

Привет, Хабр! 👋

Меня зовут Игорь, и я Unity Developer. В этой статье хотел бы показать
новый архитектурный паттерн, который внезапно открыл для себя в разработке игр.

Особенность паттерна Entity-State-Behaviour заключается в том, что ваш игровой объект представляет собой Entity, которая состоит из набора данных (State) и логики (Behaviour). За счет жесткого разделения данных и логики, разработчик может легко разрабатывать новые взаимодействия между игровыми объектами, системами и AI и подключать их в процессе выполнения программы...

Читать далее
Total votes 7: ↑6 and ↓1+8
Comments5

Принципы SOLID vs KISS. Как найти баланс?

Level of difficultyEasy
Reading time4 min
Views17K

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

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

Читать далее
Total votes 9: ↑4 and ↓5-1
Comments40

Атомарный подход в Unity

Level of difficultyMedium
Reading time29 min
Views7.4K

Привет, Хабр! 👋

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

Читать далее
Total votes 5: ↑3 and ↓2+1
Comments23

Нодовая архитектура на Unity

Level of difficultyMedium
Reading time13 min
Views6.7K

Меня зовут Игорь, и я Unity Developer. В этой статье я хотел бы поделиться кастомной архитектурой, которую сделал в процессе разработки своей RTS игры.

Скажу сразу: что основные концепции и принципы уже используются в различных DI фреймворках, таких как Zenject & VContainer. Поэтому чего-то феноменального в этой статье вы не увидите. Но, поскольку я люблю делать свои велосипеды, то в свою архитектуру я привнес парочку интересных вещей, которых нет в других DI фреймворках на Unity. Ну шо, поехали :)

Читать далее
Total votes 11: ↑10 and ↓1+10
Comments7

Модульные механики на Unity

Level of difficultyEasy
Reading time9 min
Views7.2K

Привет, Хабр! Меня зовут Игорь, и я Unity Developer. В этой статье хотел бы рассказать, как можно делать модульные механики для игровых объектов, за счет разделения данных и логики без ECS.

Читать далее
Total votes 10: ↑8 and ↓2+8
Comments18

Система сохранения на Unity для начинающих

Level of difficultyEasy
Reading time6 min
Views9K

Привет, Хабр! Меня зовут Игорь, и я Unity Developer. В этой статье попытаюсь максимально просто рассказать и показать, как написать систему сохранения в игре в Unity. Скажу сразу, статья ориентирована для тех, кто только начинает свой путь в освоении разработки игр. Поэтому некоторые архитектурные принципы будут нарушены с целью упрощения кода. Ближе к концу статьи покажу как сохранять миссии, про которые писал ранее. Ну что ж, поехали...

Читать далее
Total votes 12: ↑7 and ↓5+3
Comments4

Реализация миссий в игре на Unity (Ч2)

Level of difficultyEasy
Reading time8 min
Views2.7K

Привет, Хабр 👋

Меня зовут Игорь, и я Unity Developer. В этой статье хотел бы рассказать, как можно сделать миссии в игре на Unity. Статья будет состоять из трех частей. В первой части реализовали систему для миссий. В этой части будем реализовывать интерфейс. А в следующей — сохранение. Ну что ж, поехали!

Читать далее
Total votes 9: ↑8 and ↓1+9
Comments2

Реализация миссий в игре на Unity (Ч1)

Level of difficultyEasy
Reading time10 min
Views7.4K

Привет, Хабр 👋

Меня зовут Игорь, и я Unity Developer. В этой статье хотел бы рассказать, как можно сделать миссии в игры на Unity. Статья будет состоять из трех частей. В первой части напишем систему для миссий, во второй — интерфейс, а в третьей — сохранение. Ну что ж, поехали!

Читать далее
Total votes 11: ↑9 and ↓2+11
Comments5

Information

Rating
Does not participate
Date of birth
Registered
Activity

Specialization

Game Developer, Game Designer
Lead
C#
Unity3d
Game Development