본문 바로가기
야매 개발실/GameOVEN & Lua

국산 게임엔진 GameOVEN을 사용해보자.(2)

by 야매플머 2010. 1. 27.
반응형

국산 게임엔진 GameOVEN 사용해보자.(2)

 

 

사용자 삽입 이미지

국산게임 엔진 GameOVEN 사용해보자 번째 포스팅이 되었네요. 오늘은 오븐 가지고 게임을 만들기 위해 프로젝트를 생성하는 과정을 해보고 생성되는 스크립트 들과 UI오브젝트 들을 어떤 식으로 사용하는지 한번 보도록 하겠습니다. 그럼 제일먼저 오븐 실행시켜 새로운 프로젝트를 생성해 보도록 하겠습니다.

사용자 삽입 이미지

게임오븐을 실행시키고 좌측 상단에 게임오븐의 아이콘 형태의 메뉴버튼을 누르게 되면 새로운 프로젝트를 생성할 수 있는 선택 메뉴가 보입니다. 또한 처음 실행 시켰을때 기본으로 선택되어 있는 Home 탭의 제일 첫 번째 아이콘을 이용해서도 새로운 프로젝트를 생성 할 수 있습니다. 단축 키로는 Ctrl + N 으로 되어 있네요. 보통의 윈도우 프로그램(툴)들을 보면 한 가지 작업의 기능에 접근하는데 보통 3가지 이상의 방법을 제공합니다. 기본 메뉴를 통해서든 팝업을 통해서든 말이죠. 가장 자기가 원하는 방법으로 접근해서 사용하시면 됩니다.
사용자 삽입 이미지
새 프로젝트 만들기를 클릭을 하면 보기에도 아주 심플한 설정창이 나옵니다. 뉴 프로젝트 생성의 입력 항목으로는 클라이언트 윈도우의 크기 선택(게임 화면의 해상도 결정입니다), 게임 클라이언트의 프레임수의 선택, 그리고 게임오븐은 기본이 네트웍 연결을 지원하고 있음으로 해당 게임을 몇 명까지 접속해서 사용할 수 있는 게임으로 만들 것 인지 최대 접속자 수를 선택 할 수 있게 되어 있습니다. 게임 오븐에서 현재 지원하는 최대 접속자 수는 16명입니다. 그리고 그 하단에는 프로젝트 이름과 프로젝트가 저장 될 위치를 선택 할 수 있도록 되어 있습니다.
사용자 삽입 이미지
각자 입맛에 맞게 선택해서 프로젝트를 생성해봅니다. 저 같은 경우에는 컴퓨터 사양이 별로 좋지 못합니다. 사실 노트북을 쓰고 있기때문에 게임의 해상도는 800x600으로 선택하고 프레임수도 30프레임에 4명까지 접속 할 수 있도록 선택을 했습니다. 흠.. 저는 이 프로젝트로 슈팅게임을 한번 만들어 볼까 합니다. 그래서 슛팅게임이라는 프로젝트 네임과 제가 관리하기 편한 폴더로 선택했습니다.
사용자 삽입 이미지
Ok를 가볍게 눌러보니 뭔가 잔뜩 생성이 됬습니다. 전에는 텅텅 비어 있던 곳에 말이죠. 생성후 기본으로 보이는 화면을 살펴보면 Scene1이라 하는 화면이 제일먼저 눈에 띄는 군요. 이곳은 실제 플레이어가 보게되는 곳입니다. 프로포티를 살펴보면 Scene라고 하는 것의 ID그리고 이름 그리고 커서 라고 되어 있는 것 보니 마우스 커서도 이곳에서 변경 할 수 있을 것이라는 감을 잡을 수 있도록 해줍니다.
사용자 삽입 이미지
네 방금전 봤던 Scene1의 UIObject를 관리해주는 루아 스크립트 입니다. 이곳은 게임을 개발하는 개발자가 손댈 필요가 없습니다. 게임오븐은 그래픽 UI를 방금전에 확인한 Scene1이라는 곳에 직접 불러오게 됩니다. 이곳 UI스크립트 파일은 제대로 그래픽이 불러와 졌는지 확인하는 용도 정도로 사용하시면 될 것같습니다.
사용자 삽입 이미지
이곳 또한 UIObejct스크립트 파일처럼 SoundObject를 관리하는 스크립트 파일입니다. 이곳 또한 마찬가지로 이곳에 따로 코딩하는 일은 없습니다. Scene1 또는 Scene1처럼 화면으로 생성된 곳에 직접 사운드를 불러오게 되면 자동으로 이곳에 사운드 객체를 생성해 줍니다.

