2012-03-05 3 views
2

스플릿 스크린 게임을 만들고 있습니다. 각 분할 화면을 렌더링 할 때 화면 경계 외부에 일부 겹치는 부분이 있습니다.2d 그래픽에서 대상에 렌더링 한 다음 화면에 렌더링 할 때의 성능 오버 헤드는 무엇입니까?

화면의 크기는 10x10입니다. 반쪽 타일을 오른쪽으로 이동하면 분할 화면보기가 중앙에 놓여 있다고 가정하면 화면에 표시되는 왼쪽 및 오른쪽 가장자리에 절반의 타일이 표시됩니다.

그러나 절반의 타일을 렌더링 할 수 없으므로 전체 타일이 렌더링됩니다. 움직일 때 가장자리에 검은 색 틈이 생기지 않도록 여분의 타일을 렌더링해야합니다 (실제로는 12를 더 쉽게 렌더링합니다).

분할 화면이 화면의 전체 크기 인 경우이 중복은 문제가되지 않습니다. 그러나 두 개의 분할 화면을 나란히 렌더링하는 경우 보이는 절반 타일의 다른 절반과 같이 선 밖으로 나간 비트가 있으면 마지막으로 그려지는 부분이 다른 부분과 겹칩니다.

해결 방법은 각 분할 화면을 텍스처로 렌더링하고 텍스처를 화면에 그려 경계에 겹치는 비트를 자르는 것입니다.

효과 변환이없는 화면에 텍스처 하나를 렌더링 할 때 왜 이와 관련하여 많은 성능 오버 헤드가 발생하는지 생각할 수 없습니다. 그러나 내가 실수인지 궁금해하며 아마도 게임이 상당히 느려지는지 궁금 할 것입니다.

더 나은 해결책이 있습니까? 아니면이 것이 좋을까요?

답변

1

일반적으로이 값은 무시할 수 있습니다. 필자가 함께 사용해 본 모든 그래픽 하드웨어는 비디오 메모리에서 번갈아 나타나는 버퍼로 렌더링됩니다. 일반적으로 렌더링 대상을 메모리의 임의 텍스처에 설정하는 것만 큼 쉽습니다. 그런 다음 텍스처를 렌더 버퍼에 복사하는 작업 만 오버 헤드가됩니다. 영원한 시간은 아니지만 확실한 것은 아닙니다. 당신이 나보다 훨씬 더 똑똑하다면 표준 렌더 버퍼의 세그먼트를 텍스처로 처리하고 복사본을 피할 수 있습니다. 그러나 필자는 불특정하고 임의적이거나 상상의 그래픽 시스템에 대한 전문가가 아니므로 더 많은 정보가 없으면 나는 그렇게 예상해서는 안된다.)

관련 문제