우리나라에서도 쓸만한 오픈소스 3D엔진이 날올때가 아닌가 합니다. 충분히 훌륭한
실력들을 가지신분이 많은데 이런쪽으로는 관심을 그다지 기울이시는것 같지를 않습
니다. Ogre만든 Sinbad란 분도 매일 2시간씩 주말과 휴일을 이용해 만들었다고 합니
다. 여담이만 이분은 게임업계 종사자가 아니랍니다. 게임업계에서 일하고 싶었는데
이러저러한 이유로 포기하고 대신 3D엔진을 만들었다고 하더군요.(이러저러한 이유
중 하나가 엄청난 노동강도 때문이랍니다.)
2003년도에 처음 접했을때는 쓸만한 수준이 아니었는데 지금은 상당한 수준으로 발
전했습니다. 인터페이스도 크게 바뀌지 않았고요. 하지만 상용으로 쓰기에는 몇가지
문제가 있는데 한글사용, 충돌처리(기본적인AABB만 있습니다.), 사용자 데이터포맷
지원 미비(자신의 자원들을 노출시키길 원하지 않는경우), 익스포터(직접적으로 지원
하는 툴이 XSI하나 뿐입니다. 우리나라에서는 거의 사용하질 않죠.)등이 있습니다.
이런문제가 생긴 이유가 이분의 설계철학때문입니다. 각각의 컴포넌트 라이브러리를
조합해 하나의 시스템을 만드는것이 가장 효률적이라는 겁니다. 그래야 각 컴포넌트
들을 쉽게 업그레이드 시킬 수 있고 그러한 업그레이드가 시스템에 영향을 미치지 않
는다는 겁니다.(Jeff Plummer의 논문을 링크시켜 놨더군요. 읽어보고 상당히 공감은
가는 내용인데 될까 십더군요.)
10년 전에 비해 개발규모가 비약적으로 커진 현시점에서 회사내에서 모든것을 만든
다는것은 경제성이 너무 떨어집니다. 전에 여기서 몇번 논의 되었던 엔진을 사서 쓰냐
만들어 쓰냐는 개인적으로는 무의미한 논의가 될거 같습니다. 다만 좀더 싸고 우리환경
에 적합한 엔진이 무었이냐는 논쟁이 남는거 같습니다. 외국의 경우 FPS가 발달해서
FPS에 적합환 엔진이 많이 나오는데 우리나라의 경우 MMORPG에 적합한 게임엔진이
나올때가 되지 않았나 합니다.
그리고 안타까운것은 제 링크중 한글싸이트는 이곳 하나 딱 남아있습니다. 꽤 많았었
는데 사라지거나 할동이 미미하여 거의 가지않는곳이 돼버리는등.. 아마 그래서 요즘
잡담성 글이 많이 올라오는것 같습니다. 나뿐의미가 아니라 글을 쓸곳이 이곳정도 밖
에 없다는 의미입니다. 외국사이트에 질문올릴때 러시아사람이 쓴거 같다는 말을 들
으면 쉽게 써지지가 않지요.
요즘들어 자신이 만든 짧은 코드같은것도 쉽게 올릴 수 있고 논문수준의 글도 읽을 수
있고 자신이 본 기사나 논문을 번역해서 올리는 한글사이트가 있었으면 하는 바램입니다.
비회원 wrote:최근에 OGRE, IRRLICHT를 모두 손대봤습니다.
그리고 둘다 버리고 자체 엔진 제작으로 전향했습니다. 이유는 다음과 같습니다.
OGRE: 기본적으로 scene 계층 구조를 지원안합니다. 그 흔한 X 파일도 지원하는데 말입니다. dotscene plugin이 있다길래 뒤져봤는데, 이건 애니메이션을 지원하지 않습니다. 결론적으로 계층 구조의 키프레임 애니메이션 객체를 쓰려면 자체 포맷을 만들어야 합니다.
irrlight: DrawIndexedPrimitiveUP()만 씁니다. -_-;
ogre가 유지보수가 난잡하다는 흠이 있지만 전반적으로 ogre가 보유 기능이 풍부합니다.
Ogre Features wrote:
Scene Features
Hierarchical scene graph; nodes allow objects to be attached to each other and follow each others movements, articulated structures etc
오우거 사양중 한 부분인데 이것과는 다른 기능을 말씀하시는 건지요?
저의 경우도 scene graph 구조지원때문에 쓰려고 하는데.. 궁금하네요
비회원 wrote:최근에 OGRE, IRRLICHT를 모두 손대봤습니다.
그리고 둘다 버리고 자체 엔진 제작으로 전향했습니다. 이유는 다음과 같습니다.
OGRE: 기본적으로 scene 계층 구조를 지원안합니다. 그 흔한 X 파일도 지원하는데 말입니다. dotscene plugin이 있다길래 뒤져봤는데, 이건 애니메이션을 지원하지 않습니다. 결론적으로 계층 구조의 키프레임 애니메이션 객체를 쓰려면 자체 포맷을 만들어야 합니다.
irrlight: DrawIndexedPrimitiveUP()만 씁니다. -_-;
ogre가 유지보수가 난잡하다는 흠이 있지만 전반적으로 ogre가 보유 기능이 풍부합니다.
Ogre Features wrote:
Scene Features
Hierarchical scene graph; nodes allow objects to be attached to each other and follow each others movements, articulated structures etc
오우거 사양중 한 부분인데 이것과는 다른 기능을 말씀하시는 건지요?
저의 경우도 scene graph 구조지원때문에 쓰려고 하는데.. 궁금하네요
내용 수정... 급하게 쓰다보니 의미전달에 틀린게 있네요.
OGRE: export된 ogre file format은 기본적으로 scene 계층 구조를 지원안합니다. 그 흔한 X 파일도 지원하는데 말입니다. dotscene plugin이 있다길래 뒤져봤는데, 이건 애니메이션을 지원하지 않습니다. 결론적으로 계층 구조의 키프레임 애니메이션 객체를 쓰려면 자체 포맷을 만들어야 합니다.
rainkimy wrote:
하지만 상용으로 쓰기에는 몇가지
문제가 있는데 한글사용, 충돌처리(기본적인AABB만 있습니다.), 사용자 데이터포맷
지원 미비(자신의 자원들을 노출시키길 원하지 않는경우), 익스포터(직접적으로 지원
하는 툴이 XSI하나 뿐입니다. 우리나라에서는 거의 사용하질 않죠.)등이 있습니다.
한글사용은, 구글에서 찾아보니 CEGUI를 사용한 예제가 있던데요, 충돌처리는 물리엔진을
연동해서 쓸수있기해 걱정 전혀 없습니다. 블렌더도 익스포터 지원합니다.. 3ds max도 지원하던데..
사용자 데이터포맷은 아마 HL2같이 고유 압축포맷(.gcf .mpq etc)을 만들면 되지 않을까요..