Vollbild und Taskswitch

Anfängerfragen zum Programmieren mit PureBasic.
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Re: Vollbild und Taskswitch

Beitrag von Kaeru Gaman »

das ist ne gute Frage, ich hab da keine offiziellen Informationen aus Softwareschmieden...

ob von der DX-API oder openGL her Objekte neu geladen werden müssen, wenn man einen Screen schließt, weiß ich nicht,
aber einige Entwicklungsumgebungen scheinen so eine Einschränkung zu haben,
weil etliche Games so aufgebaut sind, dass man merkt, dass sie sich damit herumschlagen.

Eine weitere Möglichkeit wäre, die Objekte als anderen Typ in den Hauptspeicher zu laden, und von dort aus nur diejenigen in die Grafikkarte zu laden, die gerade aktuell sind.
dieser Vorgang wäre dann sowieso dynamisch, insofern wäre es unwichtig, ob man zwischendrin den Screen zu und auf macht.

Etliche Spiele sind auch so gestrickt, dass sie eine änderung der Auflösung nur per Neustart akzeptieren, die haben die Problematik sozusagen weggeschoben.

Und dann gibts noch die, die die Menüs in einer festen Auflösung anzeigen, und das Spielgeschehen in einer anderen, nur im Hauptmenü wechselbaren.
die haben aber auch lange Ladevorgänge bevor das Game losgeht.

PS:
natürlich gibts auch ganz pervertierte Lösungsansätze, wie z.b. bei Civ3, das anscheinend gar keinen Screen verwendet sondern auf den Desktophintergrund malt, dort funktioniert Alt-Tab überhaupt nicht...
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
hörmi
Beiträge: 106
Registriert: 10.07.2007 15:20
Kontaktdaten:

Re: Vollbild und Taskswitch

Beitrag von hörmi »

Also ich hab jetzt eine Lösung für das Problem die einigermaßen Zufriedenstellend sein sollte
"DirectX7" als Subsystem nutzen, also bei mir (WinXP, Pb 4.40) funkioniert es dann

und dann noch kurz ein Tipp
ich würde auf jeden Fall noch ein Delay einbauen. Ist CPU schonender wenn gerade der Screen nicht offen ist

Code: Alles auswählen

If IsScreenActive()
;Hier Programm
Else
Delay(10)
EndIf
BildBild Bild
Antworten