34 / 11 / 6
Регистрация: 09.01.2018
Сообщений: 189
1

Какой движок выбрать 2d?

20.05.2018, 20:50. Показов 3507. Ответов 11
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Хочу подучить язык java и возможно выучить ещё парочку типа lua или python. Есть заодно желание реализовать некоторые игровые идеи. Посему нужен движок с такими параметрами:

- 2Д (3д лишним не будет, но не нужно для моих целей)
- один из трех языков или все вместе - java, lua, python
- желательно запуск приложений как на PC (windows - среда разработки) так и на Андроид
- работа с сетью для многопользовательского варианта
- возможность есть какой-то настраиваемый искусственный интеллект (хотя это не обязательно)
- хорошая документация с большим количеством примеров
- возможно кликнуть по экрану и сразу понять на какой объект кликнули, ну и прочие drag and drop
- возможно ли использовать не для игры, а для обычного приложения с поддержкой HTML5/CSS/JavaScript - это не обязательно, но хотелось бы.

Пока присматриваюсь к Corona SDK и LibGDX. Какой из них выбрать или есть лучшие варианты?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
20.05.2018, 20:50
Ответы с готовыми решениями:

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

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

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

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

11
136 / 131 / 43
Регистрация: 07.11.2017
Сообщений: 553
24.05.2018, 15:20 2
Цитата Сообщение от ezd Посмотреть сообщение
- 2Д (3д лишним не будет, но не нужно для моих целей)
- один из трех языков или все вместе - java, lua, python
- желательно запуск приложений как на PC (windows - среда разработки) так и на Андроид
- работа с сетью для многопользовательского варианта
- хорошая документация с большим количеством примеров
defold

Цитата Сообщение от ezd Посмотреть сообщение
- возможно кликнуть по экрану и сразу понять на какой объект кликнули, ну и прочие drag and drop
Цитата Сообщение от ezd Посмотреть сообщение
LibGDX
интерестно как вы собираетесь кликать либу
1
34 / 11 / 6
Регистрация: 09.01.2018
Сообщений: 189
25.05.2018, 07:12  [ТС] 3
Цитата Сообщение от f3hler Посмотреть сообщение
defold
Спасибо. Как-то пропустил этот движок.

Цитата Сообщение от f3hler Посмотреть сообщение
интерестно как вы собираетесь кликать либу
Я ещё не разобрался. А что там нельзя мышкой/пальцем по экрану тыкать? О.о

Добавлено через 13 часов 47 минут
Цитата Сообщение от f3hler Посмотреть сообщение
defold
А что можете сказать по поводу сравнения defold, corona sdk и love2d? Кратко конечно, не надо целую статью Просто плюсы и минусы.
0
136 / 131 / 43
Регистрация: 07.11.2017
Сообщений: 553
25.05.2018, 09:55 4
Цитата Сообщение от ezd Посмотреть сообщение
что можете сказать по поводу сравнения defold, corona sdk и love2d
вы сами лучше почитайте про них, а лучше пощупайте каждый и поймете что вам лучше.
советчиков много, а отдуваться потом вам
0
34 / 11 / 6
Регистрация: 09.01.2018
Сообщений: 189
25.05.2018, 15:58  [ТС] 5
Цитата Сообщение от f3hler Посмотреть сообщение
вы сами лучше почитайте про них, а лучше пощупайте каждый и поймете что вам лучше.
советчиков много, а отдуваться потом вам
Да просто пока в нюансах разберешься... Ну ок. Тогда такой более конкретный вопрос: читаю то про один, то про другой движок, что они то ли требуют исходники у них хранить (гит? кажется дефолд?), то ли сборка проекта через какие-то внешние сервера происходит. На самих сайтах движков по-быстрому информации не нашел, а то что на всяких форумах по несколько лет сообщениям и может уже не актуально. Хотя бы в этом аспекте эти движки как?
0
6169 / 2897 / 486
Регистрация: 05.10.2013
Сообщений: 7,678
Записей в блоге: 209
26.05.2018, 07:25 6
Цитата Сообщение от ezd Посмотреть сообщение
возможно выучить ещё парочку типа lua или python
Для Python есть, например, Cocos2d. Но Cocos2d это не движок (в том понимании, как, например, движок Unity2D), а фреймворк.

Как вариант, можно начать знакомиться с Cocos2d по этой серии видео инструкций: cocos2d python introduction
youtube
0
34 / 11 / 6
Регистрация: 09.01.2018
Сообщений: 189
26.05.2018, 19:13  [ТС] 7
Цитата Сообщение от 8Observer8 Посмотреть сообщение
Для Python есть, например, Cocos2d. Но Cocos2d это не движок (в том понимании, как, например, движок Unity2D), а фреймворк.
Посмотрел, спасибо. Версия питона я так понимаю 2.х? Боюсь недолговечно это... Рядышком другая версия лежит смотрю. В cocos2d-x javascript он выполняется в каком-то веб контейнере или конвертируется например в "С" и компилируется?

О unity как-то не подумал сразу, кстати, думал там c++, а оказывается C#, который похож на java, думаю не сложно будет освоить.

Тогда вопрос ещё по unity и кокосу-х, они позволяют писать свои модули без подключения куда-то там на их серверы и оплаты? Компиляция на своей машине или отправка в какое-то облако? Эти движки/фреймворки имеют средства для создания серверной сетевой составляющей или только визуальная клиентская?
0
6169 / 2897 / 486
Регистрация: 05.10.2013
Сообщений: 7,678
Записей в блоге: 209
26.05.2018, 20:56 8
Цитата Сообщение от ezd Посмотреть сообщение
Версия питона я так понимаю 2.х?
Если судить по тутору выше, то Python 3, потому что в второй было "print ...", а в третьем стало "print(...)". Если честно я Python 3 только начал изучать. Cocos2d даже не думаю пока изучать. Изучаю шейдерный OpenGL 3+ на Python с созданием окна с помощью библиотеки GLFW. И ещё Python изучаю для написания плагинов для 3D редактора Blender. Пока на этих двух вещах мой кругозор через Python ограничивается. Недавно хотел поизучать Pyglet для создания простых 2D игрушек, но пока от этой идеи отказался. Я слышал есть ещё для Python: PyGame, Pandа и Godot, но все они вроде только для 3D.

Цитата Сообщение от ezd Посмотреть сообщение
О unity как-то не подумал сразу, кстати, думал там c++, а оказывается C#, который похож на java, думаю не сложно будет освоить.
Я где-то читал, что Unity сейчас самый популярный для создания 2D и 3D игр на Android и iOS. Может правда, может нет. Ещё C# добавили в CryEngine 5, но он вроде бы только для 3D, а Unity и для 2D и для 3D.

Цитата Сообщение от ezd Посмотреть сообщение
Компиляция на своей машине или отправка в какое-то облако?
Unity может собирать, как на локальной машине на 25 платформ, так и через облако Cloud Build. Для облака нужен платный Unity Plus по подписке. Зато сборка через облако делается автоматически на все выбранные платформы после push'а на удалённый репозитарий. Это удобно. Я заценил, когда Cloud Build был бесплатный. Допустим, делаешь push на bitbucket через git - запускаются автоматически сборки на выбранные платформы на облаке. Это удобнее, чем допустим на семь платформ собирать на локальной машине после каких-то изменений. Хотя Unity и собирает в пару кликов, но всё равно два клика умножить на семь - получается 14 кликов, а после push'а ничего делать не нужно - сборки происходят параллельно и автоматически.

Цитата Сообщение от ezd Посмотреть сообщение
Эти движки/фреймворки имеют средства для создания серверной сетевой составляющей или только визуальная клиентская?
У Unity есть встроенные средства для сети: Multiplayer and Networking

Можно свой сервер сделать с нуля, например, на Node.js: Unity Multiplayer Game Development with Node

Добавлено через 4 минуты
Цитата Сообщение от ezd Посмотреть сообщение
они позволяют писать свои модули без подключения куда-то там на их серверы и оплаты?
У Unity исходники платные, но можно бесплатно расширять возможности редактора движка за счёт плагинов: https://docs.unity3d.com/Manua... ditor.html
1
34 / 11 / 6
Регистрация: 09.01.2018
Сообщений: 189
26.05.2018, 21:04  [ТС] 9
Цитата Сообщение от 8Observer8 Посмотреть сообщение
У Unity исходники платные, но можно бесплатно расширять возможности редактора движка за счёт плагинов: https://docs.unity3d.com/Manua... ditor.html
Я имел ввиду если мне нужна своя особенная логика, типа ядро игры, то можно его подключить? А в редакторе только вызовы функций из ядра и всякие скрипты визуальной части игры.

Видимо выбор падет на юнити..., c# выглядит перспективней как-то.
0
6169 / 2897 / 486
Регистрация: 05.10.2013
Сообщений: 7,678
Записей в блоге: 209
26.05.2018, 21:55 10
Цитата Сообщение от ezd Посмотреть сообщение
Я имел ввиду если мне нужна своя особенная логика, типа ядро игры, то можно его подключить?
Так-то в бесплатной версии доступны все функции открытого API движка без ограничений, но ядро движка, написанное на C++, недоступно бесплатно. Это, конечно, недостаток. У его конкурентов, таких как Unreal Engine 4 и CryEngine 5 исходники полностью открыты и доступны на GitHub. Так что в бесплатной версии Unity вносить изменения в ядро движка и перекомпилировать не получится.

Можно писать библиотеки на C или C++ для Unity, чтобы увеличить скорость работы алгоритмов:
Добавлено через 4 минуты
Цитата Сообщение от ezd Посмотреть сообщение
Видимо выбор падет на юнити..., c# выглядит перспективней как-то.
На киберфоруме Unity довольно популярен, если посмотреть по активности создания тем: https://www.cyberforum.ru/unity/
1
1 / 1 / 0
Регистрация: 04.06.2018
Сообщений: 5
11.07.2018, 18:33 11
Godot - хороший опенсорсный движок, использует GDScript - немного допиленный Python.
0
6169 / 2897 / 486
Регистрация: 05.10.2013
Сообщений: 7,678
Записей в блоге: 209
11.07.2018, 19:48 12
Phaser - игровой HTML5 фреймворк для 2D, использующий Canvas и WebGL. Этот фреймворк оптимизирован под смартфоны, платшеты и ПК. Скриптить можно на JavaScript и на TypeScript. TypeScript - это язык разработанный тем же автором, который придумал Delphi, C# и Turbo Paskal - Андерс Хейлсберг. TypeScript включает в себя JavaSript, похож на C#, имеет типы, компилируется в JavaScript, поэтому многие ошибки можно обнаружить во время компиляции, или в редакторе. Помоему, лучше всего для TS использовать VSCode, потому что разработчик VSCode тоже Microsoft.

Как выше писал для 2D использую Unity + обычный C#. По нему больше всего вакансий и фриланс заказов. Среду настроил VSCode.

Добавлено через 7 минут
Чем мне лично нравится Unity, тем что в него встроены инструменты для модульного тестирования. NUnt и встроенный Test Runner с запуском тестов из редактора и отображением результатов, как для Edit, так и для Play режимов. Можно легко подключить NSubstitute для инжектирования зависимостей и для создания Mock'ов. Таким образом можно использовать методологию TDD (разработка через тестирование) или BDD (разработка через написание спецификаций или требований ТЗ)
0
11.07.2018, 19:48
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
11.07.2018, 19:48
Помогаю со студенческими работами здесь

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

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

Какой движок выбрать?
Хочется создать сайт с музыкой что-то наподобие этого http://musicmp3spb.org/, т.е. чтобы были...

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


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

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

Новые блоги и статьи
Преобразование полей (элементов управления содержимым) в обычный текст
РоΜа 23.01.2025
Возникла необходимость преобразовать поля в текст (те, что на вкладке разработчик добавляются) . Помучившись родил следующее: Sub ПоляВТекст() Преобразует все поля в текст (даты, текст,. . .
Как проверить существование директории в скрипте Bash
bt_guru 23.01.2025
При разработке скриптов Bash одной из ключевых задач является корректная работа с файловой системой, где особое место занимает проверка существования директорий. Эта операция становится критически. . .
Как работают срезы (slice) в Python
bytestream 23.01.2025
Python предоставляет разработчикам мощный и гибкий инструмент для работы с последовательностями данных - срезы (slices). Эта функциональность позволяет извлекать, модифицировать и управлять. . .
Как удалить подмодуль (submodule) в Git
bytestream 23.01.2025
При работе с крупными проектами в системе контроля версий Git разработчики часто сталкиваются с необходимостью управления зависимостями и внешними компонентами. Подмодули (submodules) представляют. . .
В чем разница между @staticmethod и @classmethod в Python. Декораторы методов
bytestream 23.01.2025
В Python декораторы методов представляют собой мощный инструмент, позволяющий модифицировать поведение функций и методов без изменения их исходного кода. Эта возможность является одной из. . .
Как преобразовать InputStream в String в Java
bytestream 23.01.2025
В мире Java-разработки работа с потоками данных является одной из ключевых операций при создании современных приложений. InputStream, как фундаментальный класс для обработки входных потоков данных,. . .
Как обновить форк (ответвление) репозитория в Git
bytestream 23.01.2025
Одним из наиболее мощных инструментов Git для организации совместной работы является механизм форкинга репозиториев, который позволяет создавать независимые копии проектов для дальнейшей разработки. . . .
Как работает async/await в C#. Асинхронное программировани­е в .NET
bytestream 23.01.2025
Введение в асинхронное программирование Асинхронное программирование представляет собой важнейшую концепцию современной разработки программного обеспечения, особенно в контексте создания. . .
КуМир: полное руководство
bytestream 23.01.2025
Введение в КуМир: история создания и назначение КуМир (Комплект Учебных МИров) представляет собой образовательную среду программирования, которая была создана для обучения основам алгоритмизации и. . .
Что такое OLAP. Где и как использовать многомерный анализ данных
bytestream 23.01.2025
Введение в OLAP-технологии В современном мире бизнес-аналитика и обработка больших массивов данных играют ключевую роль в принятии стратегических решений. Организации накапливают огромные объемы. . .
MongoDB: что это, для чего нужна и как использовать
bytestream 23.01.2025
Введение в MongoDB: современная документоориентированная СУБД В современном мире разработки программного обеспечения выбор правильной системы управления базами данных является критически важным. . .
Как использовать закрытый ключ шифрования в Git. Шифрование в Git
bytestream 23.01.2025
Установка и настройка закрытых ключей в Git предоставляет дополнительный уровень безопасности для работы с репозиториями. Для начала необходимо создать пару ключей, обычно это осуществляется с. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru