Akrus Games | Unity
2.95K subscribers
408 photos
89 videos
11 files
351 links
Самые годные лайфхаки по unity c#

Сотрудничество/реклама/помощь @Akrus001
Download Telegram
Архитектурные ошибки, которые мешают скейлиться

📌 Вот что часто делает мидл, когда ещё не думает как senior:

1️⃣ Всё в одном MonoBehaviour

// И логика, и UI, и данные — всё в одном классе 😵


📌 Разделяй по слоям:
Model — данные (например, ScriptableObject, runtime state)
View — отображение и UI (MonoBehaviour с UI-ссылками)
Controller/Manager — логика и управление

🧠 Это основа MVC / MVVM / ECS — двигайся в сторону слабосвязной архитектуры.

2️⃣ Прямые ссылки между объектами

enemy.healthBar.SetValue(enemy.hp); // жёсткая связь


📌 Лучше через:
• Action и event-события
• интерфейсы (например, IDamageable)
• ScriptableObject-сигналы (EventChannel)
• Service Locator / Dependency Injection (Zenject, Extenject)

3️⃣ Нет централизованного GameManager или FSM

📌 Когда логика разбросана по сцене — сложно дебажить, сохранять и управлять состоянием игры.

🛠️ Сделай GameState-машину:

GameState.Menu → GameState.Playing → GameState.Paused

Добавь централизованную точку входа:
• UIManager
• SceneController
• AudioManager

4️⃣ Мешанина из public переменных

public int hp; // открыто для всех


📌 Используй:

[SerializeField] private int hp;
public int HP => hp;


🧠 Это защищает от случайных изменений и делает код самодокументируемым.

5️⃣ Нет разделения Editor и Runtime

📌 Всё, что относится к редактору (например, EditorGUILayout, Handles, MenuItem) — в папку /Editor и под #if UNITY_EDITOR.

Если этого не сделать:
• код попадёт в билд (ошибка)
• появится ненужный вес
• сломается на мобильных/в WebGL

💡 Средний уровень — это уже мышление архитектора: ты создаёшь систему, которую другие смогут поддерживать, расширять и не бояться трогать.

💬 Хочешь пост про конкретные архитектурные подходы: EventBus, ScriptableSignals или Scene Flow?

🔔 Подписывайся — впереди про UI-архитектуру, async-менеджеры и паттерны уровня Senior

👉Akrus Games | Unity
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥722211
Продаётся пак изображений: Автомобили для кликера.

Движок: любой
Интеграция: Картинки полностью адаптированы под требования Яндекс Игр

В паке есть 9 автомобилей, 7 фонов

❗️Важно: Пак создавался долго с упором на качество: в каждой папке машина в PNG без фона. Также все фоны были подобранны в хорошем качестве.Соблюдены все авторские права, все картинки прошли модерацию яндекс игр. Достаточно сделать быстрый рескин на готовом шаблоне и можно заработать.

Стоимость пака: 150 ₽

Для покупки писать: @Akrus001
4😁41
public class TestScript : MonoBehaviour {
void Awake() {
Debug.Log("Awake");
enabled = false;
}

void Start() {
Debug.Log("Start");
}

void Update() {
Debug.Log("Update");
}
}

Компонент TestScript находится на активном объекте в сцене.
421
Что выведет этот код?
Anonymous Quiz
49%
Awake Start Update
4%
Awake Update
40%
Awake
8%
Start Update
3🔥11
🎶 Hollow Knight: Код + Стиль + Звук | Unity Разбор

Копаем глубже в гениальность Hollow Knight на Unity. Сегодня — квинтэссенция: механика, стиль и звук. Что брать на вооружение?

⚙️ Программирование (Коротко):
• Контроль персонажа: кастомная физика (Rigidbody2D без физики Unity), State Machine для анимаций, Input Buffering для плавных и отзывчивых действий (например, прыжок с задержкой на краю платформы).
• Системы: модульные чары (по сути, набор компонентов с динамической активацией), Object Pool для пуль/врагов/эффектов, надёжная система сохранений по зонам.
• Камера: Cinemachine с ограничением по зонам (блоки-ограничители) + ручной контроль сглаживания.

🎨 Стилистика: Атмосфера через Технику
• Арт: ручная 2D-анимация (не пиксельарт, а именно hand-drawn) + шейдеры (мерцание Geo, свет, туман, подводные искажения).
• Свет и тень: 2D Lights (Universal RP), Ambient Occlusion (запечённый или фейковый), Color Grading через Volume-компоненты.
• Детали движений: Particle System — для шагов, пыли, частиц при разрушении — оживляют каждое действие.
• Параллакс: многослойные фоны с разной скоростью, управляемые скриптом или Cinemachine Parallax.

🎵 Музыка Кристофера Ларкина: Не Фон, а Инструмент Дизайна
• Лейтмотивы: у каждого района — своя тема. Узнаваемость через музыку. (Сравни “Город Слёз” и “Greenpath”).
• Интерактивность: музыка подстраивается под события. Скорее всего — FMOD или Wwise: middleware для динамического микширования в Unity.
• Звук = мир: шаги, капли, скрипы — вплетены в общий саундскейп. Не просто фоны, а слой геймдизайна.
• Точка покоя: скамейки и музыка — безопасные гавани. Эмоциональные якоря, как костры в Dark Souls.

💡 Вывод для Dev’а:
1. Атмосфера = Единство: арт, звук и механики говорят на одном языке. Код не просто работает — он служит художественной цели.
2. Звук — это дизайн, а не “последний штрих”. Интерактивность важна.
3. Детали = жизнь: пыль, свечения, лёгкие эхо — и мир оживает.
4. Оптимизация — путь к атмосфере: без Object Pool и правильной архитектуры, ты не вытянешь такую насыщенность.

🛠️ Hollow Knight — мастер-класс по созданию целостного мира в Unity, где нет разделения между кодом и искусством. Всё работает на ощущение.

🎧 P.S. Какой трек из Hollow Knight у тебя в голове до сих пор?
#HollowKnight #Unity #GameDev #GameAudio #Геймдизайн #ИндиИгры #PixelArt #Звук #Арт #AkrusGames

👉Akrus Games | Unity
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥53
Какую тему ты хочешь увидеть в следующем посте?

Я стараюсь делать практичные, чёткие и мощные материалы по Unity и C#, которые действительно помогают в работе.

Хочу сделать следующий пост именно под тебя👇

💬 Напиши в комменты, что тебе реально нужно — я сделаю пост не “в общем”, а именно под твой уровень и задачи.
Please open Telegram to view this post
VIEW IN TELEGRAM
5
⚡️Собрал ТОП-5 самых полезных горячих клавиш в Visual Studio, которыми пользуюсь сам.

Сохрани — экономит куча времени:

1️⃣ Alt + ↑ / ↓

💡Передвигает строку (или выделенные строки) вверх/вниз! Можно быстро менять порядок кода без копипаста.

2️⃣ Ctrl + K, D

💡 Выравнивает весь код в файле! (Форматирование). Прощай, ручное выравнивание!

3️⃣ Ctrl + K, C

💡Комментирует все выделенные строки. Полезно для тестов или дебага.

4️⃣ Ctrl + K, U

💡Раскомментирует все выделенные строки. Включить код обратно.

5️⃣ Ctrl + R, R

💡 Переименование переменной, метода или класса везде, где оно используется! Безопасный рефакторинг.

👀 Если будет 15 🔥, то продолжу список.

🔔 Подпишись, чтобы не пропустить!

👉Akrus Games | Unity
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥23🎄22
🔥 ШПАРГАЛКА ПО ГОРЯЧИМ КЛАВИШАМ VISUAL STUDIO!

Сохрани
, чтобы не потерять

📎 Скачать: тык

Набираем 225 подписчиков и выкладываю шпаргалку по C#/Unity!

👉Akrus Games | Unity

#программирование #IT #csharp #шпаргалка #VS #Unity #GameDev
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13221
⚡️ Только начинаешь путь в C#? Тогда вот тебе отличный ресурс — Exercism!

Это удобная и наглядная платформа, идеально подходящая для новичков. Всё разбито по темам, объяснения простые.

Учись в своём темпе и практикуйся прямо на сайте!

🔗 Смотри сам: ссылка

👉Akrus Games | Unity

#сишарп #программирование #IT #полезное #ресурс
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥52😁2
Все заходите в наш чат! Сделаем там опрос: какой следующий пост хотите? И может даже разберём тему подписчика, которую он не понимает.
https://t.me/chatAkrus001

Давайте сделаем 50 участников.

Распространите
522🔥1
Нашли гигантскую базу пнг картинок без фона!

Подойдет для создание рескинов игр!
Тысячи картинок без фона, в хорошем качестве.
Все бесплатно, идеально для геймдева!
73🔥3😁1
🌸Всем привет!
Я хотел бы порекомендовать вам интереснейший канал по разработке игр!

Здесь автор делится новостями и наработками в своих играх в жанре хоррор !

https://t.me/nezerGaymdev
https://t.me/nezerGaymdev
https://t.me/nezerGaymdev
🙌
6
🎮Как увеличить FPS в Unity — реальные рабочие способы
Если игра лагает, попробуй вот что:


🖌1. Оптимизация графики
Уменьши разрешение текстур (но без артефактов).

Включи LOD (Level of Detail) — чтобы на расстоянии рендерились упрощённые модели.

Вырежи ненужные эффекты — Bloom, SSAO, Motion Blur. Если без них можно обойтись — отключай.


🏋️2. Батчинг и атласы
Static/Dynamic Batching (в Edit → Project Settings → Graphics).

Sprite Atlas (2D) / Texture Atlas (3D) — собирай мелкие текстуры в одну большую.


🧑‍💻3. Оптимизация кода
Не используй FindObjectOfType и GetComponent в Update() — кешируй ссылки в Awake() или Start().

Пул объектов вместо Instantiate/Destroy — если часто создаёшь/удаляешь объекты (пули, враги).


💡4. Освещение
Baked Lightmaps — если свет статичный, запеки его.

URP (Universal Render Pipeline) — лучше подходит для мобилок, чем стандартный рендер.


🗑5. Профайлинг и мусор
Смотри Profiler (Window → Analysis → Profiler) — ищи узкие места.

Избегай аллокаций в Update — сборщик мусора (GC) вызывает лаги.


Важно: Даже небольшие правки могут дать +20-30 FPS. Главное — тестируй изменения и смотри на результат.

У тебя были проблемы с производительностью? Что помогло? Пиши в комменты.
Please open Telegram to view this post
VIEW IN TELEGRAM
6321
👀Всем привет!

🙂Как прошёл день, что у вас получилось?

👉Akrus Games | Unity
Please open Telegram to view this post
VIEW IN TELEGRAM
85😁33