Game Development | YeaHub
369 subscribers
158 photos
192 videos
555 links
Теория, подготовка к интервью и курсы для Game Dev разработчиков

YeaHub — это платформа для IT-специалистов, объединяющая обучение, карьерный рост, развитие и сообщество единомышленников.

Платформа: https://yeahub.ru

Для связи: @ruslan_kuyanets
Download Telegram
#roadmap #unity #roadmap
📚 Дорожная карта Unity-разработчика 2025: с нуля до джуна

Статья представляет собой дорожную карту для начинающих Unity-разработчиков, которая охватывает весь путь от освоения основ языка программирования C# до работы с физикой, сторонними SDK и другими аспектами разработки игр в Unity. В ней подробно расписаны ключевые темы, которые необходимо изучить: основы C#, объектно-ориентированное программирование, работа с коллекциями и данными, паттерны проектирования, архитектура Unity, программирование в контексте движка, физика, визуал и звук, работа с ресурсами, пользовательский интерфейс и многое другое. В конце статьи приведены полезные ссылки на ресурсы для обучения

Перейти к материалу

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
👍1
#Собес #new_project #template #project_settings
🤔 Как создать новый проект в Unreal Engine?

💬 Кратко:

Для создания нового проекта в Unreal Engine нужно открыть лаунчер, выбрать вкладку "New Project", выбрать шаблон, настроить параметры проекта (например, имя и место хранения) и нажать "Create".

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #HTTP_status_codes #1xx #2xx
🤔 Какие группы HTTP-кодов ответов существуют и что они означают?

💬 Кратко:
HTTP-коды ответов делятся на пять групп. 1xx — информационные, 2xx — успешные, 3xx — перенаправления, 4xx — ошибки клиента, 5xx — ошибки сервера. Каждая группа имеет своё значение и помогает понять результат запроса.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#tool #гит
📚 Хочешь изучить Git, не рискуя своей локальной установкой?

Теперь можно запускать команды Git прямо из браузера , с пошаговым объяснением, что делает каждая команда.

Перейти к материалу

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #csharp #dispose #resource
🤔 Сталкивался ли с интерфейсом IDisposable? Для чего он используется?

💬 Кратко:

IDisposable используется для освобождения неуправляемых ресурсов (файлы, соединения с БД). Реализует метод Dispose(), который вызывается вручную или через using.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #unity #memory #async

🤔 Senior+ GameDev в Hypemasters

Техсобес. ЗП: от 3000-3500$. Апрель 2024.

💬 Вопросы:

- Что такое локальный и удаленный репозитории в Git?

- Что делает команда git add?

- В чем разница между методами System.Array.CopyTo() и System.Array.Clone()?

- В чем разница между FixedUpdate и Update в Unity, и когда использовать каждую из функций?

- Использовал ли ECS? Если да, то для каких задач?

👉 Все вопросы из этого собеседования (23)

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #sql #having
🤔 Что такое оператор HAVING и для чего он используется?

💬 Кратко:

Оператор HAVING в SQL используется для фильтрации результатов, полученных с помощью GROUP BY. В то время как WHERE фильтрует строки до группировки, HAVING применяется после группировки и позволяет отфильтровать агрегированные данные (результаты работы функций COUNT, SUM, AVG и т.д.).

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#course #ооп #case
📚 Практический анализ ПО с моделированием на UML

Целью курса является обучение слушателей теоретическим основам объектно-ориентированного подхода, практическим методам визуального проектирования и технологии разработки программного обеспечения с использованием компьютеризированных систем разработки (CASE

Перейти к материалу

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #architecture #pattern
🤔 В чём смысл MVP/MV*?

💬 Кратко:

MVP/MV* - это подходы к организации кода, которые разделяют логику приложения на отдельные части. Они помогают сделать код более понятным и удобным для изменений. В игровой разработке это особенно полезно для отделения игровой логики от интерфейса. Такой подход упрощает тестирование и переиспользование кода.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #optimization #atlas #ui

🤔 Senior + GameDev в X-Flow

Тех.собес. вилка: 3500-4000$. Дата: Июнь 2024

💬 Вопросы:

- Что такое протокол HTTPS?

- Напишите Blueprint для создания простого UI, отображающего здоровье игрока

- Что такое корутины в Unity и когда их использовать?

- Как бы вы реализовали систему UI, независимую от разрешения и соотношения сторон?

- Использовал ли ECS? Если да, то для каких задач?

👉 Все вопросы из этого собеседования (16)

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #HTTP_GET #query_string #URL_parameters
🤔 Можно ли передавать данные в GET-запросе?

💬 Кратко:
Да, данные в GET-запросе передавать можно, но только в виде параметров строки запроса (query string), которые добавляются к URL после знака '?'. Например, в URL 'https://api.example.com/users?id=123&name=John' параметры 'id' и 'name' передаются как данные. Однако GET-запросы предназначены для получения ресурсов, а не для отправки больших или конфиденциальных данных, так как параметры видны в истории браузера, логах сервера и могут кэшироваться.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#repository #шейдеры #начинающие
📚 3D Game Shaders for Beginners

Обучающий проект, посвящённый основам написания шейдеров для 3D‑игр. В нём пошагово разбираются ключевые техники компьютерной графики: от простейшего освещения и текстурирования до эффектов вроде нормал‑маппинга, отражения, преломления и постобработки. Материал подаётся в доступной форме с наглядными примерами на GLSL, сопровождается пояснениями принципов работы конвейера рендеринга и визуальными сравнениями «до/после». Проект ориентирован на начинающих разработчиков, которые хотят понять, как создавать и настраивать визуальные эффекты в играх.

Перейти к материалу

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
👍1👎1
#Собес #architecture
🤔 Можно ли написать матч-3 игру на Unity, используя только один компонент MonoBehaviour?

💬 Кратко:

Технически — да, написать можно. Вы можете создать один скрипт, который будет управлять всем: сеткой плиток, проверкой совпадений, анимациями, интерфейсом и звуками. Однако, с архитектурной точки зрения, это будет очень плохая идея. Такой скрипт превратится в "божественный объект" — огромный, сложный для понимания и изменения монолит. Добавление новой фичи или исправление бага в одной системе может сломать другую. Использование множества небольших компонентов делает код гораздо более гибким и поддерживаемым.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #multiple_return_values #references #pointers
🤔 Может ли функция вернуть несколько значений в C++?

💬 Кратко:

Да, функция может вернуть несколько значений, используя ссылки или указатели как параметры, или возвращая кортеж (tuple) или пару (pair).

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #replication #asynchronous_replication #synchronous_replication
🤔 Что такое неблокирующая репликация и чем она отличается от синхронной?

💬 Кратко:
Неблокирующая (асинхронная) репликация не ждет подтверждения от реплик перед ответом клиенту, что повышает производительность, но может привести к потере данных при сбое. Синхронная репликация гарантирует согласованность, ожидая подтверждения от всех реплик, но снижает скорость записи. Выбор зависит от требований к надежности и задержкам.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#repository #шейдеры #начинающие
📚 3D Game Shaders for Beginners

Обучающий проект, посвящённый основам написания шейдеров для 3D‑игр. В нём пошагово разбираются ключевые техники компьютерной графики: от простейшего освещения и текстурирования до эффектов вроде нормал‑маппинга, отражения, преломления и постобработки. Материал подаётся в доступной форме с наглядными примерами на GLSL, сопровождается пояснениями принципов работы конвейера рендеринга и визуальными сравнениями «до/после». Проект ориентирован на начинающих разработчиков, которые хотят понять, как создавать и настраивать визуальные эффекты в играх.

Перейти к материалу

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #optimization #ui #canvas
🤔 Как оптимизировать UI?

💬 Кратко:

Оптимизация UI в Unity — это в основном борьба с перерисовками (overdraw) и дорогими операциями перестроения (rebuild). Ключевые методы: 1) Разделять UI на несколько Canvas: статический на одном, динамический на другом. 2) Объединять текстуры в атласы, чтобы уменьшить количество переключений материалов. 3) Отключать Raycast Target у элементов, которые не должны реагировать на клик. 4) Для часто обновляемого текста использовать кеширование, чтобы не обновлять его каждый кадр, если значение не изменилось. 5) Использовать пулы объектов для динамически создаваемых элементов, например, сообщений об уроне.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #rest #api #message
🤔 Как организовывалось взаимодействие между микросервисами (REST API, брокеры сообщений)?

💬 Кратко:

Для синхронных операций использовали REST/gRPC: сервисы запрашивали данные друг у друга по HTTP или HTTP/2. Для асинхронных процессов — RabbitMQ или Kafka: публиковали события (OrderCreated) и слушали клиенты. REST подходит для прямых запросов с ожиданием ответа, брокеры — для фоновых задач, рассылок и обеспечения eventual consistency.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #database_performance #slow_queries #query_profiling
🤔 Как проверить, что проблема производительности связана с базой данных?

💬 Кратко:
Сначала проверьте мониторинг сервера БД на высокую загрузку CPU, памяти или дискового ввода-вывода. Затем проанализируйте медленные запросы через лог медленных запросов или инструменты профилирования, такие как EXPLAIN в PostgreSQL/MySQL. Проверьте, используют ли запросы индексы, и нет ли блокировок или взаимоблокировок. Сравните время отклика приложения с временем выполнения запросов в БД.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#video #unity
📚 FREE Complete Unity Game Development Courses

Полный бесплатный курс по разработке игр на Unity — от базовых уроков для начинающих до продвинутых тем, охватывающий основы интерфейса, C#-скрипты, 2D/3D-разработку и практические проекты, чтобы помочь вам освоить Unity и создать собственные игры шаг за шагом

Перейти к материалу

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #boxing #memory #performance
🤔 Когда происходит боксинг?

💬 Кратко:

Боксинг происходит, когда тип значения (например, int или struct) преобразуется в ссылочный тип object. Это нужно, когда тип значения используется там, где ожидается object - например, при добавлении в коллекцию ArrayList. При этом создается новый объект в куче, что требует дополнительной памяти и времени. Распаковка (unboxing) - обратный процесс, когда object преобразуется обратно в тип значения.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа