Загрузка

Освойте программирование
с нуля до профи:
C++ и Unreal Engine

Освойте программирование
с нуля до профи:
C++ и Unreal Engine

Откройте для себя мир программирования! Станьте специалистом по C++ или научитесь разрабатывать игры на Unreal Engine.  Наши курсы подойдут как новичкам, так и тем, кто хочет прокачать свои навыки.

Учитесь у профессионалов, работайте над проектами и станьте востребованным разработчиком!

Ближайший старт — 01.03.2025

Всё для успешного старта

Интенсивное обучение за короткий срок

Интенсивное обучение за короткий срок
Освоите основы C++ всего за 1 месяц благодаря продуманной программе

Практика с первых занятий

Практика с первых занятий
Упор на реальные задачи, которые помогут быстро освоить язык

Поддержка опытного наставника

Поддержка опытного наставника

Спикер курса будет на связи ежедневно в Telegram-чате. Вы сможете задать все свои вопросы и получить помощь

Доступ к материалам

Доступ к материалам
Все уроки и материалы останутся с вами на пол года для дальнейшего изучения
⋅  SizeOf School  

Спикер

Александр Федосов — инженер-программист с более чем 10-летним опытом работы в игровой индустрии. Специализируется на разработке игр на Unreal Engine, используя C++ и Blueprints.

В 9 лет он начал работать с Macromedia Flash MX, затем Александр изучал ActionScript 2.0 и спустя годы перешел с Flash на Unity 3D.

«C++ — мой самый сильный язык программирования, но я твердо верю, что освоение основ разработки программного обеспечения делает адаптацию к новым языкам гладкой»

В 2017 Александр получил степень бакалавра в области компьютерных наук. Сейчас управляет собственной компанией SizeOf Games.

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

Проекты, в реализации которых принимал участие Александр

Кому подойдёт курс?

Базовый

Базовый

Если вы только начинает свой путь в мир программирования и хотите разобраться в основах C++, заложив прочную базу для дальнейшего обучения, то этот курс создан для вас!

Длительность: 1 месяц

Ближайший старт 01.03.2025

Продвинутый

Продвинутый

Если вы уже знакомы с основами языка С++ и хотите углубить свои знания, чтобы решать более сложные задачи, то мы ждем вас на Продвинутом курсе!

Длительность: 3 месяца

Ближайший старт 01.03.2025

Unreal Engine

Unreal Engine

Курс по Unreal Engine станет отличным выбором, если вы хотите научиться создавать игры и работать с одним из самых востребованных игровых движков
Длительность: 4 месяца

Ближайший старт 15.03.2025

Как проходит обучение

Формат обучения

Формат обучения

Всё обучение проходит онлайн: лекции в записи, вебинары, общение с преподавателем и сокурсниками в закрытом Telegram-чате

Платформа

Платформа

Сдача домашних работ и получение обратной связи по ним от преподавателей происходит на платформе 

Живые вебинары

Живые вебинары

Вебинары с разбором частых ошибок проходят 1 раз в неделю и сохраняются на платформе

Практика

Практика

Домашнее задание выдается, в среднем, 2 раза в неделю, а его выполнение занимает 1-2 часа

Программы курсов

Основы работы с Git
  • Системы контроля версий: назначение и преимущества
  • Основные операции: коммиты, откат, история изменений
  • Сравнение GitHub и GitLab
  • Работа с TortoiseGit
  • Ветки: создание, слияние, разрешение конфликтов
  • Командная работа в Git
  • Установка и настройка Visual Studio
  • Создание первой программы
  • Компиляция и запуск программ
  • Области применения языка
  • Преимущества C++
  • Структура программы
  • Объявление и инициализация переменных
  • Типы данных
  • Константы
  • Ввод и вывод данных с консоли
  • Операторы: арифметические, логические, сравнения
  • Операторы ветвления: if, else if, else
  • Логические выражения в условиях
  • Вложенные условия
  • Операторы div и mod
  • Основы циклов
  • Примеры использования каждого цикла
  • Операторы break и continue
  • Объявление и инициализация массивов
  • Обход массива с помощью цикла
  • Поиск в массиве
  • Создание и работа с двумерными массивами
  • Заполнение и вывод на экран
  • Транспонирование матрицы
  • Вывод матрицы в спиральном порядке
  • Определение и вызов функций
  • Возврат значений
  • Передача параметров по значению и по ссылке
  • Работа со строками в C++
  • Основные методы: length, substr, find
  • Ввод и вывод строк
  • Открытие и чтение файлов
  • Запись в файлы
  • Обработка ошибок при работе с файлами
  • Понятие указателей и их назначение.
  • Основные операции с указателями.
  • Арифметика указателей 
  • Управление динамической памятью с помощью new и delete
  • Взаимосвязь указателей и массивов.
  • Создание и использование динамических массивов
  • Классы и объекты: создание и использование
  • Конструкторы и деструкторы: инициализация и очистка
  • Инкапсуляция: управление доступом к данным
  • Наследование: расширение функционала классов
  • Полиморфизм: переопределение методов

