C++로 매끄러운 2D 타일 맵 렌더러를 만들려고합니다. 목표는 플레이어가 각지도에서 다른지도로 진행할 때 화면을 거의 또는 전혀로드하지 않는 것입니다.매끄러운 타일 맵 렌더링 C++
예 : 위 그림의 각 사각형은 영역/타일 맵입니다. 빨간색 사각형은 볼 수있는 카메라입니다. 이 예에서, 각 영역은 256 * 256과 std::vector<std::vector<int> >
내부에 저장되어 - 또한 카메라가 60X60의 볼 수있는 영역 (의 32 × 32 타일)
내 문제는 현재를 결정하는 방법이다 가지고 말할 수 :
- 무엇 타일 각 주어진 영역에서 표시 할 수 있습니다.
- 타일을 그릴 오프셋을 계산하는 방법. 누군가가 내가 지불 :
나는 무역에 의해 소프트웨어 엔지니어 오전 기꺼이 이상입니다이 기술을 만들기에 관심이있는 경우
는 약간 관련, 그러나 그래픽은 거의 내 강점 없습니다. 최종 목표는 셰이더를 지원하는 OpenGL 3.2를 사용하여 구식 RPG를 개발하는 것입니다.
감사합니다.
플레이어가 충분히 가까워지면 미니 크래프트 스타일로 '로드'청크를 만드십니까? 그가 멀리 떨어져있을 때 그들을 '언로드'하고로드 된 모든 청크를 렌더링합니다. 그렇다면 사용자는 맵 대신 갭을 결코 보지 못할 것입니다. ^^ – Patashu
당신의 질문은 정확히 무엇입니까? – Xymostech
재미있는 생각 Patashu,하지만 정말로 나를 혼란스럽게하는 것은 모든 영역 데이터를 표시하는 방법입니다. 네 std :: vector> - 각각 256x256 타일을 가지고 있다고 가정 해 보겠습니다. 어떤 영역이 서로 관련이 있는지 알고 있지만 렌더링해야 할 데이터와 불행하게도 혼란스러워하는 부분을 결정해야합니다. –