장면의 깊이 맵을 그려 가고 있습니다. 이제 HLSL 파일을 다음과 같은 파일로 만들었습니다. http://www.riemers.net/eng/Tutorials/XNA/Csharp/Series3/Shadow_map.php 모든 것이 잘되었습니다. 하나! 각 픽셀의 정확한 값을 알고 싶으므로 일반 렌더 타겟에서 그리는 대신 Texture2D 인 http://www.riemers.net/eng/Tutorials/XNA/Csharp/Series3/Render_to_texture.php 인 새 렌더 타겟을 만든 다음 스프라이트 배치를 사용하여 그립니다.XNA 심도 맵 겹침 영역 색상
다음!
및 스프라이트를 사용하여 화면에 후 텍스처 그리는 사람이 제공 : I가 화상을 표시 할 때, 즉 첫째, 화면에 직접 묘화 하나는이 출력을 제공한다 : 두 번째 캡처에 몸 뒤에 분명히 몸의 오른쪽 팔, 몸이 겹치는 영역에 존재하지 않는 것처럼 그려지는
알 수 있습니다.
내가 생각하기에, 정점의 정점이 텍스처에 먼저 그려지며, 먼 거리의 것들은 관찰 된 이미지를 생성하는 더 가까운 것들을 덮어 씁니다.
나는 어떤 의견을 부탁드립니다.
+1 : 완전히 동의합니다. 이 상황에서 나는 보통 SpriteBatch.Begin() 호출 전에 중단 점을 놓고'DepthStencilState','BlendState' 및'RasterizerState'를 확인한 다음'SpriteBatch.End()'호출 후에 모두 중단 점을 재설정합니다. –
은 매력처럼 작동합니다. –