2017-01-15 6 views
0

Google 어스와 비슷한 DirectX를 사용하여 가상 지구본을 씁니다. 지금까지 테셀레이션을 완료하고 전체 영역에서 래핑 된 텍스처로 테스트 한 결과 성공했습니다. 위도와 경도 (90lat, -180lon = 0,0 및 -90lat, 180lon = 1,1)에 해당하는 텍스처 좌표를 작성했습니다.텍스처를 DirectX 영역에 매핑 하시겠습니까?

이 프로젝트에서는 구형 위에 여러 개의 이미지 타일을 겹쳐서 배치해야합니다. 예를 들어, 90도 90도에 걸쳐 8 개의 이미지. 이 타일은 동적으로 업데이트 될 수 있습니다 (예 : 타일을 추가하거나 제거 할 수 있습니다). 렌더링 대상보기를 사용하여 타일을 직접 그리는 방법에 대해 생각해 봤지만 더 나은 방법이 있다고 확신합니다.

어떻게해야합니까? 특정 텍스처 좌표 공간에만 적용되도록 텍스처를 설정하는 방법이 있습니까? 나는. (0, 0)에서 (0.25, 0.5)?

답변

0

3 가지 간단한 해결책이 있습니다.

    당신은 타일이 간단한 방법으로 배치하는 경우 (각 그리기 호출하기 전에 올바른 텍스처 설정, 타일이 적용되는 영역의 부분을 일치하고 이후에 사람들을 끌어 형상을 만들 수 있습니다
  1. , 당신은 또한 생성 할 수 있습니다 인스턴스화 및 단일 그리기 호출을 사용하여이 지오메트리).
  2. 텍스처 좌표를 평가하고 변형 된 텍스처 좌표를 사용하여 적절한 텍스처를 선택하는 픽셀 쉐이더를 작성할 수 있습니다.
  3. 모든 텍스처를 큰 텍스처로 렌더링하고 이것을 사용하여 구를 렌더링하십시오. 타일이 변경 될 때마다 큰 텍스처를 렌더링 타겟으로 묶고 그 위에 새로운 타일을 그립니다.