|
0 / 0 / 0
Регистрация: 05.10.2016
Сообщений: 2
|
|
Разработка игры - уперся в очередную стену05.10.2016, 13:32. Показов 1016. Ответов 4
Метки нет (Все метки)
Asciidunge - ссылка на GitHub.
(система сборки CMake, изначально проект пишется и собирается под linux, сборка под Win теоретически возможна, но большого смысла на данном этапе не имеет) Предыстория: Некоторое время назад я начал учить С++ и решил, что попробую написать игру. Я не был уверен, насколько далеко я продвинусь и получу ли хоть сколько работающий прототип, а основной задачей разработки ставилось освоение ООП, о котором я не знал ровным счётом ничего. В качестве идеи для игры я взял копирование уже существующего проекта - игры Desktop Dungeons, старую версию которой можно бесплатно скачать на сайте разработчиков. Суть игры: генерируется карта (в идеале - лабиринт) фиксированного размера с монстрами разных уровней и одним боссом 10го уровня, которого надо победить. Монстры просто стоят и никуда не двигаются, при попытке переместиться на клетку с монстром происходит обмен ударами. План разработки был такой: - я делаю "основу", необходимый минимум игровой механики: карту, монстров, перемещение игрока, битву с монстрами, условия победы и поражения - в прототипе графика отрисовывается текстом в консоли (через ncurses, потому что linux) - если у меня хватит сил и умений довести геймплей до играбельного состояния, то переписать класс вывода графики на SDL2 и реализовать недостающие части: меню, таблицу рекордов, звук В общем, наступил тот самый очередной момент, когда дальнейшая разработка возможно за счёт лавинообразного усложнения кода. Пришло время переписать всё заново, заложив нормальную архитекруту. И вот тут у меня возникла проблема - я не смог найти в инете внятного описания, как пишется основа игрового движка. Примеры, которые я нашёл, слишком сложны для моего понимания. Подскажите ресурсы или литературу об основах игровых движков, без привязки к ОС и к графическим API.
0
|
|
| 05.10.2016, 13:32 | |
|
Ответы с готовыми решениями:
4
Завершение игры при попадании головы змеи в стену Проверить упёрся ли поток в lock Не часто работаю с данной библиотекой, сейчас уперся в ошибку |
|
47 / 47 / 7
Регистрация: 26.12.2014
Сообщений: 189
|
|
| 05.10.2016, 20:21 | |
|
Как писал страуструп, даже зная основы ооп нет гарантии что вы будете программировать.
0
|
|
| 05.10.2016, 23:31 | |||
|
Добавлено через 3 минуты
0
|
|||
|
0 / 0 / 0
Регистрация: 05.10.2016
Сообщений: 2
|
|||
| 06.10.2016, 11:20 [ТС] | |||
|
Добавлено через 8 часов 26 минут ОТВЕТ НАЙДЕН. Пожалуй, теперь я могу сформулировать свой запрос более грамотно - "Как мне сделать так, чтобы моя игра в процессе разработки не разрасталась в макаронное месиво, а код оставался управляемым и легко читаемым?" Ссылка ведет на WEB-версию книги. Добавлено через 13 минут Оказалось, что в сети есть переведённая на русский версия найденной мной книги ВОТ ТУТ Я надеюсь, что этот мой пост пригодится какому-нибудь такому же начинающему разработчику - потому что речь о книге, с которой надо начинать свой путь в разработку игр.
0
|
|||
| 07.10.2016, 13:33 | |||||
|
Добавлено через 1 минуту Добавлено через 16 часов 50 минут
Добавлено через 1 минуту До кучи, ещё такой список книг.
0
|
|||||
| 07.10.2016, 13:33 | |
|
Помогаю со студенческими работами здесь
5
Microsoft выпустила очередную порцию патчей
Разработка игры Разработка игры Разработка мини игры) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога
SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
|
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
|
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога
SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
|
|
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога
Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip"
Извлеките архив и вы увидите. . .
|
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога
Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д.
Сборка примера
Скачайте. . .
|
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net
REST сервисы временно не работают, только через Web.
Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
|