3D 게임제작시 동적 리쏘스 로드 방법이 궁금합니다.
글쓴이: kjh721 / 작성시간: 일, 2010/02/21 - 4:45오후
Ogre에 기초하여 게임엔진을 자체로 만들어서 쓰는데요, 동적리쏘스 로드 방법이 신통치 않아서 고수님들께 부탁 드립니다.
아주 넓은 바깥 환경의 씬을 형상하는 프로그람입니다.
분명히 동적로드는 해야 하는데...
구현한 내용은 아래와 같습니다.
- 현재 하나의 쓰레드내에서 렌더링도 하고 동적읽기도 진행합니다.
- 읽어내야 할 구역 A를 예측하고 그의 일부분씩 조금 조금 읽어내고요 필요없다고 예측되는 구역 B의 리쏘스는 다 파괴합니다.
이때 B구역은 A구역보다 아주 큽니다.(파괴구역이 읽기구역보다 넓다.)
- 지형관련정보만이 아니라 오브젝트에 해당된 리쏘스들도 읽어냅니다.
여기서 오브젝트들은 반복이용되는것이 많아 동적로드 않해도 되잖을까 생각합니다.
이렇게 구현하다보니 한쓰레드내에서 어느 순간에 자원을 불러내므로 약간의 렉이 자주 발생합니다. 결국 탁탁 채는 현상이 좀 심합니다.
대신 동적읽기를 다른 쓰레드를 만들어 하자니 렌더속도를 떨굴가 걱정됩니다.
어떤 책을 보니 렌더링루프내에는 자원의 창조를 하면 나쁘다고 되여있더군요. 그래서 미리 다 읽어들이라고 생각되네요. NVidia PerfHUD 프로그람에서도 게임 노는시에 (loop가 돌고있을때) 자원창조감시 기능이 있고요~
고수님들!
렌더링속도도 안떨구면서 렉도 안걸리는 그런 멋진 동적읽기 방법 가르쳐주세요!
(꾸벅)
Forums: