본문 바로가기
반응형

Gamebryo4

트리구조 게임브리오에서 가장 중요한 부분은, 트리 구성입니다. 트리 구성을 어떻게 사용하고 있는가를 분석하는 것이 가장 첫 단추라고 보여집니다. 응용프로그램을 만들자고 한다면, 렌더러를 생성하는 방법이 첫 단추겠지만요. 분석을 위해서는 트리라고 생각합니다. 트리를 구성하는 방법은 전통적으로 여러가지 방법이 존재합니다. 일단 손쉽게 생각할 수 있는 방법은 링크드 리스트입니다. 링크드리스트 방법은 순서가 보장되며, 중간에 비어있는 노드들이 없습니다. 그러나 치명적인 약점은 노드를 중복해서 매달 수 없다는 것입니다. 예를 들어서 다음과 같이 트리를 구성했다고 하죠. NiObject는 클래스 하이어라키상 최상위 클래스이고, 트리의 최상위 노드는 NiNetObject라고 하죠. 이 클래스는 실제 게임브리오와는 다릅니다. .. 2011. 9. 24.
트리구조 게임브리오에서는 트리구조를 다룸에 있어서 가변형 배열(Array)를 사용하고 있습니다. 링크드 리스트를 이용할 경우 싱글 링크드 리스트를 이용한다면, 가변형 배열과 비슷한 자료 크기를 가지고 있습니다. 그러나 가장 큰 약점은 하나의 노드를 여러개의 노드가 자식으로 가질 수 없다는 점입니다. 그렇다고 해서 게임브리오가 이 조건을 만족하는가 하면 그것은 아닙니다. 게임브리오는 기본적으로 하나의 노드를 여러개의 노드가 자식으로 가질 수 없습니다. 트리를 구성함에 있어서는 다음과 같은 경우를 따져보아야 합니다. 하나의 노드는 여러개의 부모를 가질 수 있는가? 이 것은 트리를 설계할 때 가장 중요한 부분입니다. 그래픽 엔진을 개발할 때에는 이것을 허용하는 쪽으로 하는 것이 원칙이라고 생각됩니다. 그러면 함수면에서.. 2011. 9. 23.
게임브리오 시작하기 게임브리오는 멀티 플랫폼 개발이 가능하도록 구성되어 있다. 실제 PS2, DirectX9, DirectX8, OpenGL 등의 플랫폼에서 소스를 크게 수정하지 않고 동작시킬 수 있다. 마크로만 잘 정의했다면, 소스 수정 없이 동작이 가능하다. 사실 멀티플랫폼 개발이라는 것이 꽤 곤혹스럽다. 한 때, Windows Mobile과 Win32 멀티플랫폼 개발을 해보았는데, 신경써주어야하는 것이 한두가지가 아니었다. 비슷한 플랫폼인데도 상당히 작업이 귀찮고 껄끄러운데, 이종간에는 어떨지 대충은 알 것으로 생각한다. 여하튼 각설하고.. 게임브리오를 시작하기 위해서는.. 1) 윈도우 생성 로직은 직접 작성해야 한다. NiApplication을 사용하는 방법도 있지만, 그리 권하지는 않는다. 2) 윈도우가 생성되었으.. 2011. 9. 17.
Gamebryo 엔진 제가 MMORPG를 두번 개발했는데, 첫번째 게임은 고누소프트의 가약스 게임입니다. 이 게임은 당시 MMORPG가 그다지 많지 않을 때 만들었죠. 그래도 꽤 인기가 있었고, 아직까지도 잊지 않고 기억해주는 게임입니다. 이 게임을 개발하기 위해서 다양한 엔진을 검토했는데, 가격대 성능비로 가장 높은 점수를 줬던 것이 게임브리오 엔진의 전신인 넷이머스(NetImmerse) 엔진입니다. 가약스 게임은 모두 MMORPG 게임 제작에 경험이 없었던 탓에 상당히 많은 시행착오를 했었지만, 개발진들이 모두 열심히 해주어서 그래도 꽤 만족한 게임이 되었습니다. 개인적으로 그래픽은 별로였지만요. 저는 클라이언트 쪽 프로그램 총괄을 맡았었습니다. 두번째 게임은 스피노소프트의 나비스 온라인 게임입니다. 해양온라인 게임의 기.. 2011. 9. 16.
728x90