Создание 2D-платформера на C ++ / SDL. Ищу учебники / примеры / ресурсы [закрыто]

9

У меня большой опыт работы с C ++, но у меня нет опыта программирования игр. Этим летом я планирую создать 2D платформер с нуля, используя C ++ / SDL для обучения. Я ищу как можно больше ресурсов, чтобы помочь мне начать. Хороший исходный код, учебники, что угодно.

Одним из лучших учебных пособий, которые я нашел, являются неактивные обучающие программы по прыжкам и бегу покойного Флориана Хуфски . Любые подобные учебники?

firyice
источник
1
www.lazyfoo.net Абсолютный лучший учебник по SDL. Что касается программирования игр, я бы сказал, что лучший урок - это практика. Получить идеи и проверить их, попробовать некоторые простые физические вещи, а затем перейти к полной игры. (по крайней мере, это то, что я сделал, но я сумасшедший) Я начал с tictactoe, перешел на космический шутер, затем на боковой скроллер, затем на шахматы, на задний скроллер и на физические игры.
ultifinitus

Ответы:

4

Если вы любите C ++ / объектно-ориентированные приложения, вам, возможно, будет проще работать с SFML . Это очень похоже на SDL, за исключением того, что имеет интерфейс OO. Он не так широко распространен, как SDL, но все еще имеет довольно много последователей.

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

  • Флэш-игра Dojo нацелена на пользователей Flixel и Flashpunk, но имеет много материалов типа «начинающего программирования игр».

  • GameDev.net - еще один огромный ресурс (посмотрите их статьи и вики)

  • Также посмотрите архивы FlipCode . Они обычно охватывают более сложные темы, но вы можете найти их полезными в будущем.

michael.bartnett
источник
3

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

Василий Шарапов
источник