2013-10-11 3 views
0

C# 및 SharpDX (WP8)를 사용하여 게임을 작성 중입니다.WP8 : 디버그 관련 버그 없음

디버거가 연결되지 않은 경우 텍스처가 잘리지 않고 픽셀 쉐이더에 잘못된 색상 이있는 경우 많은 버그가 있습니다.

그러나 디버거가 연결되면 모든 것이 정상적으로 작동합니다.

첨부 된 디버거와 분리 된 디버거의 차이점은 무엇입니까? 어떻게 해결할 수 있습니까? 감사합니다.

+0

문제를 복제하는 약간의 코드 예제가 있습니까? 또한 Async로 리소스를로드하고 렌더링을 시작하기 전에 리소스가 제대로로드 될 때까지 기다리십니까? – catflier

답변

0

디버거가 연결되지 않은 상태에서 모든 코드가 더 빠르게 실행됩니다 (특히 디버깅 중일 경우).

당신은 당신이 당신의 코드에 경쟁 조건 버그가 있음을 강력하게 나타냅니다.

릴리스 (최적화) 빌드를 시도하거나 에뮬레이터 디버거를 사용해 보거나 로깅을 사용하여 이러한 문제를 찾아보십시오.

+0

에뮬레이터에서 올바르게 작동합니다 (연결된 디버그가 있고 디버거가없는 경우). 버그는 장치에서만 재생산됩니다. – shnyaps

+0

이상한 세미 솔루션을 발견했습니다. 픽셀 데이터 앞에 피치 (2 픽셀 크기)가 있어야합니다. 예를 들어 텍스쳐 포맷은 bgra4444이고 크기는 2, 2 * 2 = 4, 데이터 크기 + 4 바이트를 할당해야하며 4 바이트의 오프셋을 갖는 데이터를 넣어야합니다. 32 비트 텍스처의 경우이 값은 8 바이트입니다. 나는 이것이 sharpdx @ feature @ – shnyaps