📘 Metanit — один из самых понятных и полных гидов по C# — идеально для Unity-разработчиков.
Он простым языком объясняет даже сложные темы, постоянно обновляется (уже есть материалы по C# 12) и отлично работает как учебник, так и как справочник.
#unity #csharp #программирование #gamedev #советы
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3🔥1 1
🎯 Цель — 200 подписчиков!
Друзья, как только наш канал набирает 200 подписчиков, я выпускаю Telegram-бота, который будет вашим карманным помощником по Unity и C#!
💡 В боте вы найдёте:
— Самые полезные фишки по Unity
— Советы по C#
— Подборки курсов, книг и видео
— Шпаргалки и практика
👨💻 Всё собрано и удобно структурировано — чтобы учиться и развиваться было проще!
📲 Делитесь каналом с друзьями — и бот не заставит себя ждать.
Погнали к цели! 🚀
👉 Akrus Games | Unity
#unity #csharp #telegramбот #gamedev #программирование
Друзья, как только наш канал набирает 200 подписчиков, я выпускаю Telegram-бота, который будет вашим карманным помощником по Unity и C#!
💡 В боте вы найдёте:
— Самые полезные фишки по Unity
— Советы по C#
— Подборки курсов, книг и видео
— Шпаргалки и практика
👨💻 Всё собрано и удобно структурировано — чтобы учиться и развиваться было проще!
📲 Делитесь каналом с друзьями — и бот не заставит себя ждать.
Погнали к цели! 🚀
#unity #csharp #telegramбот #gamedev #программирование
Please open Telegram to view this post
VIEW IN TELEGRAM
Сохрани, чтобы не потерять
Набираем 225 подписчиков и выкладываю шпаргалку по C#/Unity!
#программирование #IT #csharp #шпаргалка #VS #Unity #GameDev
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13❤2 2 1
Хочешь делать игры уверенно, как профи? Тогда вот 10 ключевых тем, без которых не обойтись:
Типы данных, условия, циклы, массивы, методы — фундамент. Без них ты просто нажимаешь на кнопки.
Классы, наследование, интерфейсы, инкапсуляция — чтобы код был понятным и масштабируемым.
Transform, Rigidbody, Collider, MonoBehaviour, Update, Start — знай как таблицу умножения.
Гибкие системы взаимодействия между объектами. Пример: кнопка сообщает менеджеру о нажатии.
Нереально удобная штука. Используется для хранения конфигураций, характеристик, навыков, оружия и т.п.
Атака, бег, прыжок, смерть, диалог — всё это состояния. Умей их переключать грамотно.
Меню, инвентари, шкалы здоровья. Без UI ты не покажешь игроку, что происходит.
Триггеры, столкновения, гравитация. Не хочешь, чтобы персонаж проваливался сквозь пол — разбирайся.
FPS падает? Лаги? Значит, пора в Profiler, Memory, GC, Draw Calls, FixedUpdate.
MVC, MVVM, Event Bus, Observer, Singleton, Factory. Пиши код как инженер, а не как волшебник.
💡 Эти 10 тем — не просто “полезно знать”. Это твой 🔑 к нормальному геймдеву. Освой — и сможешь делать проекты, которые не разваливаются после 3 скриптов.
Хочешь посты по каждой теме — пиши «+» или 🔥
Подписка спасает от хаоса → @AkrusUnity
#unity #csharp #gamedev #архитектура #советы #оптимизация
P.S. Набираем 50🔥и выкладываю посты по каждой теме.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥20❤3 3
Пак эффектов огня.
#ассеты #бесплатно #полезно #Unity #CSharp
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6🎄4❤3
🚗 Racing Starter Kit FREE
Стартовый набор для гонок.
🔗 Ссылка
💵 Цена: бесплатно
👉 Akrus Games | Unity
#ассеты #бесплатно #полезно #Unity #CSharp #RacingGame
Стартовый набор для гонок.
#ассеты #бесплатно #полезно #Unity #CSharp #RacingGame
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3🔥2 1
Я стараюсь делать практичные, чёткие и мощные материалы по Unity и C#, которые действительно помогают в работе.
Хочу сделать следующий пост именно под тебя
🎯 Что тебя интересует сейчас больше всего?
🧱 Архитектура в Unity
🎮 Геймплейные системы
📦 ScriptableObject и Events
⚡️ Оптимизация и производительность
📚 Полезные ресурсы и книги
🧠 Паттерны и структура кода
🧪 Тестирование, дебаг, отладка
🎨 Визуал, UI, Shader Graph
🌐 Сохранения, мультиплеер, Firebase
🧩 Инспекторы и Editor Tools
#CSharp #Unity #советы #GameDev #сишарп
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4🔥2 2
✅ ScriptableObjects: Данные без сцен
Что это?
Классы-контейнеры для хранения данных и логики, не привязанных к GameObject. Как "ресурсы" в проекте.
Зачем?
• Хранение настроек (оружие, враги, уровни)
• Создание системы событий (GameEvents)
• Реализация архитектуры на основе данных
• Упрощение балансировки игры
Как создать?
1. Создай класс-наследник
2. ПКМ в Project View → Create → Items/Weapon
3. Настраивай параметры в инспекторе
Как использовать?
Важно!
• Идеально для конфигов и событий
• Не для динамических объектов
• Для runtime изменений нужен паттерн Memento
💡 Применяй: настройки игрока, система диалогов, глобальные ивенты.
#Unity #CSharp #ScriptableObjects #GameDev
Что это?
Классы-контейнеры для хранения данных и логики, не привязанных к GameObject. Как "ресурсы" в проекте.
Зачем?
• Хранение настроек (оружие, враги, уровни)
• Создание системы событий (GameEvents)
• Реализация архитектуры на основе данных
• Упрощение балансировки игры
Как создать?
1. Создай класс-наследник
ScriptableObject: [CreateAssetMenu(fileName = "NewWeapon", menuName = "Items/Weapon")]
public class WeaponSO : ScriptableObject
{
public string weaponName;
public int damage;
public Sprite icon;
}
2. ПКМ в Project View → Create → Items/Weapon
3. Настраивай параметры в инспекторе
Как использовать?
public WeaponSO currentWeapon;
void Start()
{
Debug.Log($"Урон: {currentWeapon.damage}");
}
Важно!
• Идеально для конфигов и событий
• Не для динамических объектов
• Для runtime изменений нужен паттерн Memento
💡 Применяй: настройки игрока, система диалогов, глобальные ивенты.
#Unity #CSharp #ScriptableObjects #GameDev
🔥2❤1😁1 1
✅ Coroutines: Асинхронные операции
Что это?
Функции, выполняющиеся с задержками между кадрами. Не блокируют основной поток.
Зачем?
• Плавные анимации
• Таймеры и задержки
• Постепенная загрузка контента
• Работа с WWW/UnityWebRequest
Как использовать?
Важные нюансы:
• Всегда объявляй как
•
•
• Останавливай через
💡 Не используй для физики! Только для визуала и таймеров.
#Unity #Coroutines #CSharp #GameDev
Что это?
Функции, выполняющиеся с задержками между кадрами. Не блокируют основной поток.
Зачем?
• Плавные анимации
• Таймеры и задержки
• Постепенная загрузка контента
• Работа с WWW/UnityWebRequest
Как использовать?
IEnumerator Fade()
{
float alpha = 1f;
while (alpha > 0)
{
alpha -= Time.deltaTime * 0.5f;
GetComponent<Renderer>().material.color = new Color(1, 1, 1, alpha);
yield return null; // Ждём следующий кадр
}
}
// Запуск:
StartCoroutine(Fade());
Важные нюансы:
• Всегда объявляй как
IEnumerator •
yield return new WaitForSeconds(2f) - пауза •
yield return new WaitUntil(() => condition) - ожидание условия • Останавливай через
StopCoroutine() 💡 Не используй для физики! Только для визуала и таймеров.
#Unity #Coroutines #CSharp #GameDev
🔥5 2 1
✅ OnTrigger vs OnCollision: В чём разница?
Когда что использовать?
• Объекты проходят "сквозь" друг друга
• Нужно детектировать пересечение (зоны, предметы)
• Обязательно: isTrigger = true на коллайдере
• Объекты физически взаимодействуют (отталкиваются)
• Нужна реалистичная физика (падение, толчки)
• isTrigger = false
Пример триггера:
Пример коллизии:
💡 Для 2D используй
#Unity #GameDev #Physics #CSharp
Когда что использовать?
OnTriggerEnter(): • Объекты проходят "сквозь" друг друга
• Нужно детектировать пересечение (зоны, предметы)
• Обязательно: isTrigger = true на коллайдере
OnCollisionEnter(): • Объекты физически взаимодействуют (отталкиваются)
• Нужна реалистичная физика (падение, толчки)
• isTrigger = false
Пример триггера:
void OnTriggerEnter(Collider other)
{
if (other.CompareTag("Coin"))
{
Destroy(other.gameObject);
coinsCount++;
}
}
Пример коллизии:
void OnCollisionEnter(Collision collision)
{
if (collision.gameObject.CompareTag("Enemy"))
{
TakeDamage(10);
}
}
💡 Для 2D используй
OnTriggerEnter2D и OnCollisionEnter2D! #Unity #GameDev #Physics #CSharp
❤4🔥1 1