그리고 좌측 스크립트 파일중에 보시면 Server 과 Client 루아 스크립트 파일이 있는데 이곳을 코딩을 하는 경우는 없습니다. 이 두 가지 스크립트 파일은 실제로 우리가 작성해야할 서버스크립트와 클라이언트 스크립트를 기타 다른 함수 등에 연결 해주기 위해서 gameapp라고 하는 변수로 연결 시켜주는 역활을 합니다.
사용자 삽입 이미지
이곳은 제가 만든 슛팅게임 프로젝트의 클라이언트 쪽의 메인 스크립트 파일이 되는 부분입니다. 이곳을 통하여 게임의 전반적인 기능을 구현하게 되는 스크립트 파일이 되겠습니다.
사용자 삽입 이미지
이곳은 서버 스크립트 파일이 되는 부분입니다. 게임오븐은 기본으로 네트워크 연동이기 때문에 사용자가 접속하고 하는 내용이나 사용자 정보등을 서버를 통해 전달 받고 게임을 진행하게 됩니다. 그러한 내용을 관리하기 위한 기능을 이 서버 스크립트 파일에 작성하게 됩니다.
사용자 삽입 이미지
이곳은 프로젝트 생성후 제일 처음봤던 Scene1의 화면에서 이루어질 기능들을 작성하는 곳입니다. 개개인의 개발 스타일에 따라 방식은 다르겠지만 해당 화면에 해당되는 스크립트 파일에서 보통은 화면에서 발생되는 이벤트를 처리하는 기능을 작성합니다.
사용자 삽입 이미지
이곳은 게임오븐의 네트워크 프로그래밍을 할때 클라이언트와 서버간 통신을 할 이벤트(프로토콜)을 선언하는 곳입니다. 이곳에서 서버와 클라이언트간 통신을할 프로토콜을 선언을 해야 네트워크가 가능해집니다. 게임오븐은 네트워크 기능을 간편하게 사용할 수 있도록 되어 있는 편이지만 기능적으로 뛰어는 함수나 기능을 지원하고 있는 편은 아닙니다.(개인적인 생각입니다만...), 거의 네트워크에서 관련된 기능은 직접 작성을 해야합니다. 아마도 게임오븐을 이용해서 게임을 만들면서 가장 신경이 많이 써야할 부분이라고 생각이 됩니다.

일단 오늘은 기본적으로 생성되는 스크립트 파일들을 살펴 봤습니다. 그림 한장씩 스크린 샷으로 찍은다음 글로작성하여 설명하는 것이 보통 어려운 것이 아니군요.. 생각해 놓은 것은 많은데 한계가 많이 있는 것 같습니다. 다음 시간부터는 가능 할지 모르겠지만 동영상을 이용해서 포스팅을 해볼까 합니다. 사실 오늘 포스팅은 개인적으로도 만족 스럽지 못하네요.. 그래도 차근차근 진행해 보도록 하겠습니다.  그럼 다음에 또 봐유~

PS : 저도 공부를 하고 있는 학생이라 설명이 탁월하지 못할 수도 있고 틀리는 부분도 분명이 있을 겁니다. 그런 부분은 충분히 감안 하시고 포스팅 내용을 참조 하시면 좋을 것 같습니다 ^^;
반응형