Создаём компьютерную игру
eng   рус

C++

В уроках данного раздела мы будем изучать язык программирования C++ и рассмотрим, почему он является самым используемым для создания игр на PC. Уроки предназначены для начинающих, поэтому я буду объяснять всё с самых основ.

Учебник C++ для начинающих разработчиков игр

Все уроки связаны между собой. Почти в каждом уроке мы будем рассматривать примеры из области игр. Я старался максимально отдалиться от классических учебников с их скучными примерами из математики и банковского дела. Цель данного учебника - чтобы программирование для вас стало увлекательным творчеством.

C++ был создан на основе языка C. Он использует похожий синтаксис и добавляет много нового, например, объектно-ориентированное программирование и шаблоны.

C++ 17

На данный момент последняя версия стандарта C++ - C++ 17 - выпущена в 2017 году. В уроках мы рассмотрим какие возможности добавлялись в разных версиях: C++ 11, C++ 14, C++ 17, C++ 98.

Уже идёт разработка новой версии C++ - C++ 2a, но пока она находится в стадии черновика, поэтому мы не будем её рассматривать.

Инструменты: GCC и MSVC

Чтобы запускать программы, написанные на C++, нам понадобится компилятор. Мы рассмотрим GCC и MSVC, а потом перейдём к использованию Microsoft Visual C++ 2019 (часть среды разработки Visual Studio). Все программы, которые мы будем использовать, являются бесплатными.

Создание игр с помощью C++

На данный момент существует множество инструментов для разработки игр (Unity, Unreal Engine, Godot...). Если вам нужно быстро создать игру, то лучше выбрать готовое решение, если же вы изучаете программирование и хотите разобраться как работает компьютер и как создаётся современная графика, то C++ ваш выбор. C++ позволяет использовать низкоуровневые графические библиотеки: DirectX и OpenGL, которые напрямую работают с видеокартами.

Содержание

Компиляция C++ кода с помощью g++
Первая программа на C++ - Hello World
Типы данных и переменные в C++
Ввод/вывод в С++. Потоки
Операторы в C++
Условные операторы: if...else if...else, switch
Циклы (loops) и массивы (arrays) в C++
Указатели и ссылки
Функции
Структуры (Struct) в C++
Классы и объекты