Desktop verzerren mit DirectX
-
Wie hast du denn die Verzerrung auf deinem Bild da gemacht?
MB_SLS schrieb:
Was denkst du wie das vom Rechenaufwand her ist? Ziehl ist eigentlich ein Video mit 1920x1080 Pixel zu verzerren und dabei ca. 40Frames pro Sekunde noch zu erreichen
Da mach dir mal keine Sorgen. Das richtige Problem wird eher 40 Screenshots pro Sekunde zu erzeugen, das Verzerren an sich wird für eine moderne Grafikkarte dagegen nichtmal ein Grund sein den Mittagsschlaf zu unterbrechen
-
Die Verzerrung ist leider nicht von mir.
Ok aber mit der LookUpTable lieg ich doch dann da gar nicht so falsch oder
geht das anders bin eigentlich Directx newbie
-
Naja, wär ne Möglichkeit. Man könnte eine Lookuptable in eine zweite Textur packen...
-
Irgendwoher muss der PixelShader ja wissen wie er die Textur verzerren soll
-
Klar. Aber wenn dus auf ein Mesh packen würdest, dann müsste dein Programm auch irgendwoher wissen, wie die Vertices platziert werden sollen, das Problem hat mit dem PixelShader an sicht nix zu tun
Ja nachdem was genau du dir unter dieser "Verzerrung" vorstellst, wird natürlich entweder die Mesh oder die PixelShader Variante von Vorteil sein...
-
Die Verzerrung ist eigentlich nichts anderes wie Pixel verschieben. Das mit dem Mesh hab ich mir auch angeschaut aber das hab ich irendwie nicht ganz kappiert. Und zwar brauch ich da ja wieder ein extra Programm richtig so? Oder geht das anderst
-
Wenn du Direct3D verwenden willst, dann solltest du jetzt zuerst sowieso einmal die Grundlagen lernen. Dann klären sich all diese Fragen auch von selbst
-
Hast du mir eventuell ein gutes Tutorial an der Hand womit ich einen schnellen Einsti in Direct3d finde
-
Würdest du den Code für einen Pixel Shader in einem Editorfile schreiben?
Ich hab mir mal ein solches File erzeugt und damit n paar Farbeffekte auf die Textur angewendet. Ich hänge jetzt aber fest weil ich eben einzelne Pixel bearbeiten will und das bekomme ích nicht hin
-
Meinst du ein Effectfile? Wo genau scheitert's?
-
Es handelt sich um ein PS File. In diesem PS- File kann ich dem Pixel Shader ja z.B sagen mach das Bild schwarz weiß oder sonst irendwelche Effekte. Jetzt will ich hier aber gezielt ein Pixel ansprechen Ich hoffe du verstehst was ich will
-
Ich versteh was du willst. Aber leider wirst du dein Ziel nicht erreichen ohne anständig Direct3D zu lernen.
Also nochmal: Lern zuerst Direct3D und zwar von Grund auf, dann erübrigen sich auch all deine Fragen...
-
Bin ich damit überhaupt auf dem richtigen Weg?
Hätte nicht gedacht das sich das ganze so komplex gestaltet
-
-
MB_SLS schrieb:
Bin ich damit überhaupt auf dem richtigen Weg?
Das hängt davon ab. Wenn du in Echtzeit riesige Bilddaten verzerren willst, dann bist du auf jeden Fall am richtigen Weg.
Aber wie gesagt: Das Verzerren ist bei deiner Anwendung wohl auch nicht das wirkliche Problem. Ich würd mir an deiner Stelle zuerst einmal äußerst genau überlegen, wo du deine Bilddaten eigentlich genau herbekommen willst. 40 Screenshots pro Sekunde machen ist einfacher gesagt als getan. Und wo genau soll das verzerrte Bild eigentlich ausgegeben werden? Soll da eine Vollbildanwendung am selben Rechner laufen, währen daneben munter am Dekstop gearbeitet wird!?