UI 집약적 전략 게임을위한 2D GUI를 갖춘 게임 엔진 추천


11

예, 이것은 또 다른 권장 게임 엔진 요청입니다. '트위스트'는 전략 게임을하고 있으며 스프라이트, 애니메이션 및 입력 컨트롤 추상화 위에 스크롤 막대, 선택 상자, 버튼 등과 같은 복잡한 컨트롤을 GUI로 지원해야합니다.

다양한 GUI 라이브러리로 XNA를 시도했지만 문제는 해당 라이브러리가 '완료'되지 않았다는 것입니다. 내가 볼 수있는 다른 엔진이 있는지 궁금합니다.

답변:


5

libRocket은 최근 오픈 소스로 갔다.

게임 엔진이 아닙니다. 그들은 자신을 미들웨어로 묘사합니다. 그러나 라이브러리는 GUI 디자인에서 상용구 코드를 제거하는 데 중점을 두어 잘 수행되었습니다. XHTML과 CSS를 기반으로하므로 이미 웹 개발에 익숙하다면 큰 도움이 될 것입니다.

그러나 이러한 문제를 개별적으로 해결해야하는 게임 엔진은 아닙니다. 이 질문에 대한 지침을 찾을 수 있습니다.
프로토 타이핑에 권장되는 2D 게임 엔진


libRocket이 GUI 요소를 렌더링합니까, 아니면 설명 만 제공합니까? 이것이 멍청한 질문이라면 죄송하지만 기능 목록에 실제로 렌더링되는지는 실제로 표시되지 않습니다.
Extrakun

1
추상 렌더링 백엔드를 사용합니다. 자신을 정의하는 것은 사용자의 책임입니다. 그러나 samples 디렉토리에는 Ogre3D, DirectX 및 OpenGL에 대한 구체적 렌더러가 있습니다.
deft_code

2

Windows 수준의 UI 라이브러리와 함께 제공되는 무료 게임 엔진을 모르지만 CEGUIOGRE를 사용하는 사람들을위한 성숙한 솔루션입니다 .

다른 옵션은 GTK + 또는 Win32 / OS X에 설정된 플랫폼의 기본 위젯을 사용하고 해당 위젯 중 하나에 OpenGL 컨텍스트를 포함시키는 것입니다. 긴 기능 목록을 찾고 있다면 일반적으로 "최상의"UI입니다.

대상 플랫폼이 XNA이면별로 유용하지 않습니다. XNA의 주요 판매 포인트는 플랫폼 간 호환성입니다. 즉, 마우스를 많이 사용하는 사람들이이를 우선적으로 사용하지 않습니다.


솔직히 말해서 Qt 4.5를 사용하는 것에 대해 궁금했습니다. 게임 내 환경처럼 스키닝하거나 SDL 위에서 실행하는 데 경험이있는 사람이 있는지 알고 싶습니다.
Extrakun

CEGUI는 OpenGL 및 기타 렌더링 엔진에서 직접 사용할 수도 있습니다.
Klaim

2

XPF 는 아직 개발 초기 단계이지만 꽤 빨리 진행되고 있습니다. WPF 및 Silverlight를 기반으로하지만 XNA 용으로 개발되었습니다.


2

글쎄, C #에서 C ++로 옮기는 것이 마음에 들지 않으면 HGE를 확인할 수 있습니다 . 구식이지만 약간 사용하고 확장하기가 쉽습니다. 포럼을 약간 검색하고 싶다면 DirectX 9 및 OpenGL에 대한 포트를 찾으십시오 (오래되었습니다). 기본적으로 셰이더와 같은 것을 지원하지 않습니다. 소리와 입력은 포함되지만 물리 나 충돌 감지는 없습니다. 이를 위해 항상 Bullet 또는 Box2D가 있습니다. 턴 기반 게임이나 간단한 실시간 게임의 경우에는 필요하지 않을 수도 있습니다.

GUI에 내장 된 GUI는 가비지이지만 CEGUI를 통합 할 수 있습니다. CEGUI는 실제로는 스키닝이 번거 롭더라도 다른 렌더링 시스템으로 쉽게 확장 할 수 있습니다. HGE의 구현은 두 개의 파일이며 매우 짧습니다.

Clanlib은 또한 당신이보고 싶은 것일 수 있습니다. 개인적으로 사용하지는 않았지만 상당히 강력하고 간단한 GUI 구성 요소가 포함되어 있습니다. 또한 HGE가 몇 년 동안 업데이트되지 않은 동안 적극적으로 개발되었습니다.


2

XNA의 경우 NeoRe 와 함께 FlatRedBall을 사용해 보셨습니까 ?


FlatRedBall을 시도했지만 Neoforce에 대해 들어 보지 못했습니다. 그것을 확인합니다! Neofroce : Alas는 많은 XNA GUI 프로젝트와 같이 개발자가 관리하지 않습니다. Microsoft만이 GUI를 XNA 코어의 일부로 만들 것입니다.
Extrakun

Neoforce에는 더 이상 개발자가 없지만 누구나 무료로 픽업하고 유지할 수 있습니다. p
Oskar Duveborn

2

오징어를 시험해 볼 수 있습니다. .net 용 엔진 독립 GUI SDK입니다 (필자 : P). 여기에 : http://www.ionstar.org/?page_id=4


나는 두 개의 정답을 표시 할 수있는 방법이 소원
Extrakun

0

일부 컨트롤을 직접 만드는 것이 마음에 들지 않으면 많은 사용자 정의 컨트롤을 가지고 있고 Scaleform을 확인하십시오 . 게임 메뉴 UI의 선두 주자 중 하나입니다.

게임 내 플래시 플레이어처럼 생각할 수 있습니다.


-1

Unity 3D 에서 사용 가능한 즉각적인 모드 GUI 방법을 고려할 수 있습니다 . Unity 3D 는 무엇보다도 3D, 2D 및 GUI를 잘 수행하는 멋진 게임 엔진입니다.


다른 UI 질문에서 언급했듯이 IMGUI가 여러 창, 콤보 상자 및 열 목록 컨트롤로 확장되는 것을 본 적이 없습니다. 효율성 벽과 API 디자인 벽에 상당히 빨리 도달했습니다. Unity의 현재 GUI 라이브러리는 성능이나 기능면에서 제대로 확장되지 않습니다.

Unity 자체 GUI는 그들이 제공하는 IMGUI 시스템을 사용하여 구현된다는 점에 주목하는 것이 흥미로울 수 있습니다.
Jason Kozak

@ 제이슨 : 그건 반 사실입니다. Unity 에디터 ( unity3d.com/support/documentation/ScriptReference/… )는 일반적인 GUILayout보다 더 많은 기본 위젯을 제공합니다. 또한 이러한 위젯은 일반 GUI 라이브러리와 비교할 때 상당히 저전력입니다. 솔직히 말해서 게임에 Unity 에디터와 같은 UI가 있다면 반응, 초점 동작, 활성화 규칙 등 모양을 언급하지 않고 싫어합니다.

@Joe Unity에서 게임을 개발하고 있다면 좋은 점입니다. 내 의도는 더 복잡한 IMGUI의 예를 지적하는 것이 었습니다. Unity는 무료이므로 다운로드 및 평가가 매우 쉽습니다.
Jason Kozak

GUIX와 같은 OOP 프로그래밍을 수행하려는 경우 IMHO Unity3D의 GUI에 일부 타사 라이브러리를 추가해야합니다. 그러나 Unity3D에는 엔티티에 연결된 콜 라이더에서 UI 요소를 클릭 할 수있는 성가신 버그가 있습니다. 이것은 다음 릴리스에서 수정 될 것을 선전했습니다. 그러나 나는 현재 2D를 생각하고 있으며 Unity3D에서 2D를 수행하려면 약간의 농구가 필요합니다. 그렇지 않으면 3D 물건에 대한 좋은 빠른 엔진입니다.
Extrakun
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.