0 / 0 / 0
Регистрация: 12.05.2021
Сообщений: 2
1

Самописный игровой движок

12.05.2021, 23:30. Показов 2387. Ответов 5

Author24 — интернет-сервис помощи студентам
Всем здравствуйте,увлекаюсь изучением c и с++, появилось желание сделать самописный движок.
Хочу узнать с чего начать, так как тема абсолютно новая, какие решения есть и какие выбрать, какую литературу читать и т.д

Как вижу движок:
1. Кроссплатформенность не важна, но если имеется то лишним не будет
2. 2-2.5d по типу как в Factorio(что бы можно было выбрать)
3. Анимации
4. Звуки
5. Ии
6. Возможность играть по сети (локальная и/или клиент-сервер)
7. Система стрельбы

Почему не хочу использовать готовые движки?
Хочу создать свое хоть и не такое сложное, что бы понимать как это работает "под капотом" что бы набраться опыта в написании,и создать пару тройку простых игр на этом движке.
Свободного времени и желания уйма, знания английского и математики с физикой за 11 классов есть.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.05.2021, 23:30
Ответы с готовыми решениями:

Игровой движок
Доброго времени суток. Есть желание написать свой игровой движок.В данный момент я...

C++ 3D игровой движок
Добрый день. Подскажите пожалуйста трёхмерный игровой движок, который можно подключить к Visual...

Игровой движок
Всем привет! У меня к вам вопрос: Я прочитал про Ogre3D, и понял, что это вовсе не игровой...

Игровой движок - ?
Здравствуйте, уважаемые пользователи форума! Сам я, не являюсь программистом и честно сказать,...

5
Просто Икс
685 / 227 / 46
Регистрация: 15.12.2009
Сообщений: 669
13.05.2021, 08:15 2
Цитата Сообщение от Kefeer17 Посмотреть сообщение
Хочу создать свое хоть и не такое сложное, что бы понимать как это работает "под капотом"
Чтобы понимать, как это работает, самый оптимальный вариант это сделать опытным путем т.е. посмотреть и поковырять
Ищешь подходящих подопытных с открытыми исходниками на SourceForge, GitHub, Bitbucket и в интернете в целом, после чего начинаешь препарировать и изучать их анатомию
После сборки из исходников у тебя уже появится определенное понимание, какие дополнительные библиотеки используются, форматы файлов и т. д.
Так же будет не лишним научиться работать с Doxygen и Graphviz. Первая сканирует исходники и генерирует документацию API, вторая визуализирует, создавая схемы (графы) по ним.

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

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

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

Так же тебе понадобится разобраться в лицензиях, как на исходники, так и на арт.
И думаю будут полезными сайты с различным свободным артом, вроде OpenGameArt (и т. д.), чтобы не просто "кубики" переставлять и не было необходимости делать сразу огромное кол-во контента самому с нуля

Как-то так в общих чертах, для начала
0
0 / 0 / 0
Регистрация: 12.05.2021
Сообщений: 2
13.05.2021, 10:45  [ТС] 3
Спасибо за ответ)
0
Модератор
Эксперт Java
2558 / 1094 / 375
Регистрация: 11.08.2017
Сообщений: 3,331
13.05.2021, 10:54 4
Mc X, Хватит как фанатик везде где надо и не надо пихать это бесплатное недразумение. В данном случае вообще все 3д редакторы ни к селу ни к городу. Или в него добавили еще и 2д редактор для "полного счастья"?
Если автор хочет создавать контент для своих игр, то нужно уметь рисовать и уметь пользоваться 2д редактором.
Системы контроля версий и документации конечно хорошо, но это не самая нужна вещь, скорее как плюшки для удобства. А вот изучить системы сборки по типу Cmake и научиться собирать библиотеки из исходников и подключать их к проекту точно нужно и без этого не обойтись.
Я считаю что изучать исходники других движков конечно хорошо, но чаще это порой только запутает, с кучей абстракций и прочего. Да и назовите для примера несколько 2д движков на плюсах которые можно поковырять? Мне в голову ничего кроме годота не приходит.
Книги можно найти хорошие, как минимум чтобы узнать структуру движка, из чего он состоит.
Для 2д игр думаю можно начать с sdl/sfml чтобы не заморачиваться сильно на графике, а потом уже изучить например opengl для написания своего рендера (как старт сайт learnopengl.com, в сети есть его переводы, в последней главе создают игру арканоид).
0
Просто Икс
685 / 227 / 46
Регистрация: 15.12.2009
Сообщений: 669
13.05.2021, 17:54 5
Цитата Сообщение от alecss131 Посмотреть сообщение
Если автор хочет создавать контент для своих игр, то нужно уметь рисовать и уметь пользоваться 2д редактором.
Здравствуйте, Капитан Очевидность.
А 2D-редактор это Photoshop полагаю?

Цитата Сообщение от alecss131 Посмотреть сообщение
Хватит как фанатик везде где надо и не надо пихать это бесплатное недразумение
Я буду его "пихать" там где считаю нужным и столько раз сколько это будет необходимо.
Что касается недоразумения, то тебе стоит ознакомиться с темой, как минимум поддержку его со стороны приличного кол-ва компаний отрасли или с определением этого слова.
И я, в отличии от тебя с майкой, нигде не настаиваю, что надо использовать именно его и ничто другое.

