2D 크로스 플랫폼 게임 개발 엔진 [닫기]


84

저는 Corona SDK로 한동안 일해 왔으며 Lua를 사용하여 강력한 앱을 얼마나 빠르고 쉽게 만들 수 있는지 사랑합니다. 하지만 지금은 너무 적은 느낌 인 iOS 및 Android 용으로 만 컴파일 할 수 있습니다.

나의 주요 관심사는 데스크톱과 모바일로 컴파일 할 수 있다는 것입니다. 최소한 다음의 경우 :

  • 독립 실행 형 응용 프로그램으로 데스크탑 용 Windows + Mac.
  • 모바일 용 iOS + Android.

ActionScript 대신 Lua 유형 스크립팅에 더 관심을 기울이고 싶지만 함께 작업하고 좋아하는 모든 것을 게시 해 주시기 바랍니다.

지금까지 다음 엔진을 찾았습니다.

  • Marmalade Quick- 자세히 살펴본 후 Marmalade Quick은 모바일 용으로 만 빌드 할 수 있습니다!
  • IwGame- 마멀레이드 위에서 작동하며 Lua를 사용하여 데스크톱 및 모바일에 배포 할 수 있습니다. 이것에 대한 모든 정보는 대단히 감사합니다
  • sio2- "SIO2는 iOS, Android, MacOS 및 Windows 용 OpenGLES 기반 교차 플랫폼 2D 및 3D 게임 엔진입니다."및 "이 엔진을 사용하면 Mac Store 및 Windows에서 게임을 포팅 할 수도 있습니다."라고 말하지만 포럼은 웹 제목은 "모바일 장치 용 게임 엔진"입니다. 데스크톱 플랫폼에 배포 할 수 있는지에 대한 정보를 찾을 수 없습니다. 어떤 정보라도 다시 한번 감사드립니다.
  • Loom Engine -Loom은 AS3와 유사한 ECMAScript를 사용한다는 점에서 Haxe + OpenFL (Flash 개발자 유치 시도)과 유사하지만 네이티브 코드를 빌드하지 않습니다. 그러나 렌더링에 Cocos2D를 사용하므로 이론적으로 Cocos2D만큼 빠릅니다. -Bojan에게 감사합니다.
  • SDL -SDL이 거의 모든 플랫폼이나 장치에 배포 할 수 있고 Lua 바인딩이있는 여러 곳에서 읽었습니다. 그러나 엔진이 아니기 때문에 이것이 어떻게 작동하는지 찾을 수 없습니다. 그것이 어떻게 작동하는지 그리고 그것이 가능하다면 다시 한번 설명 해줄 수있는 사람은 대단히 감사합니다.
  • SFML- "Windows, Linux, Mac OS X 및 곧 Android 및 iOS."는 Lua를 사용하지 않지만 Java 및 Python 등과 같은 다른 언어를 사용할 수 있습니다. 누구든지 이에 대한 정보가 있습니까?
  • Torgue2D- "Torque 2D는 OS X, Windows 및 iOS 장치를 염두에두고 개발되었으며 모든 플랫폼에서 똑같이 잘 작동합니다." TorgueScript를 사용하고 Android = (
  • Sencha- 모든 플랫폼으로 컴파일하는 것처럼 보이며 내가 아는 Javascript도 사용합니다. 그러나 V8 JS를 사용하더라도 다른 옵션에 비해 성능면에서 잘 작동할까요?
  • GameMaker- 자체 스크립팅 언어 GML이며 실제로 이것은 프로그래머가 아닌 사용자를위한 도구로 기억합니다. 실제로 실제 엔진으로 성장 했습니까? 진지한 개발을 의미합니까?
  • Construct2-게임 제작자와 같은 질문
  • Corona -Lua, 모바일 전용 (Android 및 iOS 전용)
  • Cocos2D- 많은 옵션이 있지만 동일한 언어로 확실하지 않은 것 같습니까? 전체 코드를 다시 작성해야 할 것 같습니다. cocos2D가 거의 동일한 코드로 데스크톱 + 모바일에 배포 할 수 있다면 어떤 정보라도 대단히 감사하겠습니다.
  • Angel2D -Android를 제외한 모든 곳에 배포 할 수 있으며 Lua를 사용한다고합니다.
  • libgdx --- 나는 이것에 대해 좋은 것만 보았다. 다음은 libgdx에 대한 벤치 마크 테스트이며 60fps에서 40k 스프라이트에 도달하는 것을 보았습니다. http://www.sparkrift.com/2012/1/love2d-vs-allegro-vs-clanlib-vs-libgdx-vs-cocos2d-x-vs-monogame-vs-xna-vs-sfml . libgdx는 실제로 30k를 거의 넘지 않는 것 같습니다. 그러나 여전히 놀랍습니다. 이것은 Qt와 같은 수준이며 거의 완벽합니다. 단, 성능에 대해 걱정하지 않습니다. libgdx는 거의 모든 것을 구축 할 수 있습니다.
  • XNA + MonoGame --- MonoGame의 성능은 libgdx보다 약간 낮아 보이며 대부분의 플랫폼에 빌드 할 수 있습니다. 그러나 XNA에 대해 잘 모르고 향후 업데이트를받지 않을 것이라고 들었지만 상당히 안정적입니까? 더 많은 정보를 환영합니다.
  • 감귤류 --- 감귤류에 대한 정보도 많지 않습니다. iOS, Android, Windows, Mac 등을 위해 빌드 할 수있는 AS3 게임 엔진입니다.
  • Haxe + OpenFL --- OpenFL (Haxe)은 Flash뿐만 아니라 여러 플랫폼에서 네이티브로 빌드됩니다. Windows, Mac, Linux 및 Android는 모두 이론적으로 Flash보다 빠른 Neko라는 기본 배포 또는 OpenFL 런타임을 선택적으로 제공하며 SDL 2.0은 곧 iOS 배포를 가능하게합니다. -Bojan에게 감사합니다.
  • Qt-Project --- 여기에 Qt 프로젝트를 연결하기 만하면 모든 것을 구축 할 수 있으며 훨씬 더 도움이되는 타사 라이브러리가 많은 꽤 큰 커뮤니티가 있습니다.
  • Moai --- 데스크톱 및 모바일 용으로 구축 할 수있는 유일한 Lua 엔진입니다. 단점은 커뮤니티가 그렇게 크지 않고 문서가 최고가 아니라는 것입니다. 그러나 통과 할 수 있다면 이것은 훌륭한 솔루션이며 현재 사용하고있는 솔루션입니다.
  • Adobe --- 플래시를 지원하는 모든 것을 빌드 할 수 있기 때문에 여기에 adobe를 추가하는 것을 잊을 수 없습니다.
  • Unity3D --- 최근 발표 된 2D 통합은 매우 유망 해 보이며 2013 년 3 분기에 출시 될 예정입니다.
  • Cocos2d-x --- 오픈 소스 엔진. JS, Lua, C ++ 및 여러 플랫폼을 지원합니다.
  • Html5 --- html5 모바일 앱에 대한 많은 강조가있는 것 같습니다. 여기에 html5 프로젝트를 플랫폼으로 이식하는 데 도움이되는 몇 가지 도구가 있습니다.

    1. 크롬 임베디드

    2. 센차

    3. Phonegap

    4. 가속기 / 티타늄

    5. Icenium

따라서 어떤 엔진에 대한 경험에 대해 의견을 말하고 어떤 엔진을 추천할지 제안 해 주시면 기쁩니다. 도와 주셔서 감사합니다!

편집 :이 주제가 인기를 얻고 있기 때문에 시간이 지남에 따라 찾은 다른 옵션을 추가 할 것입니다. 가장 친숙하고 프로젝트 요구 사항에 가장 적합한 것을 선택하는 것이 좋습니다.


1
OpenFL (Haxe)은 Flash뿐만 아니라 여러 플랫폼에서 네이티브로 빌드됩니다. Windows, Mac, Linux 및 Android는 모두 이론적으로 Flash보다 빠른 Neko라는 기본 배포 또는 OpenFL 런타임을 선택적으로 제공하며 SDL 2.0은 곧 iOS 배포를 가능하게합니다. Loom은 ECMAScript와 같은 AS3를 사용한다는 점에서 유사합니다 (플래시 개발자를 유치하려고 시도 함). 그러나 그것으로부터 네이티브 코드를 빌드하지는 않습니다. 그러나 렌더링에 Cocos2D를 사용하므로 이론적으로 Cocos2D만큼 빠릅니다
Bojan Markovic

2
: 당신은 정말 목록적인 Cocos2D-X를 추가해야합니다 cocos2d-x.org
클레이

Epic Games의 UDK를 확실히 확인해야합니다. 실제로 모더와 인디 개발자를 겨냥한 완전한 AAA 엔진입니다. 안타깝게도 현재 Android를 지원하지 않지만 Android를 지원하는 전체 UE4 라이선스를 훨씬 더 많이 사용할 수 있습니다. UE4가 방금 출시되었으며 UDK는 상당히 개발 된 플랫폼이라는 점에 유의하십시오.
Igor Čordaš 2014

또한 오픈 소스와 휴대용 (Java 기반)을 원한다면 jMonkeyEngine을 참조하십시오.
Igor Čordaš 2014

답변:


9

V-Play (v-play.net)를 추천 합니다. iOS, Android, Symbian, MeeGo, Blackberry10 용 Qt를 기반으로 한 크로스 플랫폼 게임 엔진이며 Windows, Mac 및 Linux 용 기본 데스크톱 애플리케이션으로 내보낼 수도 있습니다.

C ++를 기반으로하지만 QML 및 JavaScript에 대한 깔끔한 스크립팅 지원이 있습니다. QML은 쉽게 배울 수 있으며 더 적은 코드가 필요하므로 생산성을 높일 수 있습니다 . 동일한 게임을 비교하려면 cocos2d-x (60 % 더 적은 Loc) 또는 Corona (15 % 더 적은 LoC)와의 비교를 참조하세요.

(면책 조항 : 저는 V-Play의 배후에있는 사람 중 한 명입니다)


1
나는 V-Play가 멋진 제품이라고 확신하지만, 당신이 공동 설립 자라는 면책 조항을 넣어야합니다. 참조 : meta.stackexchange.com/a/59302
Nepoxx

1
물론 - 난 그냥 추가 한
기독교 Feldbacher

7

Python을 사용하는 경우 Kivy 는 요즘 훌륭한 솔루션입니다. 요청한 모든 플랫폼으로 컴파일됩니다.

Kivy는 Linux, Windows, MacOSX, Android 및 IOS에서 실행됩니다. 지원되는 모든 플랫폼에서 동일한 코드를 실행할 수 있습니다. 기본적으로 WM_Touch, WM_Pen, Mac OS X Trackpad 및 Magic Mouse, Mtdev, Linux Kernel HID, TUIO와 같은 대부분의 입력 프로토콜 및 장치를 사용할 수 있습니다. 멀티 터치 마우스 시뮬레이터가 포함되어 있습니다.

Kivy는 (Cython을 통해) 그래픽 렌더링에 최적화 된 코드를 많이 사용하므로 빠릅니다.

다음은 배경과 개요를 제공 하는 스피커 데크 입니다 (Android 특정).


kivy 게임 dev에 사용할 수 있지만, 그것은 exacty 게임 엔진이 아니다, kivyent (kivent.org)하지만, 게임이 어쩌면 경우를 제외, 5 월 더 적합 kivy 기반의 게임 엔진이며, 매우 간단하고하지 않습니다 추가 복잡성이 필요합니다.
Tshirtman 2014-08-22


5

여기 내 게임 프레임 워크 Oxygine이 있습니다. 모바일 및 PC 플랫폼을위한 오픈 소스 최신 하드웨어 가속 2D C ++ 프레임 워크입니다. 특징 : OpenGL (ES) 2, 압축 된 텍스처, 아틀라스, 복잡한 애니메이션 / 트윈 / 스프라이트, 장면 그래프, 글꼴, 이벤트 처리, 빌드 도구 등. SDL2 또는 Marmalade SDK 위에 구축 할 수 있습니다.

엔진을 기반으로 Flash One과 유사한 장면 그래프가 있습니다. 간단히 말해서, 이것을 C ++ 용 Flash라고 부를 수 있지만 더 편안하고 훨씬 빠릅니다. 처음에는 모바일 플랫폼 (iOS, Android) 용으로 개발되었지만 PC 게임에도 사용할 수 있습니다.

여기에 이미지 설명 입력


나는 그것을 시도했고 (실제로 완성 된 게임 제품을 출시했다) 아주 잘 작동한다!
Juster 2014

4

여기 에 앱 게임 키트 (AGK)에 대한 언급이 없으므로 공백을 메워 드리겠습니다. 주로 2D 크로스 플랫폼 SDK로 C ++ 또는 자체 "Basic"언어로 한 번 코딩 할 수 있습니다. 버전 2는 Kickstarter에서 400 % 이상의 자금을 확보했으며 완전한 3D 지원, Spine 지원 (2D 애니메이션 캐릭터 용), 총알 물리 및 기타 새로운 기능을 모두 포함 할 것입니다.

이미 Facebook, Twitter, Ultrabook 센서 명령, Box2D 등이 있습니다. 나는 처음부터 그것을 사용해 왔고 그것을 좋아합니다 (당신은 말할 수 있습니까?). 아니요, 게임 크리에이터 ( 게임 을 만든 회사)에서 일하지 않습니다 . 잠시 동안 일부 앱을 제작했음을 인정합니다.

내 관점에서 볼 때 가장 좋은 기능 중 하나는 Windows에서 개발하고 Wi-Fi를 통해 IDE에서 지원되는 모든 장치로 브로드 캐스트 할 수 있다는 것입니다. 따라서 코딩하는 동안 iPad, Android에서 내 코드를 테스트 할 수 있습니다. Windows, Mac 또는 Blackberry Playbook.


4

C # 배경이있는 경우. Duality를 살펴보십시오.

Duality 는 전적으로 C #으로 작성된 유연한 2D 게임 프레임 워크입니다. 확장 가능한 게임 엔진과 일치하는 비주얼 편집기를 모두 제공합니다. Duality는 그 자체로 모든 것이기 때문에 레벨 편집기, 테스트 환경 또는 콘텐츠 관리자가 필요하지 않습니다. 그리고 무엇보다도 무료입니다.


1
좋은 추가. 곧 목록에 추가 할 예정이며 더 나은 구성과 함께 제가 알아 낸 몇 가지 사항도 추가 할 예정입니다. 덕분에 당신의 입력
이름 증오

크로스 플랫폼과 호환됩니까?
JCPhlux

2
@JCPhlux, 네 그렇습니다. 모바일에 대해서는 잘 모르겠지만 모노로 실행됩니다.
Andy

fetzenet.de/blog/?page_id=697 은 무엇입니까 ? 왜이 duality.adamslair.net
RS

결정된. 내 답변을 게시 한 후 얼마 지나지 않아 이사 한 것 같습니다-github.com/AdamsLair/duality/issues/45
Andy

2

SDL이 어떻게 사용되는지에 대한 몇 가지 통찰력을 제공하기 위해 답장하고 있습니다. 이전에 말했듯이 게임 엔진이 아닙니다 (실제로는 라이브러리 일뿐입니다). 게다가, 그것은 객체 지향적이지 않으며 쉬운 애니메이션 기능이 없습니다 (직접 코딩해야합니다).

작동 원리 (C 버전을 사용했지만 Lua 바인딩이 비슷해야한다고 생각합니다) :

원하는 플랫폼에서 프로젝트를 빌드하는 데 필요한 헤더를 포함합니다.

(적어도) 전체 이벤트 처리 시스템, 프레임 속도 관리자 및 "화면 클리너 (또는 업데이터)"를 설정하는 자신의 게임 루프를 디자인합니다. Corona에 대해 전혀 걱정하지 않는 SDL_flip_screen 루틴 사용).

