Создание игры на С++ с помощью SDL2
Цель проекта - создание рабочей версии игры
Технологии
Сюжет
Проблемы
Версии SDL
Падение программы
Итоги
205.01K
Category: programmingprogramming

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

1. Создание игры на С++ с помощью SDL2

2. Цель проекта - создание рабочей версии игры

Задачи проекта:
• Освоить базовые навыки работы с библиотекой SDL2
• Научиться работать с анимацией
• Изучить различные механика

3. Технологии

Во время работы над проектом я использовала некоторые
технологии. Основным инструментом являлась
мультимедийная библиотека SDL2(Simple DirectMedia Layer),
которая предоставляет низкоуровневый доступ к
графическому оборудованию, клавиатуре мыши и тд, а
также SDL_image и SDL_ttf
SDL_image - библиотека-расширение для загрузки и
обработки изображений разных форматов, SD
SDL_ttf - библиотека-расширение для работы с текстом

4. Сюжет

Действия игры происходят в альтернативной реальности, где
деятельность человека практически полностью уничтожила
все живое, остались только горы мусора, однотипные
"муравейники" и небольшое количество жителей,
старающихся продолжать жить, несмотря на ужасные
условия

5. Проблемы

В ходе написания кода я столкнулась с 3-мя основными
проблемами:
• Версии SDL
• Падение программы
• Закончился кофе((

6. Версии SDL

Изначально планировалось использовать недавно
вышедший SDL3, однако на тот момент у этой версии ещё не
было синхронизации с SDL_image и SDL_ttf
Единственным решением оказался переход на более ранние
версии библиотек

7. Падение программы

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

8. Итоги

За время работы над проектом я улучшила свои навыки
работы с библиотекой SDL2, научилась реализовывать
анимацию и различные механики
English     Русский Rules