프로토 타이핑에 권장되는 2D 게임 엔진 [닫기]


76

Windows에서 2D 게임 프로토 타입을 개발하기 위해 어떤 고급 게임 엔진을 추천 하시겠습니까? (또는 원하는 경우 mac / linux)

"높은 수준"의 의미는 다음과 같습니다 (그러나 이에 국한되지는 않음).

  • 화면 버퍼, 그래픽 컨텍스트와 같은 하위 수준의 항목을 관리 할 필요가 없습니다.
  • 기하학적 모양을 그리는 API가있는 것
  • 글쎄, 나는 그것을 생략하려고했지만 실제 "고급"언어를 기반으로하는 것이 플러스 (자동 리소스 관리 및 표준 라이브러리의 합리적인 데이터 구조 세트가 존재 함)를 추측합니다.

Flash는이 쿼리를위한 공간의 속담 코끼리 인 것처럼 보이지만 모든 종류의 언어 또는 SDK에 따라 다른 답변을보고 싶습니다.

답변:


31

나는 파이 게임을 광범위하게 사용 했으며 많은 긍정적 인 점이 있습니다.

  • 고급 라이브러리 인 Python 용 라이브러리입니다.
  • 명확한 문서가 있습니다.
  • 활발한 커뮤니티가 있습니다

Pygame은 크로스 플랫폼 2D 그래픽 라이브러리 인 SDL을 둘러싼 래퍼입니다. Pygame에는 사운드, 음악 등을위한 래퍼도 있습니다. Python은 고급 프로그래밍 언어 임에도 불구하고 (대부분의 경우) 상당히 낮은 수준의 그래픽 라이브러리입니다.


3
언어 수준은 높지만 게임 프레임 워크로는 여전히 수준이 낮습니다.
Henk

5
예, PyGame에 게임 엔진을 구축하는 데 몇 주 동안 천천히 게임 엔진을 구축하는 데 많은 시간을 할애 할 수 있습니다. 훌륭한 라이브러리이지만 내 경험상 시간이 지남에 따라 더 많은 관련 아이디어를 신속하게 프로토 타이핑하기 위해 몇 가지 프레임 워크 코드를 작성해야합니다.
James

35

다른 것을보고 싶다면 Löve (Lua 사용)를 확인할 수 있습니다


4
우와, 그건 루아를 배우는 아주 재미있는 방법 같아요!
GloryFish

9
참고로, 나는 2010 년 9 월 22 일에 위의 의견을 썼습니다. 7 일 후 나는 자리에 앉았고 어느 날 밤 루아를 전혀 쓰지 않은 첫 Löve 게임 을 만들었습니다 . 그 이후로 Lua와 Löve로 여러 게임 을 만들었고 현재 Löve 게임을 iOS로 포팅하고 있습니다. 훌륭한 프로토 타이핑 언어이자 루아를 배우는 좋은 방법이었습니다.
GloryFish

2

20

XNA 는 프로토 타입 제작에 매우 유용한 언어 라는 것을 알았 습니다. 게임 플레이 / 메커니즘이 어떻게 작동하는지, 그리고 실제로 작업을 수행 할 수있을 정도로 강력한 아이디어를 쉽게 모을 수 있습니다. 또한 포럼에 도움을 줄 수있는 훌륭한 커뮤니티와 여러 타사 도구 (물리 엔진 / 헬퍼 라이브러리 등)가 있습니다.


Microsoft XNA는 DOA이므로 다음으로 가장 좋은 것은 Monogame (XNA의 오픈 소스 구현)입니다.
ashes999

2
그들은 여전히 ​​그것을 지원할 것이며, 게임으로 프로토 타입을 만들 수도 있습니다. 그들은 단지 새로운 기능을 제공하지 않습니다. 나는 그것을 죽은 것으로 부르지 않고 오히려 은퇴라고 부릅니다 :)

18

GameMaker 는 훌륭한 입문 게임 프로토 타이핑 또는 제작 도구처럼 보입니다. "한 줄의 코드를 작성할 필요없이"끌어서 놓기를 기반으로하기 때문에 초보자를 대상으로합니다. (나는 그것을 사용한 적이 없으며 방금 발생했지만 웹 사이트는 분명히 매끄럽게 보입니다. :)



14

Adam Atomic의 Flixel 도 언급 할 가치가 있습니다. Flash로 작성된 단순하고 현대적인 베어 본 게임 엔진. 며칠이 아닌 몇 분 안에 배울 수 있습니다. 또한 Flash (또는 Processing / Java)를 사용하면 가장 위험한 프로토 타이핑 중 하나를 피할 수 있습니다. 심각한 플랫폼에서는 프로토 타입의 코드를 사용할 수 없습니다. 코드가 아닌 프로토 타입을 제작하려는 게임입니다.


1
Flixel의 경우 +1 훌륭한 엔진. 우리는 글로벌 게임 잼에서 사용했습니다. 반 광택 프로토 타입을 48 시간보다 훨씬 빨리 얻을 수 없습니다!
michael.bartnett

정말 대단합니다. 오늘 아침에 연극을 보았고 처음부터 액션 스크립트를 배웠습니다.
mcintyre321

@ michael.bartnett, 당신은 당신의 승리 게임에 연결할 수 있습니까? 그냥 궁금해 :)
James McMahon

@JamesMcMahon 나는 당신의 호기심을 주셔서 감사합니다 :) 당신이 그것에 대해 채팅에 핑 수 있습니까? 또한, 미래의 독자들에게 요즘 Flixel보다 Flashpunk를 선호한다고 언급하고 싶습니다.
michael.bartnett

8

특별히 게임 엔진은 아니지만 Processing을 살펴보십시오 . 몇 가지 좋은 점은 다음과 같습니다.

  • 최소한의 설정이 필요합니다. 30 초 안에 화면에 무언가가있을 수 있습니다.
  • 컬렉션과 같은 것들을 위해 언제든지 Java에 빠져들 수 있지만 많은 그림, 애니메이션 및 상호 작용 구문은 일반 Java보다 훨씬 덜 장황합니다.
  • 작성하는 모든 것은 Processing.js 와 호환 되므로 최신 브라우저가있는 곳이라면 어디에서나 사용할 수 있습니다.

8

나는 Novashell을 사용합니다.

Game Maker를 기본 도구로 사용했지만 YoYo Games에 문제가 있었으므로 (여기에서는 설명하지 않겠습니다) Novashell을 찾았습니다.

Novashell은 정말 프로토 타이핑 도구로, "LORD"(Legend of Red Dragon)와 "Dink Smallwood"를 만든 사람이 만들어서 Ludumdare (48 시간 gamejam 경쟁)를 위해 게임을 빠르게 만들 수있었습니다. LUA 스크립팅을 지원하고 C ++로 만들어졌으며 zlib 라이센스를 보유하고 있으며 (원본으로 원하는 것을 할 수 있다고 주장하지 않고 소스로 원하는 것을 할 수 있음을 의미 함) 물리 엔진 (Box2D), 파티클 시스템을 갖추고 있습니다. (ClanLIB 용 선형 입자)는 MikMod 및 Fmod를 지원하며 Linux, Mac 및 Windows에서 작동하며 사용하기 쉬워서 Seth에 물건을 요청할 수 있습니다!

편집 : 세스는 프로그래머의 이름입니다 (또한 주님을 만들었습니다)


감사! 전에도 들어 본 적이 없지만 기능 목록은 시도하기에 충분히 흥미 롭습니다. 또한 오픈 소스
Nek

네! Novashell의 내 자신의 버전은 조금 공식 버전과 관련하여 개선,하지만 난 그것을 해제 할 수 있습니다 전에 그것은 (그것이 나 근처에 물리적으로도 컴퓨터에없는) :( LOOONG 시간이 걸릴 것입니다
속도 조절

어쨌든 나는 이번 주말에 Ludum Dare 전에 배울 시간이 없습니다. 다음 LD 이전에 릴리스하기를 바랍니다.
Nek

또한이 LD의 기조 연설은 Seth 자신의 것입니다!
Nek

네 :) 세스가 굉장합니다 ... 난 LD를 함께 유지하고 있지 않다 :( 그래서 나는 다음 LD가 될 것입니다조차 모른다.
속도 조절

7

게임 메이커 는 매우 시원하며 기본적으로 설명한 모든 것을 수행합니다. 초보자를위한 드래그 앤 드롭 아이콘과 고급 사용자를위한 코드가 있습니다. 그러나 C ++을 1 년 이상 독점적으로 사용한 후 Game Maker로 돌아가는 것은 고통 스럽습니다.

단점 :

  • 사용자 정의 데이터 구조가 없습니다 (C 구조체 나 C ++ 클래스와 같은 것은없고 "개체").
  • 동적으로 입력 됨 ( "varAwesome = 0"을 입력하면 내 신이 나타납니다)
  • 요요 게임은 악하다

거꾸로 :

  • 사용하기 쉽고 마스터하기 어렵다
  • 당신을 위해 많은 저수준 물건을합니까
  • 활기차고 활동적인 커뮤니티

2002 년에 Game Maker를 사용하여 게임을 시작했습니다. :)


6
동적으로 입력 할 때
lol-

그래, 그와 약한 타이핑. 모듈러스 연산자가 부동 소수점으로 답변을 반환한다는 것을 깨닫기 전에 정말 이상한 버그가있었습니다.
James

사용자 정의 데이터 구조는 고통스럽지 않습니다. 함수에서 하나 이상의 값을 반환해야하는 경우 객체를 생성해야하지만 모든 객체는 위치, 이벤트 등을 포함한 완전한 게임 액터입니다. 배열을 전달할 수 없습니다 (지정하지 않은 경우) 색인, 그것은 [0]으로 가정합니다)
Bart van Heukelom

게임 디자인을 빠르게 프로토 타입하려면 GameMaker도 권장합니다. GameMaker는 매우 강력하며이 작업으로 놀라운 일을 겪었습니다. C ++ 또는 XNA에서 게임 엔진을 개발하기 전에 먼저 GameMaker에서 게임 디자인을 프로토 타입하면 많은 시간과 노력을 아낄 수 있습니다.
Cooper

실제로 데이터 구조 부족 문제를 해결하기 위해 동적 메모리 할당 스크립트 라이브러리가 있습니다. 나는 그런 라이브러리를 가지고 있고 라이트 버전 내에서 그렇게 할 수 있다면 확실히 작업하기가 매우 쉽다고 말할 것입니다.
그레이트 오리

5

나는 DarkBASIC Professional을 2 년 동안 사용해 왔으며 실제로 그것을 즐기고 있습니다. 정식 버전을 구입할 여유가 없으면 무료 광고 지원 버전을 간단하게 다운로드 할 수 있습니다. DBPro 제작자 인 Game Creators는 정기적으로 뉴스 레터를 발행하여 꽤 좋은 독서를 할뿐만 아니라 상당히 큰 활발한 커뮤니티를 보유하고 있습니다. 위의 모든 내용은 여기에서 찾을 수 있습니다.

https://www.thegamecreators.com/

그것을 확인하십시오, 바라건대 거기에서 무언가를 찾을 수 있습니다.

건배, BFM


5

적인 Cocos2D 사용 pyglet를 . 이 두 파이썬 라이브러리를 프로토 타이핑에 광범위하게 사용합니다.

파이 게임보다 작업하기가 훨씬 쉽습니다.

아직 언급되지 않은 것에 놀랐습니다!


5

초보자와 빠른 프로토 타입 제작을 위해 Scirra Construct 를 추천 합니다.

게임 엔진 자체가 추상화되어있어 게임에 전적으로 집중할 수 있습니다. 플러그인은 추가 기능을 가능하게하며, "코드"는 드래그 가능한 이벤트, 조건 및 동작 블록 등으로 구성됩니다.

컨스 트럭 트는 활발히 개발 중이며 활발한 커뮤니티도 있습니다.


3

