[BCB2007] Szybkie rysowanie, drugi monitor

0

Witam,

muszę szybko coś rysować na drugim monitorze. Robię to przez pobranie DC drugiego monitora, stworzenie bitmapy przez CreateDIBSection dla tego DC i umieszczenie jej w DC2, które jest kompatybilne z DC. Później wystarczy, że zmienię bufor danych bmp i wklejam obraz jednym wywołaniem BitBlt.

Ale.. chcę robić to jeszcze szybciej. Próbuję z DirectDraw (mój pierwszy raz w ogóle) i z tego co wyczytyałem, to nie można drugiego monitora na fullscreen obsługiwać? Można zrobić jakieś okno, dać na fullscreen na drugim monitorze i DirectDraw na nim używać, ale wtedy chyba nie ma sprzętowego przyspieszania, bo współpracuje z GDI systemu. Prawda to czy nie?

OpenGL raczej odpada.

0

Robiłem kiedyś program, który obsługuje dwa monitory. Z fullscren to jest problem, ale doskonale zastępują dwa okna stylu WS_POPUP. Pozycję x okna drugiego monitora ustawiasz na równą pikseli pierwszego. Dalej powinieneś już bez problemu sobie dać radę, tylko pamiętaj by sprawdzać czy drugi monitor jest ustawiony jako niezależny lub poszerzony pulpit windows. Enumerator urządzeń dx powie ci jak to sprawdzić. Wszystko jest w SDK DX.

0

Tak, wiem, że można sobie to załatwić oknami na całą przestrzeń monitora, ale wtedy traci się akcelerację sprzętową. I pytanie czy pomimo tej straty, zyskam na prędkości używając DX w porównaniu z tym co robię do tej pory.

1 użytkowników online, w tym zalogowanych: 0, gości: 1