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 라이브러리와 함께 제공되는 무료 게임 엔진을 모르지만 CEGUI 는 OGRE를 사용하는 사람들을위한 성숙한 솔루션입니다 .

다른 옵션은 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.