스크롤 게임 개발 키트 버전 2는 프로토 타입 및 간단한 2-D 게임 개발의 정확히 이런 종류의 게임 개발 IDE 및 프레임 워크의 두 번째 주요 반복 (재 작성)입니다. 두 번째 반복으로 현대 언어 (C #) 및 기술 (맞춤 코드에 대한 반영)을 활용하고 디자인의 일부 기본 결함을 해결합니다 (이제 스프라이트를 맵 편집기에 직접 배치 할 수는 없습니다) 스프라이트에 외부 적으로 연결되어야하는 경로 만 있으며 런타임에만 발생하는 것이 있고 디자인 타임에만 원하는 것이 있기 때문에 Wysywig 편집기로 사용하려고 시도하지 않습니다.

관심있는 기능 중 일부 :

  1. 대부분의 프레임 워크 코드는 IDE 내에서 노출되고 편집 가능합니다. "PushTowardSprite"내장 함수의 동작 방식이 마음에 들지 않으면 편집기를 불러 와서 변경하거나 모든 내장 명령과 함께 목록에 표시 될 고유 한 편집기를 추가 할 수 있습니다.
  2. 다각형을 그리는 기능에 대해 언급했습니다. 이 프레임 워크는 OpenGL의 .NET 래퍼 인 OpenTK를 기반으로합니다. 따라서 OpenGL의 모든 기능을 손쉽게 사용할 수 있습니다. IDE 내에서 편집 할 수있는 단일 클래스 "Display.cs"가 프레임 워크 코드에 있으며 원하는 그리기 기능을 추가 할 수 있습니다.
  3. 대부분의 프레임 워크는 사이드 스크롤러 물리학 (슬로프 위를 걷거나 플랫폼을 타는 등)을 목표로하므로 이미 많은 코드가 이미 작성되어 있습니다. 물론 다른 2D 게임 유형에서는이를 사용자 정의하거나 무시할 수 있습니다. 테트리스 게임이 작성되었습니다.
  4. 시차 스크롤
  5. 알파 반투명도는 그래픽에 포함되거나 그래픽 그림에 적용될 수 있습니다.
  6. 모든 프로젝트 데이터는 단일 XML 파일 (.NET 데이터 세트)로 저장됩니다. 외부 편집기는 파일에 액세스하여 필요한 경우 IDE에서 사용 가능한 기능을 확장 할 수 있습니다.
  7. 프로젝트는 먼저 C # 프로젝트 (Visual Studio와 호환 가능)로 컴파일 된 다음 EXE 파일 (모든 리소스가 포함 된 파일)로 컴파일됩니다. 필요한 경우 향상된 디버깅 또는 코드 개발 인터페이스를 위해 프로젝트를 Visual Studio로로드 할 수 있습니다.

3

PreviewLabs, 회사는 신속한 프로토 타입 전문 , 우리는 종종 2D 게임 프로토 타입 Unity3D를 사용하고 있습니다.

3D 엔진이지만 2D 프로토 타이핑에 사용하는 몇 가지 방법이 있습니다. 주요 장점은 다음과 같습니다.

  • PC 및 Mac 플랫폼에서 무료로 사용할 수 있습니다
  • 유료 버전은 iOS 및 Android에서도 작동하므로 개념이 다른 플랫폼에서 어떻게 작동하는지 확인할 수 있습니다.
  • 2D 게임 프로토 타이핑에도 사용할 수있는 물리 엔진이 함께 제공됩니다.

Unity3D를 2D 게임 프로토 타이핑에 사용하는 방법에 대한 일련의 블로그 게시물을 작성하고 있습니다. 이것이 첫 번째입니다 : Unity3D의 2D 게임 프로토 타이핑


3

슬릭 프레임 워크 자바로 작성된은 좋은 선택이 될 것입니다. 내가 프로그래밍을 배우기 위해 처음 사용한 것입니다. 이점은 크로스 플랫폼에서 실행되고 웹용 애플릿을 생성 할 수 있으며 Eclipse 또는 Java 환경을 통해 다른 도구를 통해 환상적인 도구 / 라이브러리 지원을 제공한다는 것입니다. 즉, 게임을 배포하려는 경우 더 쉽고 효과적인 방법이 없기 때문에 결국 Flash로 전환했다고 말했습니다.


2

첫 게임 개발 프로젝트에 FlashPunk를 사용하기 시작했으며 지금까지는 매끄럽지 않았습니다. 게임 디자인을 위해 제작 된 Flash 라이브러리입니다. Flixel과 비슷한 베어 본 게임 엔진이지만 Flixel보다 초보자에게 더 친숙한 GameMaker와 비슷합니다. FlashPunk와 Ogmo Editor를 함께 사용하면 코딩에 많은 시간을 소비하지 않고도 레벨을 정확하게 설계 할 수 있습니다. 이 세 가지에 대한 자세한 내용은 Flash Game Dojo 에서 찾을 수 있습니다 .


1

두 번째로 Game Maker에 대해 언급하겠습니다. 만약 모든 게임 엔진이 "사용하기 쉽고 배우기 쉽지만 당신이 할 수있는 것에 한계"에서 "실제로 강력하지만 마스터하는데 오랜 시간이 걸린다"라는 연속체에 빠지면 ... 게임 메이커는 거의 정의입니다. 사용하기 쉬운 극한의. Cyclops가 말했듯이 대부분의 기본 기능 (스프라이트, 게임 오브젝트 생성, 이동, 충돌 감지, 점수 기록 등)은 끌어서 놓기 아이콘입니다. 실제로 사용하기 시작하면 사용할 수있는 상당히 강력한 스크립팅 언어가 포함되어 있습니다. 그러나 내장 된 스크립팅 언어로 전체 게임을 작성하기 시작하면 Flash 또는 파이 게임.

그래도 게임 디자인 학생들을위한 프로그래밍이 필요없는 초보자 도구 인 Game Maker에서 큰 성공을 거두었으며 충분히 추천 할 수는 없습니다.


1

저는 게임 제작에있어 초보자이며 파이 게임에서 무언가를 빠르고 쉽게 만들 수 있다는 것에 깊은 인상을 받았습니다. 파이썬 + SDL = 용이함 보장.


1

프로토 타이핑을위한 리소스라면 리소스 관리와 같은 멋진 백엔드가 필요하지 않습니다. 그래픽을로드하고 표시 할 수있는 한 대부분 설정됩니다. 나는 그레인에 반대하고 '당신 자신을 쓰십시오'를 제안합니다. 당신은 누군가의 API를 사용하는 방법을 알아내는 시간을 잃을 것입니다. 직접 작성이 실제로 옵션이 아닌 경우 DirectX는 대부분의 기본 서비스를 제공하는 샘플 프레임 워크와 함께 제공됩니다. 프레임 워크에 구속되지 않는다는 것은 규칙에 따라 시간을 잃지 않고 그 범위에 의해 제한되지 않음을 의미합니다. 나는 직업으로 프로토 타이핑을 해왔고, 가장 빠른 결과는 프레임 워크에 대해 걱정하거나 방해받지 않고 코드를 강타 할 수 있었을 때였 다. 2D 래퍼는 실제로 이미지를로드하고 x, y에서 이미지를 표시 할 수 있습니다. 회전하고 트립되고 싶다면 쉐이더. 나머지는 필요에 따라 코딩 할 수 있습니다. 프로토 타입의 경우 코드가 좋지 않습니다.


1

GarageGames의 Torque-2d 는 훌륭한 커뮤니티, 정말 인상적인 애드온, Windows, Mac 및 Wii 및 iOS (별도의 라이센스)를 기본적으로 지원하는 훌륭한 게임 엔진입니다. 99 달러입니다.

Unity3d (2d 게임을 개발할 수 있음)는 진입 장벽이 비교적 낮은 또 다른 고품질 게임 엔진입니다. Win / Mac, Wii, Xbox, Playstation 및 웹 외에도 iOS 및 Android를 포함한 훌륭한 커뮤니티 및 멋진 멀티 플랫폼 지원이 있습니다.

훌륭한 iPhone 중심 게임 엔진은 iOS 용 cocos2d입니다.


1

귀하의 질문은 2D 게임 프로토 타입을 작성하는 데 필요한 것이지만 고려해야 할 다른 것이 있다고 생각합니다. Flash의 가장 큰 장점은 해당 프로토 타입을 다른 사람과 공유하는 데 있습니다. 거의 모든 사람이 이미 Flash를 설치했습니다. 채팅이나 이메일을 통해 SWF를 업로드하고 다른 사람에게 URL을 전달할 수 있습니다. 다운로드, 설치, 압축 풀기, exe, 크로스 플랫폼 문제가 없습니다. 플래시를 공유하고 피드백을 받기가 쉬워 Flash를 선택했습니다. 반복에는 다시 업로드하고 다시로드하라는 메시지가 포함되며 프로토 타입을 빠르게 반복하고 싶었습니다. (Javascript + Canvas / SVG는 또 다른 유용한 옵션이며 곧 JS 용 Flixel / Flashpunk와 같은 라이브러리를 보게 될 것입니다).


1

HGE는 훌륭합니다. 입자 편집기, GUI 편집기가 있으며 프로 프로그래머가 사용합니다.


1

항상 GLBasic이 있습니다.

상당히 높은 수준의 언어이며 최근에 모바일 지원을 확장하고 있습니다.

  • 2D와 3D입니다
  • 비 상업용 용 무료
  • 픽셀 또는 블록 충돌이있는 기본 스프라이트 명령
  • 한 번 작성하고 많은 장치 및 플랫폼에 배포
  • 랩퍼를 통해 Box2D 지원 (검색 포럼)
  • 함수가있는 사용자 정의 데이터 TYPES (클래스에 가깝지만 많은 OOP 기능이 없음)
  • 몇 줄의 코드로 짧은 시간에 화면에서 스프라이트가 움직일 수 있습니다

1

PixieEngine 은 웹 기반 IDE 및 게임 개발 환경입니다. 스크립팅에 CoffeeScript를 사용하며 픽셀 아트 및 사운드 효과를위한 내장 편집기를 제공합니다.

PixieEngine IDE


1

나는 비슷한 퀘스트를 받았고 여기에 언급되지 않은 몇 가지 다른 도구를 가로 질러 달렸습니다.

  • Stencylworks는 기존 모듈에 대한 시각적 인터페이스를 빠르고 쉽게 Flash 게임을 제작할 수있는 IDE / dev 환경입니다. 오픈 소스가 아닌 100 % 무료 인 것으로 보이며, 주요 장점으로는 매끄러운 코드리스 코딩 (Gamemaker의 schitzoid 스크립트 / 비주얼 인터페이스와 같지 않음)이 있습니다. 비주얼 인터페이스의 한계에 대해 걱정합니다. 실제로 객체 지향이 얼마나 적절한 지 불분명합니다. 확실히 간단한 것들이 있습니다. 아마도 자바 스크립트 스크립트 편집기가 어딘가에 있지만 아직 보지 못했습니다. 그것은 핵심에서 공동 개발을위한 것으로 보입니다 (IDE에 내장 된 채팅; 서버에서 호스팅되는 모든 리소스 및 동작, 사용자 제공). 프로토 타입 개발에 큰 도움이 될 수 있습니다. 나는 아직 많이하지는 않았지만 튜토리얼은 간단했습니다.

나는 다른 이상한 것들도 시도했습니다.

Alice는 오픈 소스 인 3D 게임 / 개발 환경입니다.

어린이를 겨냥한 쉬운 / 제한된 스펙트럼에서 Gamemaker를 넘어 Kodu는 Xbox 컨트롤러로 게임을 만들 수 있습니다. Microsoft Research에서 무료로 제공

MIT Labs의 스크래치는 무료이며 실제로 기본적인 2D로 아이들이 코딩에 참여할 수 있도록합니다. 시각적으로 어색합니다. 유연합니다.

마이크로 월드 JR은 Papert의 로고로 돌아가서 로고를 쓸 수 있다고합니다. 유용한 업데이트가 필요합니다 (IMO).

나를 위해 지금까지는 Construct 2 vs Stencylworks로 내려갑니다 ...하지만 Unity에서 알고 있고 좋아하는 것처럼 Unity에서 적절한 2D 게임을 만드는 것이 얼마나 쉬운 지 확인할 것입니다.


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