Обучение

Консультация
Работаем с 8:30 до 19:00Выходной: суббота и воскресенье


Сообщение об ошибке

Обучение

Сообщение об ошибке

Профессиональная разработка игр на C++

Профессиональный курс (обязателен для трудоустройства)

Game Developer - специалист, который занимается разработкой компьютерных игр. Задача заключается в создании для игр трехмерной графики, моделей игровых персонажей, окружения, уровней, игровых объектов, фонов и роликов.

Курс позволит реализовать свой творческих потенциал в ИТ-сфере и получить знания по одному из востребованных направлений. В процессе обучения слушатели создадут собственные «танчики» - игру Battle City.

Описание курса

Формы обучения

Выходного дня

02.09.2018
Суббота и воскресенье с 09.30 до 12.20
1 061 BYN
108 уч.ч (три месяца)
Рассрочка три выплаты 389 BYN/ месяц
№ группы: M-CD2-02-18

Условия отбора

Вы самостоятельно справляетесь с тестовым заданием:

  • работаете на компьютере с Linux;

  • собираете из исходников библиотеку SFML, как расписано на официальном сайте;

  • собираете примеры использования этой библиотеки и убеждаетесь, что у вас они работают; 

  • если вы смогли выполнить все пункты выше, тестовое задание считается выполненным (важно: мы не будем использовать эту библиотеку в обучении).

Для кого этот курс

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

Необходимая подготовка

Вы знаете:

  • С++ на уровне junior разработчика либо владеете C# или Java на уровне профессионала;

  • математику за 9-ый класс (можете решить оттуда любые задачки). Вектором, процентами и синусом вас не напугать;

  • английский на уровне, достаточном для чтения и понимания документации.

Обратите внимание: вам понадобится ноутбук с GNU/Linux и Windows машина (может быть установлена параллельно с Linux). При желании портировать на MacOS и/или Android понадобятся устройства на этих ОС.

Для чего этот курс

  • Научить вас реальной, современной работе программиста игр.

  • Дать полное и всестороннее понимание того, как работает игра и как она устроена внутри.

  • Дать практические навыки работы, которые вы не сможете получить в ВУЗе, непосредственно от профессионала, занимающегося реализацией игровых движков для многоплатформенных проектов. 

Вы будете уметь

  • Пользоваться компилятором, линкером, отладчиком, терминалом как настоящий хакер.

  • Архитекртурно мыслить (слоями, абстракциями) в рамках ООП и не только.

  • Cоздавать и редактировать множество разнообразных форматов, изображений, звуков и моделей.

  • Применять полученные знания на любой современной ОС: Windows, Linux, MacOS, Android, iOS.

Дополнительно

  • Каждая новая теоретическая информация будет подкрепляться программой, которую нужно будет написать (за время курса вы напишите около 25 тестовых программ и свою мини-игру).

  • Дополнительно вам понадобится изучать документацию OpenGL ES 2.0, SDL2 и т.д.

  • Дополнительно в течении недели студент выполняет практические задания (домашняя работа).

  • Для самостоятельной работы студентам понадобится от 8 до 16 часов в неделю (зависит от уровня подготовки студента).

  • После выполнения всех заданий студент может свериться или просто взять готовое решение.

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

  1. Становление профессионального программиста
    • Установка системы (GNU/Linux), компилятора, системы сборки и управления кодом;
    • Создание Привет Мир и его подробный разбор. Исправление ошибок;
    • Создание и использование статических и динамических библиотек;
    • Знакомство с библиотекой SDL2 + динамическое связывание;
    • SDL2 + статическое связывание;
    • Главный цикл программы, GUI программирование, очередь событий;
    • Движок игры. Разделение на код игры и код движка для повторного использования;
    • Вынос движка в разделяемую библиотеку.
  2. Изучение программирования графики (2D через 3D)
    • Основы вывода примитивов: вывод линий, треугольников, заполнение;
    • Знакомство с OpenGL: создание контекста, загрузка функций, очистка буфера;
    • Вывод своего первого треугольника через OpenGL ES 2.0, знакомство с шейдерами;
    • Vertex morphing;
    • Загрузка текстур, текстурирование, форматы текстур, поддержка аппаратурой;
    • Перенос работы с графикой в наш мини-движок, проецирование архитектуры;
    • Матрицы (масштабирования, переноса, поворота) и векторы, вывод и программирование;
    • Использование матрицы и векторов в шейдерах;
    • Проверка знаний: двигается, вращается и масштабируется ли текстурированный объект (танк).
  3. Изучение программирования звука
    • Принципы вывода звука. Минимальный пример;
    • Добавление звука в движок, звуковых форматов, эффектов (эхо, эффект Доплера).
  4. Изучение вывода текста, кнопок, ползунков и прочих элементов управления
    • Добавление ImGui и разбор реализации вывода текста, кнопок, управления мышью;
    • Обновление интерфейса нашего мини-движка. Игра как загружаемая библиотека;
    • Чистка кода движка (подготовка к созданию на нем мини-игры).
  5. Создание собственного мини-проекта
    • Продумывание игры для разработки. Натуральное макетирование;
    • Программирование игры на мини-движке (8 часов на разработку игры сложности змейки, тетриса, пинбола).
  6. Портация игры на Windows 10
    • Портация игры. Два подхода: 1. msys2+gcc 2. Visual Studio+vcpkg
  7. Портация игры на MacOS
    • Портация игры на MacOS. clang+xcode
  8. Портация игры на Android
    • Порт на Android. Android-Studio + gradle

Преподаватели курса

  • Леонид Чайка

    Специальность:
    Разработка игр на С++

    Lead Core Developer в Wargaming.net в проекте World Of Tanks Blitz. До этого писал движки и игры в AWEM, CyberCradle. Начинал карьеру программиста в EPAM Systems.

    Узнать больше

Другие курсы программы Разработка игр на С++

Леонид Чайка

Специальность:Разработка игр на С++

Lead Core Developer в Wargaming.net в проекте World Of Tanks Blitz. До этого писал движки и игры в AWEM, CyberCradle. Начинал карьеру программиста в EPAM Systems.

Консультация и запись

Почему выбирают IT-академию?

Более 2140 выпускников успешно работают в IT-компаниях в Беларуси и за рубежом

Акции и новости