Итоговый проект — это возможность применить все знания, полученные на курсе. Вы создадите игру в виде консольного приложения, используя принципы объектно-ориентированного программирования и архитектурный шаблон MVC.

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

Архитектура и работа вычислительных систем
  • Память компьютера
  • Процессор
  • Кэш процессора
  • Системы счисления
  • Сложность алгоритмов
  • Представление целых чисел в памяти (втч отрицательных)
  • Представление чисел с плавающей точкой в памяти
  • Работа с битами
  • Области памяти программы
  • Стек
  • Что такое распределители памяти и для чего могут понадобиться пользовательские распределители памяти (memory allocators)
  • Принципы работы физической и виртуальной памяти, отображение памяти, как доступная память операционной системы распределяется процессу
  • Имплементация простого распределителя памяти
  • Выравнивание памяти
  • Арифметика чисел с фиксированной запятой
  • Отличия struct и class. Отличия enum и enum class
  • C++ cast operators, их различия и как они работают
  • Виртуальные функции и виртуальные деструкторы. Полиморфизм
  • Таблица виртуальных функций
  • Конструкторы копирования и перемещения
  • Pure virtual function call 
  • Базовые принципы подсчета ссылок
  • Умные указатели (unique, shared, weak)
  • Циклические ссылки
  • Имплементация собственного shared pointer
  • Сборка мусора. Граф зависимостей. Алгоритм сборщика мусора
  • Области применения лямбд и синтаксис
  • Как устроены лямбды. Потенциальные опасности использования отложенных лямбд и способы их предотвращения
  • Ручное измерение с помощью часов и циклов процессора
  • Профайлеры. Intel VTune, AMD μProf
  • Производительность распределителей памяти общего назначения против распределителей памяти специального назначения

По завершении курса у вас будет не только фундаментальное, но и расширенное понимание программирования на C++. Вы освоите принципы работы с памятью, оптимизации кода, что позволит вам уверенно решать сложные задачи в реальных проектах.

Во время обучения вы разработаете свой собственный класс для работы с числами с фиксированной точкой. А также вы напишете свой собственный аллокатор памяти, что позволит понять, как эффективно управлять ресурсами и повысить производительность приложений. Работа с памятью — одна из ключевых задач C++ разработчика, и вы будете готовы решать её уверенно и эффективно.

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

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

После этого курса у вас будет портфолио из собственных проектов, а главное — знания и навыки, необходимые для работы в реальных командах. Вы будете готовы к поиску работы в роли C++ разработчика, а ваши проекты станут отличным дополнением к резюме.

Введение
    • Работа в лаунчере
    • Установка Unreal Engine 5 из лаунчера
    • Запуск UE5 из лаунчера
    • Создание Blueprint проекта на UE5 из лаунчера
    • Установка необходимых компонентов из Visual Studio Installer
    • Скачивание и установка Rider 
    • Установка Unreal Engine 5 из Git 
    • Конфигурации сборки Unreal Engine. Сборка движка.
    • Создание C++ проекта по шаблону Third Person на UE5
    • Особенности работы с git в Unreal Engine 5
  • Плагины из Fab
  • Обзор Unreal Engine 5
  • Руководство по стилю проекта
  • Создание игровых карт
  • Viewport
  • Работа с контентом
  • Работа со Static Mesh
  • Создание своих Actors
  • Коллизия
  • Физика
  • Системы координат (глобальные и локальные координаты). Единицы измерения пространства и веса объектов
  • Упаковка проекта
  • Создание и настройка ландшафта
  • Foliage
  • Прототипирование
  • Работа с освещением
  • Volumetric Cloud
  • PostProcess
  • World Partition
  • Level Streaming
  • Sound Cue
  • SoundClass и SoundMix
  • Actor и Components
  • GameInstance
  • GameModeBase и GameMode
  • GameState и GameStateBase
  • PlayerController, AIController
  • Pawn и Character
  • PlayerState
  • HUD
  • UWorld
  • Level 
  • Концепция визуального скриптинга
  • Создание и использование Blueprints
  • Основные элементы Event Graph
  • Работа с функциями и макросами
  • Математические операции
  • Управление игровыми объектами
  • Перечисления
  • Структуры
  • DataTable и DataAsset
  • Массивы
  • Set и Map
  • Таймеры
  • Timeline
  • Трассировка
  • Отладка Blueprints (logs, break point)
  • Определение всех базовых типов Gameplay Framework в C++
  • Создание наследников классов 
  • Абстрактные классы и чисто виртуальные функции
  • Контейнеры (TArray, TMap, TSet, TStack, TQueue…)
  • Оптимизация использования TArray
  • Строки (FString, FName, FText, TCHAR (wchar_t ). Макрос TEXT(“”) )
  • Construction Script
  • Делегаты
  • Настройка управления (Legacy Input, Enhanced Input)
  • Настройка Character Movement
  • Основанные на C++ структурах DataTable и DataAsset
  • Отладка. Логи в UE5
  • Skeletal Mesh
  • Animation Sequence
  • Blend Space
  • Blend Space 2D
  • Animation Blueprint
  • State Machine
  • Animation Montage (Root Motion)
  • Aim Offset
  • Notify
  • Root Motion
  • IKRig и IKRetargeter
  • ControlRig
  • Симуляция одежды
  • Теория AI в UE5
  • AICharacter и AIController. Методы назначения AI контроллера AI персонажу
  • Навигация. NavMesh Bounds Volume. NavMesh Agents. NavMesh Area. Gameplay Debugger
  • AI Spawners
  • AI Perception. AI Perception Events. Gameplay Debugger
  • Behaviour three и BlackBoard. Отладка Behaviour three
  • Преследование игрока
  • EQS. EQS Gameplay Debugger
  • GenericTeamID
  • Основы
  • Редактор виджетов
  • Виджеты доступные в движке
  • PreConstruct и IsDesignTime
  • Виджет игрового таймера
  • Виджет здоровья персонажа
  • Динамическое добавление виджетов на экран
  • Widget Reflector

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

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

Вы научитесь настраивать анимации персонажа и связывать их с логикой. Вы освоите такие инструменты, как Animation Blueprint, Blend Space и State Machine, чтобы придать движениям реалистичность. А еще создадите удобный интерфейс — полоски здоровья, игровые таймеры и другие виджеты, которые сделают ваш проект завершенным.

После этого курса у вас будет не только готовая игра, но и глубокое понимание работы с Unreal Engine 5. Вы будете уверенно разрабатывать игры, настраивать механики и работать с профессиональными инструментами — это станет вашим первым шагом в карьеру в игровой индустрии.

Тарифы

Стандартный

  • 9 модулей
  • Старт в любое время
  • Проверка всех домашних заданий
  • Вебинар 1 раз в неделю с разбором домашних заданий и ответами на вопросы
  • Закрытый чат участников с обратной связью от спикера курса
  • Сертификат о прохождении курса
20 000 ₽
10 000 ₽

Расширенный

  • 9 модулей
  • Проверка всех домашних заданий
  • Вебинар 1 раз в неделю с разбором домашних заданий и ответами на вопросы
  • Закрытый чат участников с обратной связью от спикера курса
  • Сертификат о прохождении курса
50 000 ₽
25 000 ₽

Стандартный

  • 9 модулей
  • Старт в любое время
  • Проверка всех домашних заданий
  • Вебинар 1 раз в неделю с разбором домашних заданий и ответами на вопросы
  • Закрытый чат участников с обратной связью от спикера курса
  • Сертификат о прохождении курса
40 000 ₽

20 000 ₽

Расширенный

  • 9 модулей
  • Проверка всех домашних заданий
  • Вебинар 1 раз в неделю с разбором домашних заданий и ответами на вопросы
  • Закрытый чат участников с обратной связью от спикера курса
  • Сертификат о прохождении курса
120 000 ₽

60 000 ₽

Стандартный

  • 9 модулей
  • Старт в любое время
  • Проверка всех домашних заданий
  • Вебинар 1 раз в неделю с разбором домашних заданий и ответами на вопросы
  • Закрытый чат участников с обратной связью от спикера курса
  • Сертификат о прохождении курса
50 000 ₽

25 000 ₽

Расширенный

  • 9 модулей
  • Проверка всех домашних заданий
  • Вебинар 1 раз в неделю с разбором домашних заданий и ответами на вопросы
  • Закрытый чат участников с обратной связью от спикера курса
  • Сертификат о прохождении курса
150 000 ₽

75 000 ₽

Отзывы наших учеников

Частые вопросы

Какие знания нужны для начала курса?

Специальных знаний не требуется. Курс подходит для новичков и рассчитан на изучение C++ с нуля

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

Спикер курса будет на связи ежедневно в Telegram-чате. Вы сможете задать вопросы, получить советы, комментарии к домашним заданиям и полезные рекомендации

Обучение требует 3–5 часов в неделю, включая выполнение домашних заданий. Вы можете изучать материалы в удобное для вас время, что позволяет легко совмещать учебу с другими делами

Для обучения подойдет компьютер средней мощности:

  • Процессор: 4 ядра, от 2,5 ГГц.
  • ОЗУ: от 4 ГБ.
  • Видеокарта: Intel HD Graphics 4000, Nvidia 330m, ATI Radeon HD 4850 или лучше.
  • SSD: желательно, но не обязательно