Цитата Сообщение от alecss131 Посмотреть сообщение
Или в него добавили еще и 2д редактор для "полного счастья"?
А причем тут растровый редактор? Или скажем возможность использовать векторный редактор для создания контента для игр мы даже не допускаем?
А то, что в Unity присутствует работа с 2D и спрайтовой анимацией тебя не смущает?

Ну, а так, для примера:
Риггинг 2D-персонажа в Blender
3D для 2D-художников, или как ускорить процесс рисования


Надеюсь тебе не надо объяснять, как все это использовать в играх можно.
И вот представь себе, но в Blender 2D всегда было.

Цитата Сообщение от alecss131 Посмотреть сообщение
Системы контроля версий и документации конечно хорошо, но это не самая нужна вещь, скорее как плюшки для удобства. А вот изучить системы сборки по типу Cmake и научиться собирать библиотеки из исходников и подключать их к проекту точно нужно и без этого не обойтись.
Про системы контроля версий я вобще ничего не говорил. Да и какой смысл перечислять то, что итак само собой возникнет в процессе погружения в тему?
В отличии от инструментов, которые зачастую жизненно необходимы, если работаешь с исходниками для которых не настрочили кучу туториалов и книжек не понаписали где все разжевали.

Цитата Сообщение от alecss131 Посмотреть сообщение
Я считаю что изучать исходники других движков конечно хорошо, но чаще это порой только запутает, с кучей абстракций и прочего
Все зависит от движков и я намеренно не использовал это слово в своем ответе т.к. предлагал познакомиться с различными решениями по теме, которые намного проще, чем массовые движки предлагаемые для создания игр и даже необязательно позиционируют себя так (как игровой движок).
Ты можешь считать что угодно вобщем-то, но для меня очевидно, что ты не удосужился даже попробовать поискать, если кроме Godot тебе в голову ничего не пришло

Цитата Сообщение от alecss131 Посмотреть сообщение
Книги можно найти хорошие, как минимум чтобы узнать структуру движка, из чего он состоит.
Для этого даже книжку не надо читать. Из чего состоит умещается в достаточно короткий список, а вот многообразие решений и библиотек в книжках не опишут, формат не тот.

Цитата Сообщение от alecss131 Посмотреть сообщение
Для 2д игр думаю можно начать с sdl/sfml чтобы не заморачиваться сильно на графике
А кроме попсы ты чего-нибудь еще знаешь? И предлагая всем OGL ты не фанатик?

Добавлено через 15 минут
alecss131, Кстати... а ты майку купил? или предлагая заведомо не бесплатные решения предлагаешь пиратить?

Добавлено через 19 минут
Цитата Сообщение от alecss131 Посмотреть сообщение
Да и назовите для примера несколько 2д движков на плюсах которые можно поковырять?
Ну и если тебе очень хочется... мне лень создавать целый список интересных решений, поэтому ограничимся одним.
А вот про такой (Anti-Grain Geometry) интересный проектик ты что-нибудь знаешь?
Anti-Grain Geometry, описание на Вики

Добавлено через 11 минут
И поверь, таких библиотек, движков и просто интересных находок, "миллион" и маленькая тележка и о многих из них не пишут книг.
При этом это намного познавательнее, чем думать, что твой "маленький мирок" это все, что есть, а за границей пустота.
Вселенная гораздо больше, чем нам кажется

Добавлено через 4 часа 14 минут
alecss131,
И еще одно небольшое дополнение относительно того, почему я "пихнул" Blender. (не учел, что это не очевидно видимо)
Посмотри на редактор того же Unity и сравни с интерфейсом Blender.

При условии использования собственного движка (2D или 3D) на основе произвольного кол-ва различных библиотек.
Как ты думаешь, что будет практичнее, использовать готовый редактор позволяющий оперировать любыми данными, имеющий большинство универсальных инструментов (таймлайн, различные объекты с возможностью назначать им собственные параметры, четкой структурой данных) или писать собственный редактор на Qt например?
Или, возможно, ты можешь предложить какой-то другой вариант решения подобной задачи?
0
Просто Икс
685 / 227 / 46
Регистрация: 15.12.2009
Сообщений: 669
14.05.2021, 03:40 6
Цитата Сообщение от alecss131 Посмотреть сообщение
это бесплатное недразумение


Добавлено через 7 минут
0
14.05.2021, 03:40
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.05.2021, 03:40
Помогаю со студенческими работами здесь

Игровой 3д движок
Помогите пожалуйста подобрать 3д движок,по таким требованиям: *легкость освоения(можно пренебречь)...

Игровой движок
Доброго времени суток. Планирую писать игровой движок(только не надо говорить что это не реально))....

BullForce (игровой движок)
Оффициальная страничка: http://bullforce.quaternionstudios.com Пожертвуйте через Paypal. Логотип...

Игровой движок Cryengine 3
Игровой движок Cryengine 3

Посоветуйте игровой движок
Приветствую пользователей. Посоветуйте какой-нибудь игровой движок. - Цена: ~50$ - Графика:...

Как написать игровой движок
доброй ночи уважаемые, прошу помочь, я взялась прописывать движок на игру, и не очень понимаю что...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru