Форум программистов, компьютерный форум, киберфорум
Программирование игр
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.94/18: Рейтинг темы: голосов - 18, средняя оценка - 4.94
Угадываю функции...
2 / 2 / 0
Регистрация: 18.11.2019
Сообщений: 77
1

Какой движок лучше выбрать

18.06.2020, 08:23. Просмотров 3421. Ответов 53
Метки нет (Все метки)

Здравствуйте. Имеется древний ноут с windows 7. Юнити на нём лагает (да и учить шарп как то не хочется), Unreal Engine тоже. Посоветуете какой-нибудь современный малотребовательный игровой движок для C++? А то кодить на билдере 2009 года мне уже как-то стыдно
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.06.2020, 08:23
Ответы с готовыми решениями:

Какой движок лучше
Я хочу создать 3д игру в стиле action, нашел два движка Ogre SDK и Irrlicht Engine SDK. Подскажите...

Какой движок выбрать 2d?
Хочу подучить язык java и возможно выучить ещё парочку типа lua или python. Есть заодно желание...

Какой движок выбрать?
Какой движок выбрать для RST стратегии? Желательно на C#, но можно и на другом.

Подскажите, какой игровой движок выбрать
Посоветуйте, какой движок можно выбрать, если я хочу сделать проект по типу: Star Wars: Knights of...

53
Модератор
1422 / 423 / 139
Регистрация: 11.08.2017
Сообщений: 1,443
18.06.2020, 08:58 2
для слабого компа если только gzdoom))) раз даже юнити лагает)) попробуйте еще cryengine или ogre например, но мне кажется вряд ли что будет лучше юнити работать
1
Угадываю функции...
2 / 2 / 0
Регистрация: 18.11.2019
Сообщений: 77
20.06.2020, 09:02  [ТС] 3
Цитата Сообщение от alecss131 Посмотреть сообщение
для слабого компа
для слабого ноутбука*
А что-то заточенное под 2d есть?
(К слову, проблема не только в юнити (хотя она тоже лагает). В последних версиях поддержка MonoDeveloper'а прекратилась, и на его место пришла VS, которая не совместима с моей ОС. А старые версии с MonoDeveloper'ом глючат )
0
Модератор
1422 / 423 / 139
Регистрация: 11.08.2017
Сообщений: 1,443
20.06.2020, 09:26 4
2d… первое что приходит в голову так это box2d, но это не игровой а физический движок, то есть графику придется самому писать. Может godot?

Добавлено через 6 минут
Еще как вариант sfml, вроде для 2д как раз, но без графического редактора, все кодом. Тут даже раздел по этой штуке есть. Ессли это только графика то тогда хороший вариант из связки sfml + box2d. box2d кстати в angry birds использовался и вроде он бесплатный (он еще часть бесплатного libgdx это точно)
1
Угадываю функции...
2 / 2 / 0
Регистрация: 18.11.2019
Сообщений: 77
20.06.2020, 09:32  [ТС] 5
Спасибо, попробую godot, выглядит по крайней мере приятно.

Добавлено через 2 минуты
sfml пробовал прикручивать к Code::Blocks - всё без толку. Не умею я устанавливать большие либы.
0
Просто Икс
420 / 137 / 20
Регистрация: 15.12.2009
Сообщений: 399
20.06.2020, 10:15 6
Цитата Сообщение от MiKITA17 Посмотреть сообщение
для слабого ноутбука
Цитата Сообщение от MiKITA17 Посмотреть сообщение
В последних версиях поддержка MonoDeveloper'а прекратилась
Цитата Сообщение от MiKITA17 Посмотреть сообщение
Посоветуете какой-нибудь современный малотребовательный игровой движок для C++
Что мешает использовать те версии (из ранних) которые поддерживает железо?
Современный это синоним "поддерживающий современные технологии", если у вас железо их не поддерживает, то вам от них ни горячо ни холодно. Точно так же, как будь у вас топовое железо со всеми самыми последними технологиями, то отсутствие знаний и опыта при любом раскладе не позволит использовать все эти возможности.

Добавлено через 14 минут
Цитата Сообщение от alecss131 Посмотреть сообщение
ogre
И Огра лучше не трогать. Это графический движок, что лишь часть игрового.
Те кто ищет "игровой движок" обычно не готовы к тому, чтобы осознать эти существенные различия
1
4176 / 2282 / 387
Регистрация: 05.10.2013
Сообщений: 6,385
Записей в блоге: 177
20.06.2020, 18:15 7
Цитата Сообщение от MiKITA17 Посмотреть сообщение
В последних версиях поддержка MonoDeveloper'а прекратилась, и на его место пришла VS, которая не совместима с моей ОС.
VS - это для Windows и Mac. Значит, у вас Linux. Я использую для Unity (и не только для Unity) кроссплатформенный легковесный редактор кода VSCode. Официальная инструкция, как настроить VSCode для Unity: https://code.visualstudio.com/docs/other/unity VSCode работает на Linux, Mac и Windows.

Цитата Сообщение от MiKITA17 Посмотреть сообщение
современный малотребовательный игровой движок для C++?
Например, есть игровой движок Urho3D. Малотребовательный и с программированием на C++. Он не только для 3D, но и для 2D. В него встроен физический движок Box2D. Если захотите 3D, то в него встроен физический движок Bullet и библиотека загрузки 3D-моделей Assimp. Но если вы не смогли подключить SFML, то и Urho не получится, потому что он подключается таким же образом. Я собирал пример на Urho с помощью Makefile'а, вот моя инструкция: Makefile для сборки примера на движке Urho3D с помощью MinGW 32 bit Если хотите попробовать, то можете нагуглить, как его подключать к вашей среде программирования.

Цитата Сообщение от MiKITA17 Посмотреть сообщение
Спасибо, попробую godot, выглядит по крайней мере приятно.
Предполагаю, что по требованиям Godot несильно отличается от Unity. У меня на ноутбуке Unity нормально работает. Характеристики моего ноутбука:
Asus K53SV; 8 GB RAM, i3 2.2 GHertz (2 cores); Intel HD Graphics 3000; Nvidia Geforce GT 540M (1 GB); Windows 10
К тому же, на Godot такое же программирование на C++, как на Unity, то есть и там и там на C++ можно писать только плагины (библиотеки) на C++, чтобы ускорить алгоритм, который недостаточно быстро работает из-за особенностей C#. Игровые скрипты на Godot можно писать на C# и GDScript (очень похож на Python). О написании плагинов можно пока не думать. Очень редко может возникнуть такая ситуация. Можно почитать здесь для чего это используется: Tutorial — Create C/C++ plugins for Unity3D

Цитата из статьи выше. Насколько алгоритм можно ускорить, переписав с C# на C++ в виде плагина:

Reference machine: Macbook Pro 15″ Mid 2014, Intel I7 2.2Ghz
  • Fill 10000 x 10000 Integer array with series:
    [Unity C#] 1.0258 seconds vs 0.2346 seconds [C Library]
  • Fill 500 x 500 Integer array with series:
    [Unity C#] 3.794 milliseconds vs 0.35 milliseconds [C Library]
  • Fill 10000 x 10000 Integer array with Random numbers:
    [Unity C#] 4.26 seconds vs 0.995 seconds [C Library]
  • Fill 10000 x 10000 Integer array with Perlin Noise:
    [Unity C#] 6.015 seconds vs 2.394 seconds [C Library]
  • Fill 500 x 500 Integer array with Perlin Noise:
    [Unity C#] 20,47 milliseconds vs 5.697 milliseconds [C Library]
1
4176 / 2282 / 387
Регистрация: 05.10.2013
Сообщений: 6,385
Записей в блоге: 177
20.06.2020, 18:16 8
Цитата Сообщение от MiKITA17 Посмотреть сообщение
sfml пробовал прикручивать к Code::Blocks - всё без толку. Не умею я устанавливать большие либы.
Я не пробовал никогда Code::Blocks. Сейчас попробовал подключить SFML к QtCreator - работает. Я слышал, что эта среда идёт с некоторыми дистрибутивами Linux. Если планируете писать GUI-приложения на C++, то Qt может стать отличным выбором.

Скину настройки для QtCreator и тестовый код с созданием пустого окна на SFML, может вам пригодится:

.pro

Код
CONFIG += console c++11
CONFIG -= qt

LIBS += -L"E:\Libs\SFML-2.5.1-windows-gcc-7.3.0-mingw-32-bit\lib"
LIBS += -L"E:\Libs\SFML-2.5.1-windows-gcc-7.3.0-mingw-32-bit\bin"

INCLUDEPATH += "E:\Libs\SFML-2.5.1-windows-gcc-7.3.0-mingw-32-bit\include"
DEPENDPATH  += "E:\Libs\SFML-2.5.1-windows-gcc-7.3.0-mingw-32-bit\include"

CONFIG(release, debug|release): LIBS += -lsfml-audio -lsfml-graphics -lsfml-system -lsfml-network -lsfml-window
CONFIG(debug  , debug|release): LIBS += -lsfml-audio -lsfml-graphics -lsfml-system -lsfml-network -lsfml-window

SOURCES += \
    main.cpp
main.cpp

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <SFML/Graphics.hpp>
#include <SFML/Window.hpp>
 
// Configure Qt creator with SFML GCC 7.3.0 MinGW on Windows 10
// https://www.youtube.com/watch?v=HO1yhzTVzDo
 
int main()
{
    sf::Event event;
    sf::RenderWindow _window;
    _window.create(sf::VideoMode(1280,720), "test");
    _window.setFramerateLimit(20);
    while(_window.isOpen()){
        _window.display();
        while(_window.pollEvent(event))
            if(event.key.code == sf::Keyboard::Space)
                _window.close();
    }
    return 0;
}
0
Модератор
1422 / 423 / 139
Регистрация: 11.08.2017
Сообщений: 1,443
20.06.2020, 18:36 9
8Observer8, автор же написал что у него windows 7, а вы про лиеукс сделали выводы…
может он 19 студию пробует, может майки поддержку 7 убрали
а так в целом мне кажется для 2д вполне пойдет и 3 юнити к примеру, уж он то должен норм работать, но автор не хочет шарп
анреал для 2д это перебор, 4.25 компилит шейдеры для сцены из шаблонов даже у меня прилично (8700к-1070ти-32гб)
мне кажется лучшее тут научиться подключать библиотеки и использовать sfml+box2d
хотя для 2д игр графику не сложно и самому кодить на чистом opengl, на своем примере, у меня пока проблемы с коллизиями, особенно с не статичными объектами и углами не кратными 90 градусов.
1
4176 / 2282 / 387
Регистрация: 05.10.2013
Сообщений: 6,385
Записей в блоге: 177
21.06.2020, 11:44 10
Цитата Сообщение от alecss131 Посмотреть сообщение
8Observer8, автор же написал что у него windows 7, а вы про лиеукс сделали выводы…
Не знаю даже, как я так взглядом пропустил первые слова первого сообщения. Меня привлекла фраза, что Visual Studio не поддерживается на его ОС, а VS есть для Windows и Mac, поэтому я подумал, что Linux у него.

Цитата Сообщение от MiKITA17 Посмотреть сообщение
для слабого ноутбука*
Посмотрите на характеристики моего ноутбука выше. Как видите, у меня не особо мощный ноутбук. Ему больше 10 лет. Я его брал за 20 тыс. рублей. У меня отлично работает Windows 10, Unity и Blender - ничего не греется, не шумит. Я пробовал ставить UE4 и CryEngine5, но мой ноут сильно шумит и греется. В UE4 есть поддержка 2D игр, но на мой взгляд в Unity удобнее делать 2D, потому что UE4 и CryEngine рассчитаны на 3D и топовую графику и мощные компьютеры. C# намного проще в освоении, чем C++ и вам будет комфортно. Если ваш ноут не поддерживает Windows 10, тогда поищите в интернете, какая версия Unity работает с VS2013 (по-моему, максимально на Win7 можно поставить VS2013, а VS2015 требует Win10). Но параллельно с Unity и какими-то другими высокоуровневыми движками лучше ещё осваивать более низкоуровневую библиотеку, например, SFML, чтобы только кодом писать, так можно лучше прочувствовать, как ниже дело обстоит, а ещё лучше параллельно делать без движков, например, на OpenGL, потому что шейдеры нужно тоже осваивать, они применяются и в высокоуровневых движках.

Цитата Сообщение от MiKITA17 Посмотреть сообщение
sfml пробовал прикручивать к Code::Blocks - всё без толку. Не умею я устанавливать большие либы.
В этой проблеме вам срочно нужно разобраться, потому что все библиотеки на C++ подключаются одинаково. Если вы сейчас этого не поймёте, то не сможете подключить никакую библиотеку, вроде Box2D и т.д. В интернете огромное количество руководств. На Youtube наберите, как подключить SFML. Там вам просто покажут, а вы повторите, ставя видео на паузу. На английском больше всего таких инструкций. Даже если вы не понимаете английский, всё равно будет понятно, как и что настраивать.
0
Угадываю функции...
2 / 2 / 0
Регистрация: 18.11.2019
Сообщений: 77
21.06.2020, 12:26  [ТС] 11
Цитата Сообщение от 8Observer8 Посмотреть сообщение
Но параллельно с Unity и какими-то другими высокоуровневыми движками лучше ещё осваивать более низкоуровневую библиотеку, например, SFML
Цитата Сообщение от 8Observer8 Посмотреть сообщение
На Youtube наберите, как подключить SFML.
Пробовал, дня четыре мучался подключая это всё. Как я понимаю версия моего компилятора не подходила к данным версиям. Не знаю, потом как нибудь нужно взяться снова за это дело.
0
4176 / 2282 / 387
Регистрация: 05.10.2013
Сообщений: 6,385
Записей в блоге: 177
21.06.2020, 12:51 12
Цитата Сообщение от MiKITA17 Посмотреть сообщение
Как я понимаю версия моего компилятора не подходила к данным версиям.
Может такое быть. Если зайти на сайт скачки SFML: https://www.sfml-dev.org/download/sfml/2.5.1/ то в данный момент там можно скачать версию SFML GCC 7.3.0 MinGW (DW2) - 32-bit. По логике, нужно искать версию компилятора MinGW 7.3.0 32-bit, чтобы версия MinGW-компилятора совпадала с той, с помощью которого собрали SFML.

Я скачал крайнюю версию SFML, но компилятор у меня более новый - MinGW 8.1.0-win32. У меня уже стоял этот компилятор, до того, как я поставил Qt. Qt Creator автоматом потянул в настройки этот компилятор. Я попробовал собрать пример на SFML с новым компилятором и оно работает. Вот требования Qt, который работает на Win7: https://doc.qt.io/QtForDeviceC... ndows.html Я вам очень рекомендую поставить Qt, к которому подключается SFML очень легко. Вместе с Qt идёт своя MinGW версия компилятора. Вы дополнительно ещё получите возможность делать GUI приложения на C++, собирать приложения под Android и iOS. Не раздумывая ставьте Qt, подключайте SFML и не теряйте очень драгоценное время. Сейчас у вас есть время, что вы можете 4 дня спустить, а потом вы будете вспоминать и жалеть, что не использовали это по-настоящему драгоценное время на SFML и Qt. Сейчас вы можете мне не поверить, но потом вспомните, как дорого время.
0
Угадываю функции...
2 / 2 / 0
Регистрация: 18.11.2019
Сообщений: 77
21.06.2020, 15:59  [ТС] 13
8Observer8, спасибо, попробую.
0
4176 / 2282 / 387
Регистрация: 05.10.2013
Сообщений: 6,385
Записей в блоге: 177
21.06.2020, 16:08 14
Попробуйте добавить SFML в настройки Qt Creator, как я выше сделал и напишите работает у вас или нет. Если какие-то ошибки, то скопируйте их сюда.
0
Угадываю функции...
2 / 2 / 0
Регистрация: 18.11.2019
Сообщений: 77
21.06.2020, 17:33  [ТС] 15
8Observer8, создаю консольный проект в Qt, захожу в файл .pro проекта, вписываю строчки
LIBS+=-L<путь до папки либ>

INCLUDEPATH+=<путь до инклудов>
DEPENDPATH+=<путь до инклудов>

На данные строчки ругается, что мол не знает "-lsfml-audio" и всех остальных конфигов:
CONFIG(release, debug|release): LIBS += -lsfml-audio -lsfml-graphics -lsfml-main -lsfml-network -lsfml-window -lsfml-system
CONFIG(debug, debug|release): LIBS += -lsfml-audio-d -lsfml-graphics-d -lsfml-main-d -lsfml-network-d -lsfml-window-d -lsfml-system-d

Захожу в сам проект, пихаю пример проекта на sfml. Пишу sf:: - среда видит всё содержимое. Компилирую проект иии...
Какой движок лучше выбрать

Предварительно в папки систем (во все) были положены dll-ки из бина. Мнде...
0
4176 / 2282 / 387
Регистрация: 05.10.2013
Сообщений: 6,385
Записей в блоге: 177
21.06.2020, 18:18 16
Цитата Сообщение от MiKITA17 Посмотреть сообщение
Предварительно в папки систем (во все) были положены dll-ки из бина
Проблема не в DLL, потому что в этом случае бы скомпилировалось, но при запуске появилось сообщение, что не хватает DLL. Сообщение было бы в отдельном MessageBox

Похоже, что линковщик не находит статических библиотек ".a", то есть путь неправильный к либам. Может быть пусть содержит русские символы?

Либо несовместимость компиляторов. Какую версию MinGW вы установили? Посмотрите здесь: "Tools" > "Options..." > вкладка "Compilers"

Добавлено через 3 минуты
Перепроверьте, точно ли вы скачали MinGW-версию SFML, а если так, то посмотрите, может быть QtCreator подхватил компилятор Visual Studio и пытается слинковать MinGW либы SFML, используя VS-компилятор.
0
Угадываю функции...
2 / 2 / 0
Регистрация: 18.11.2019
Сообщений: 77
21.06.2020, 18:47  [ТС] 17
Да, упустил из вида, что нужно качать MinGW отдельно. Попробую с sfml-версией...
0
4176 / 2282 / 387
Регистрация: 05.10.2013
Сообщений: 6,385
Записей в блоге: 177
21.06.2020, 19:07 18
Цитата Сообщение от MiKITA17 Посмотреть сообщение
Да, упустил из вида, что нужно качать MinGW отдельно.
Я отдельно скачивал, а можно при установке Qt поставить галочку - MinGW. В Qt можно доустанавливать модули: на панели задач внизу-слева: Start > Qt > "Qt Maintenance Tool". Откроется окно, где можно доустановить нужные модули, в том числе MinGW, либо удалить модуль. Если установить отдельно MinGW, то в Qt Creator есть кнопку "Re-detect". Эта кнопка находится там же, где вы находили версию компилятора: "Tools" > "Options..." > вкладка "Compilers". Там же можно скопировать существующие настройки, назвать этот Kit по-другому, настроить путь самому.
0
Угадываю функции...
2 / 2 / 0
Регистрация: 18.11.2019
Сообщений: 77
21.06.2020, 19:08  [ТС] 19
Неа, все равно выдаёт undefined reference to. Путь не содержит русских букв. В настройках следующее:
Какой движок лучше выбрать

Какой движок лучше выбрать

Какой движок лучше выбрать


upd:
Упс... Не заметил вашего предыдущего сообщения...
0
4176 / 2282 / 387
Регистрация: 05.10.2013
Сообщений: 6,385
Записей в блоге: 177
21.06.2020, 19:22 20
У вас комплект по умолчанию выбран 64 бита. А так же копию комплекта вы создали - 64 бита, хотя назвали вы её 32 бита. Вы скачали SFML тоже 64 бита? Из-за несовпадения битности тоже может быть такая ошибка. Мне кажется, что лучше собирать под 32 бита. Например, у меня есть старый персональный компьютер, на котором я иногда тестирую приложения. На нём XP и архитектура 32 бита. У меня знакомый был, которому я скидывал свои поделки несколько лет назад и у него была тоже 32 бита, поэтому я на всякий случай всегда собираю под 32 бита. Так же на форуме в разделе Бета-тестирование некоторые люди иногда просят, чтобы скидывали свою работу собранную под 32 бита. Трудно поверить, но у кого-то ещё есть системы 32 бита. Главное, что если вы хотите 64 бита, то нужно проследить, что вы скачали SFML 64 бита.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.06.2020, 19:22

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

Какой мультиплеер лучше выбрать?
Который мультиплеер лучше выбрать? Где почитать о нем? Такой что не надо вводить IP адресов а...

Как лучше залить текстуру в массив? Какой формат текстуры лучше использовать?
Как лучше залить текстуру в массив? Какой формат текстуры лучше использовать?

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

Выбрать движок? [Unity3D, XNA, OGRE, Wave, Delta, Axiom, Mono.]
Собственно сабж. Сам не первый год в геймдеве, но вот желание делать новый проект - и опять не...

Какой игровой движок будет быстро работать на такой конфигурации компьютера?
Подскажите, какой игровой движок из популярных будет быстро работать на такой конфигурации: AMD...

Какой движок лучше выбрать
Привет Хочу сделать сайт-визитку по технике. Вопрос какой лучше движок выбрать вордпресс или юкоз...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.