그런 다음 이전에 만든 모든 "메 커닉"을 사용하여 게임을 코딩합니다.

SDL은 저수준 라이브러리입니다 (예를 들어 사용하기 쉬운 GUI 프레임 워크 나 Corona의 스토리 보드 프레임 워크를 기대하지 마십시오).

마지막으로,이 라이브러리는 Civilization III를 Linux로 이식하는 데 사용되었으므로 작동하지만 Corona와 같은 것을 갖기 위해 많은 에너지를 요구합니다.)

추신 : 저는 영어 원어민이 아니니 잘 모르겠 으면 알려주세요 :)


2

Gideros는 훌륭한 Lua 기반 2D 교차 플랫폼 엔진 으로 현재 Android와 IOS 플랫폼을 모두 지원하지만 앞으로 더 많이 지원 될 예정입니다. 또한 다양한 화면 크기를 쉽게 타겟팅 할 수있는 즉각적인 장치 테스트, 자동 크기 조정 및 자동 이미지 해상도와 같은 몇 가지 훌륭한 기능과 기본 플러그인을 통해 각 플랫폼을 확장 할 수있는 옵션이 있습니다.


1

Unity3D의 심각한 경쟁자 인 ShiVa3D 도 있습니다 . Lua를 사용하고 모바일에서 게임 콘솔 및 웹 브라우저에 이르기까지 다양한 플랫폼을 지원합니다.

사용하기 매우 직관적이고 작업하기에 매우 좋은 UI입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.