|
JLI Spieleprogrammierung
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
OLiver Super JLI'ler
Alter: 33 Anmeldedatum: 29.06.2003 Beiträge: 306 Wohnort: Jena Medaillen: Keine
|
Verfasst am: 07.08.2005, 12:35 Titel: DirectDraw zeichnet über andere Fenster |
|
|
Hi,
Mal wieder was zu DD.
Ich benutze DirectDraw im WindowMode. Das klappt auch ganz gut, die Zeichenfunktionen sind nun in WM_PAINT. Wenn ein anderes Fenster drüber ist, zeichnet sich das DD Fenster (und der Inhalt) auch ganz lieb darunter, wenn ich das darüberliegende Fenster allerdings über das DD Fenster bewege, bekommt es die Zeichenoperationen mit ab? Woran könnte das liegen? _________________ http://www.sieder25.org/ (Siedler 2 - Remake) |
|
Nach oben |
|
|
Dr. Best Senior JLI'ler
Alter: 34 Anmeldedatum: 17.06.2004 Beiträge: 269 Wohnort: Köln Medaillen: Keine
|
Verfasst am: 08.08.2005, 02:43 Titel: |
|
|
Du musst Clipper aktivieren.
Kurze Erklärung:
Clipper sind Surfaces in die jedes Fenster den Bereich einträgt der "ihm gehört". Dann überprüfen die anderen Fenster diese Clipper und rendern nur dahin wo kein anderes Fenster ist.
Ich hab allerdings schon ewig nicht mehr mit DirectDraw gearbeitet und weiß daher nicht mehr wie da genau die Befehle lauten. Das musst du mal in deiner Lektüre, der SDK documentation oder im Internet nachschauen. _________________
Ich bin da, wer noch? |
|
Nach oben |
|
|
OLiver Super JLI'ler
Alter: 33 Anmeldedatum: 29.06.2003 Beiträge: 306 Wohnort: Jena Medaillen: Keine
|
Verfasst am: 08.08.2005, 07:08 Titel: |
|
|
Ich dachte immer Clipper schneiden nur die Grafiken ab, die übers Fenster rausgemalt werden, aber es klappt, thx. _________________ http://www.sieder25.org/ (Siedler 2 - Remake) |
|
Nach oben |
|
|
AFE-GmdG JLI MVP
Alter: 45 Anmeldedatum: 19.07.2002 Beiträge: 1374 Wohnort: Irgendwo im Universum... Medaillen: Keine
|
Verfasst am: 08.08.2005, 13:03 Titel: |
|
|
Clipper schneiden alle Grafikbereiche ab, die nicht zum aktuellen Fenster gehören, also auch Bereiche, die derzeit von anderen Fenstern überlagert werden.. _________________
CPP: | float o=0.075,h=1.5,T,r,O,l,I;int _,L=80,s=3200;main(){for(;s%L||
(h-=o,T= -2),s;4 -(r=O*O)<(l=I*I)|++ _==L&&write(1,(--s%L?_<(L)?--_
%6:6:7)+\"World! \\n\",1)&&(O=I=l=_=r=0,T+=o /2))O=I*2*O+h,I=l+T-r;} |
|
|
Nach oben |
|
|
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
Powered by phpBB © 2001, 2005 phpBB Group Deutsche Übersetzung von phpBB.de
|