Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Fr Jul 18, 2025 00:19

Foren-Übersicht » Programmierung » Einsteiger-Fragen
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 16 Beiträge ]  Gehe zu Seite 1, 2  Nächste
Autor Nachricht
 Betreff des Beitrags: auf desktop zeichnen?
BeitragVerfasst: Mi Feb 22, 2006 22:55 
Offline
DGL Member

Registriert: Fr Aug 12, 2005 21:35
Beiträge: 42
Hi

mal ne frage wie kann ich direkt auf den desktop zeichnen mit OpenGL?

Also ich habe mir jetzt mit GetDC() und GetDesktopWindow() das DC des dektop´s geholt und dann halt mit wglCreateContext() versucht darauf nen Contexz zur erstellen. doch bekomme ich da als rückgabe immer 0.

Kenn einer von euch denn nen weg wie ich direkt auf den desktop HINTER die icon´s zeichnen kann?

Danke,
Gruß Nico


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Feb 22, 2006 23:58 
Offline
DGL Member
Benutzeravatar

Registriert: Di Sep 06, 2005 18:34
Beiträge: 362
Wohnort: Hamburg
Hi ...

Du musst auch nen OpenGL-fähiges Pixelformat an den DC binden. Weiss aber nicht, ob das so ohne weiteres möglich ist.
Ich schätze wenn das möglich ist wird alles andre vom Desktop verschwinden...

Gruß
Shai

[edit]
Hab grad nochmal bissl rumgesucht... interessiert mich irgendwie auch ;)

Sieht allerdings schlecht aus. Glaube Windows macht dir da nen Strich durch die Rechnung.
Und zwar ist es nicht erlaubt das PixelFormat eines bestehenden Fensters zu ändern.
aus der msdn:
Zitat:
Setting the pixel format of a window more than once can lead to significant complications for the Window Manager and for multithread applications, so it is not allowed. An application can only set the pixel format of a window one time. Once a window's pixel format is set, it cannot be changed.

link:
http://msdn.microsoft.com/library/defau ... r_3q5w.asp

Und wenn ich mich nicht irre kann man ohne entsprechendes PixelFormat auch kein OpenGL benutzen ...
[/edit]

_________________
Der Mensch hat neben dem Trieb der Fortpflanzung und dem zu essen und zu trinken zwei Leidenschaften: Krach zu machen und nicht zuzuhören. (Kurt Tucholsky)
Schwabbeldiwapp, hier kommt die Grütze. (Der Quästor)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Feb 23, 2006 01:01 
Offline
Guitar Hero
Benutzeravatar

Registriert: Do Sep 25, 2003 15:56
Beiträge: 7810
Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Aber vielleicht kommt man an das betsehende ran. (Also nur ne Vermutung)

_________________
Blog: kevin-fleischer.de und fbaingermany.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Feb 23, 2006 10:56 
Offline
DGL Member

Registriert: Fr Aug 12, 2005 21:35
Beiträge: 42
Also das scheint so wirklich nicht möglich zu sein.

Ich habe durch nen bekannten jetzt aber erstmal was gefunden.
Schaut mal hier http://www.greenfoxsoft.com/sdk.htm

Mal sehen ob icvh damit was anfangen kann.

Gruß,
Nico


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Feb 23, 2006 16:57 
Offline
DGL Member
Benutzeravatar

Registriert: Di Sep 06, 2005 18:34
Beiträge: 362
Wohnort: Hamburg
Hi ...

Hab da noch ne Überlegung, die aber irgendwie hässlich ist ;)
Und zwar könnte man doch OpenGL in ein unsichtbares Fenster rendern lassen (einfach nur den Buffer füllen), dann den Buffer auslesen und über die normalen Zeichenfunktionen auf den Desktop ausgeben ... das müsste doch theoretisch möglich sein oder ?

Gruß
Shai

_________________
Der Mensch hat neben dem Trieb der Fortpflanzung und dem zu essen und zu trinken zwei Leidenschaften: Krach zu machen und nicht zuzuhören. (Kurt Tucholsky)
Schwabbeldiwapp, hier kommt die Grütze. (Der Quästor)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Feb 23, 2006 17:26 
Offline
Forenkatze
Benutzeravatar

Registriert: Mi Okt 22, 2003 18:30
Beiträge: 1945
Wohnort: Närnberch
Programmiersprache: Scala, Java, C*
Seid ihr sicher, dass ihr nicht eher nach Overlay sucht? Da wird der Desktophintergrund durch eine Farbe ersetzt und dann kannst du jeden so eingefärbten Pixel zurendern ;) Jedenfalls macht Winamp2 das so bei dem AVS. Dort kann man das nämlich auswählen. Und einige DvD-Player unterstützen das ebenfalls.

_________________
"Für kein Tier wird so viel gearbeitet wie für die Katz'."


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Feb 23, 2006 19:47 
Offline
DGL Member

Registriert: Fr Aug 12, 2005 21:35
Beiträge: 42
Frase hat geschrieben:
Seid ihr sicher, dass ihr nicht eher nach Overlay sucht? Da wird der Desktophintergrund durch eine Farbe ersetzt und dann kannst du jeden so eingefärbten Pixel zurendern ;) Jedenfalls macht Winamp2 das so bei dem AVS. Dort kann man das nämlich auswählen. Und einige DvD-Player unterstützen das ebenfalls.


Hm klingt gut und ich hatte auch schon an Winamp gedacht doch benutzen die ne dll namens vms_desktop.dll doch habe ich dafür noch keine erklärung der funktionen gefunden.

Kannste mal genauer beschreiben wie du das meinst?

Danke dir,
Nico


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Feb 23, 2006 21:51 
Offline
Forenkatze
Benutzeravatar

Registriert: Mi Okt 22, 2003 18:30
Beiträge: 1945
Wohnort: Närnberch
Programmiersprache: Scala, Java, C*
hab kein Winamp 2 mehr auf dem Rechner drauf, von daher... ;)

Aber dort konnte man im AVS (Advanced Visualisation dingsbums) einstellen, dass der Desktophintergrund durch das AVS ersetzt werden soll. Denke mal, das war Hardwarebeschleunigt, vermutlich über DirectDraw, denn es lief flüssig wie immer.

Ich hatte auch mal nen DvD-Player auf der Platte, der das auch konnte. Name ist mir leider entfallen. Vielleicht finde ich den ja mal wieder per Zufall ;)

Jedenfalls konnte man bei Winamp2 im AVS auch ne Farbe auswählen. Hat man da eine gebräuchlichere Farbe genommen, wurde nichtnur der Desktop ersetzt, sondern z.B. das Startmenü ^^ und alle Buttons etc.
Ebenfalls lustig in dem Zusammenhang: In einem Malprogramm deines Vertrauens mit der entsprechenden Farbbe drauflos malen ;) Ist ziemlich funny ;)

_________________
"Für kein Tier wird so viel gearbeitet wie für die Katz'."


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Feb 24, 2006 10:45 
Offline
DGL Member

Registriert: Fr Aug 12, 2005 21:35
Beiträge: 42
Also ich habe mir das von Winamp und dem Visualisazions-Plugin MilkDrop noch mal angeschaut.
Wie gesagt sie nutzen dort ne dll namens vms_desktop.dll und mir scheint so als würden sie auf den Desktop nen "eigenen Desktop" legen und nur die icons und deren Positionen von Windows auslesen und auf dem eigenen Desktop wieder darstellen. bin mir aber nich ganz sicher.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Feb 24, 2006 14:24 
Offline
Forenkatze
Benutzeravatar

Registriert: Mi Okt 22, 2003 18:30
Beiträge: 1945
Wohnort: Närnberch
Programmiersprache: Scala, Java, C*
Hab grad entdeckt, dass Winamp 5 das AVS auch noch an Board hat ;)
Unter den Visualization PlugIns mal "Advanced Visualization Studio" auswählen. Dann dort auf Settings -> Display. Oben rechts ist dann ne Box namens Overlay ;)

_________________
"Für kein Tier wird so viel gearbeitet wie für die Katz'."


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Feb 24, 2006 15:10 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 05, 2002 10:35
Beiträge: 4234
Wohnort: Dortmund
Also vor einer ganze halben Ewigkeit hatte ich mal 2 Programme die genau so etwas gemacht haben. Das eine hat ein Rauschen mittels Overlay auf dem Desktop dargestellt. Dabei wurden die Icons nicht über sondern untermalt. Rauschen deswegen weil die Quellen dabei waren. Mit viel Glück habe ich die Quellen auf meiner gut unsortierten und nie aufgeräumten Festplatte noch. Da kann ich aber erst frühstens heute abend mal schauen. Wenn heute Abend nicht mehr, dann irgendwann im Laufe des Wochenendes. Aber versprechen kann ich nichts. Aber falls ich sie finden sollte werden die auch nicht jedem gefallen, da die C++ sind.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Feb 24, 2006 15:23 
Offline
DGL Member

Registriert: Fr Aug 12, 2005 21:35
Beiträge: 42
@Lossy eX

Also ich wäre dir super dankbar wenn du was finden würdest.
C++ ist für mich kein prob komme damit recht gut zurecht ;)

Gruß,
Nico


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Feb 24, 2006 18:31 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 05, 2002 10:35
Beiträge: 4234
Wohnort: Dortmund
Scheibenkleister. Also ich habe es gefunden aber mal kurz über den Code geschaut zeigt, dass die das mit DirectX machen.

Sollte aber eigentlich mit OpenGL auch irgendwie gehen. Hoffe es hilft dennoch ein bisschen.


Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Feb 26, 2006 18:37 
Offline
DGL Member

Registriert: Fr Aug 12, 2005 21:35
Beiträge: 42
Hm also ich habe jetzt noch mal mit OpenGL versucht und das prob ist das ich mit SetPixelFormat() kein Pixelformat an das Desktopwindow setzen kann. Ich bekomme als return auch immer 0 zurück :(

Hat noch jemand ne idee wie man das mit OpenGL machen kann, denn DirectX nüzt mir nich wirklich was.

Danke,
Nico


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Feb 27, 2006 16:17 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Nov 13, 2004 11:00
Beiträge: 229
Wohnort: Steinhude
was ich zu ogl gefunden hab ist dass hier: link
vll. hilfts ja


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 16 Beiträge ]  Gehe zu Seite 1, 2  Nächste
Foren-Übersicht » Programmierung » Einsteiger-Fragen


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 4 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.009s | 14 Queries | GZIP : On ]