Pixelfarben ermitteln



  • Hallo,
    ich bin gerade auf der Suche nach einem Weg, die Pixelfarben von bestimmten Coordinaten zu ermitteln, das klappt auch alles ganz gut mit GetPixel. Sobald ich nun aber einen Pixel aus ein Fenster bekommen möchte, das DirectX benutzt, bekomme ich keine Werte mehr. Habe schon ziemlich viel gesucht und gelesen das ich per GDI keine DirectX werte ermitteln kann, kennt jemand eine Alternative mit der ich die Farbe einer bestimmten Coordinate ermitteln kann, wenn das Programm Directx benutzt ?
    Würde mich über Hilfe freuen



  • GetPixel (GetDC(0),...), aber vorher die koordinaten der 'client area' des fensters ermitteln? könnte vielleicht gehen.
    🙂



  • Das geht ja leider nicht, ich bekomme dann immer 0 0 0 als Farbwert, obwohl die Werte anders sein müssen! Auch wenn das DC das Handle vom Zielfenster besitzt 😕



  • ^^deswegen ja: GetDC(0) (screen-DC, oder sowas ähnliches), nicht den HDC vom fenster, der womöglich noch nicht mal existiert. bei mir ging das immer. kann natürlich sein, dass es nicht mit jeder grafikkarte und treiber funzt.
    🙂



  • Also wenn ich GetDC(0) verwende, dann zeigt er mir alle Pixelfarben an, außer halt die im Fenster mit Directx. Wähle ich nun das Fenster mit Directx aus und teste es nun, zeigt er mir überalle 0 0 0 an, selbst außerhalb des Fensters.





  • also ich kann mich nur anschließen, auch bei mir hat GetPixel bei bisher jeder DX Anwendung funktioniert.

    greetz KN4CK3R


Log in to reply