Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Anonymous

unregistriert

1

03.09.2003, 02:16

Fensterrahmen & Vollbildmodus

:huhu: Hey Leute,,,

ich hätte da nal eine kleine Frage, mein Projekt läuft im Vollbildmodus und trozdem wird manchmal kurzzeitig vor dem eigentlichen Start der Rahmen (wie im Windowed Mode) angezeigt.

Kann man das nicht ganz unterdrücken ?

Ich dachte immer Vollbild Modus wäre Vollbild Modus und im Endprudukt wäre so ein Effekt sehr häßlich.

Oder habe ich was übersehen ?

Zum Detail :
Als Basis dient das Galactica Dem von David welches ich nun komplett für die Test Plattform (Testzwecke) nodifiziert habe. Und zwar habe ich eine Prüfung auf das Vorhanden sein einer Config Datei eingebaut, so das beim Start zuerst versucht wird diese Config Datei zu laden, falls sie existiert, andernfalls erscheint der Config Dialog der Engine. Die Config Datei wurde mit dem Config Dialog der Engine erstellt und gespeichert. Dieses Prinzip funktioniert sehr gut, ich habe die Datei mal umbenannt, dann erscheint eine Warnmeldung (MessageBOX) das die Config Datei nicht geladen werden konnte, zusätzlich wird als Warnung die Info in die Log geschrieben und anschließend erscheint der Engine Config Dialog und man kann wie gewohnt starten. Ist die Datei vorhanden startet das Programm gleich durch mit den Einstellungen aus der Datei und trägt zusätzlich den Erfolg des Ladens in die Log ein. Das Problem v.o. tritt jedoch in allen Fällen auf. :crying:
Der erfolgreiche Ladevorgang der Config Datei:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
SM3D Game Development
DiReX 3D Game Engine

 
INFO: DiReX-Engine wird initialisiert... (DiReX.cpp, Zeile 88, Funktion drxInit) 
 
INFO: Initialisierung komplett! (DiReX.cpp, Zeile 108, Funktion drxInit) 
 
INFO: SM3D Logo wird angezeigt... (DiReX.cpp, Zeile 120, Funktion drxShowSplashScreens) 
 
INFO: DiReX Logo wird angezeigt... (DiReX.cpp, Zeile 125, Funktion drxShowSplashScreens) 
 
INFO: Die Config Datei : Config.drxc wurde gefunden und geladen ! (Galactica.cpp, Zeile 104, Funktion CGalactica::Init) 
 
INFO: Die Netzwerk-Komponente wurde initialisiert. (drxNetwork.cpp, Zeile 56, Funktion drxNetwork::Init) 
 
INFO: Die Direct3D-Komponente wird initialisiert... (drxDirect3D.cpp, Zeile 174, Funktion drxDirect3D::Init) 
 
INFO: Erstellen des Fensters... (drxDirect3D.cpp, Zeile 181, Funktion drxDirect3D::Init) 
 
INFO: Initialisierung von Direct3D... (drxDirect3D.cpp, Zeile 213, Funktion drxDirect3D::Init) 
 
INFO: Die Initialisierung der Direct3D-Komponente ist abgeschlossen! (drxDirect3D.cpp, Zeile 278, Funktion drxDirect3D::Init) 
 
INFO: Texturmanager wurde initialisiert! (drxTextureManager.cpp, Zeile 43, Funktion drxTextureManager::Init) 
 
INFO: Die DirectInput-Komponente wird initialisiert... (drxDirectInput.cpp, Zeile 699, Funktion drxDirectInput::Init) 
 
INFO: DirectInput-Schnittstelle wird generiert... (drxDirectInput.cpp, Zeile 717, Funktion drxDirectInput::Init) 
 
INFO: Initialisierung der Maus komplett! (drxDirectInput.cpp, Zeile 671, Funktion EnumDevicesCallback) 
 
INFO: Initialisierung der Tastatur komplett! (drxDirectInput.cpp, Zeile 665, Funktion EnumDevicesCallback) 
 
INFO: Die DirectInput-Komponente wurde erfolgreich initialisiert! (drxDirectInput.cpp, Zeile 751, Funktion drxDirectInput::Init) 
 
INFO: Die DirectSound-Komponente wird initialisiert... (drxDirectSound.cpp, Zeile 47, Funktion drxDirectSound::Init) 
 
INFO: DirectSound-Schnittstelle wird generiert... (drxDirectSound.cpp, Zeile 58, Funktion drxDirectSound::Init) 
 
INFO: Generiere primären Soundpuffer... (drxDirectSound.cpp, Zeile 69, Funktion drxDirectSound::Init) 
 
INFO: Initialisierung des 3D-Sounds... (drxDirectSound.cpp, Zeile 108, Funktion drxDirectSound::Init) 
 
INFO: Die DirectSound-Komponente wurde erfolgreich initialisiert! (drxDirectSound.cpp, Zeile 113, Funktion drxDirectSound::Init) 
 
INFO: Nachrichtenschleife wird betreten... (DiReX.cpp, Zeile 207, Funktion drxDoMessageLoop) 
 
INFO: Nachrichtenschleife beendet! (DiReX.cpp, Zeile 272, Funktion drxDoMessageLoop) 
 
INFO: Die Direct3D-Komponente wurde heruntergefahren. (drxDirect3D.cpp, Zeile 310, Funktion drxDirect3D::Exit) 
 
INFO: Die DirectInput-Komponente wurde heruntergefahren. (drxDirectInput.cpp, Zeile 781, Funktion drxDirectInput::Exit) 
 
INFO: Die DirectSound-Komponente wurde heruntergefahren. (drxDirectSound.cpp, Zeile 130, Funktion drxDirectSound::Exit) 
 
INFO: Der Texturmanager wurde heruntergefahren. (drxTextureManager.cpp, Zeile 59, Funktion drxTextureManager::Exit) 
 
INFO: Die Netzwerk-Komponente wurde heruntergefahren. (drxNetwork.cpp, Zeile 70, Funktion drxNetwork::Exit) 
 
INFO: DiReX-Engine wird heruntergefahren... (DiReX.cpp, Zeile 138, Funktion drxExit) 
 
INFO: Alle Speicherbereiche freigegeben! (drxMemory.cpp, Zeile 118, Funktion drxMemExit) 
 
INFO: Herunterfahren abgeschlossen! (DiReX.cpp, Zeile 178, Funktion drxExit)


Der erfolgreiche Ladevorgang der Config Datei:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
SM3D Game Development
DiReX 3D Game Engine

 
INFO: DiReX-Engine wird initialisiert... (DiReX.cpp, Zeile 88, Funktion drxInit) 
 
INFO: Initialisierung komplett! (DiReX.cpp, Zeile 108, Funktion drxInit) 
 
INFO: SM3D Logo wird angezeigt... (DiReX.cpp, Zeile 120, Funktion drxShowSplashScreens) 
 
INFO: DiReX Logo wird angezeigt... (DiReX.cpp, Zeile 125, Funktion drxShowSplashScreens) 
 
WARNUNG: Fehler beim Laden der Config Datei : Config.drxc ! (Galactica.cpp, Zeile 111, Funktion CGalactica::Init) 
 
INFO: Der Konfigurationsdialog wird aufgerufen... (drxConfig.cpp, Zeile 1044, Funktion drxDoConfigDialog) 
 
INFO: Die Netzwerk-Komponente wurde initialisiert. (drxNetwork.cpp, Zeile 56, Funktion drxNetwork::Init) 
 
INFO: Die Direct3D-Komponente wird initialisiert... (drxDirect3D.cpp, Zeile 174, Funktion drxDirect3D::Init) 
 
INFO: Erstellen des Fensters... (drxDirect3D.cpp, Zeile 181, Funktion drxDirect3D::Init) 
 
INFO: Initialisierung von Direct3D... (drxDirect3D.cpp, Zeile 213, Funktion drxDirect3D::Init) 
 
INFO: Die Initialisierung der Direct3D-Komponente ist abgeschlossen! (drxDirect3D.cpp, Zeile 278, Funktion drxDirect3D::Init) 
 
INFO: Texturmanager wurde initialisiert! (drxTextureManager.cpp, Zeile 43, Funktion drxTextureManager::Init) 
 
INFO: Die DirectInput-Komponente wird initialisiert... (drxDirectInput.cpp, Zeile 699, Funktion drxDirectInput::Init) 
 
INFO: DirectInput-Schnittstelle wird generiert... (drxDirectInput.cpp, Zeile 717, Funktion drxDirectInput::Init) 
 
INFO: Initialisierung der Maus komplett! (drxDirectInput.cpp, Zeile 671, Funktion EnumDevicesCallback) 
 
INFO: Initialisierung der Tastatur komplett! (drxDirectInput.cpp, Zeile 665, Funktion EnumDevicesCallback) 
 
INFO: Die DirectInput-Komponente wurde erfolgreich initialisiert! (drxDirectInput.cpp, Zeile 751, Funktion drxDirectInput::Init) 
 
INFO: Die DirectSound-Komponente wird initialisiert... (drxDirectSound.cpp, Zeile 47, Funktion drxDirectSound::Init) 
 
INFO: DirectSound-Schnittstelle wird generiert... (drxDirectSound.cpp, Zeile 58, Funktion drxDirectSound::Init) 
 
INFO: Generiere primären Soundpuffer... (drxDirectSound.cpp, Zeile 69, Funktion drxDirectSound::Init) 
 
INFO: Initialisierung des 3D-Sounds... (drxDirectSound.cpp, Zeile 108, Funktion drxDirectSound::Init) 
 
INFO: Die DirectSound-Komponente wurde erfolgreich initialisiert! (drxDirectSound.cpp, Zeile 113, Funktion drxDirectSound::Init) 
 
INFO: Nachrichtenschleife wird betreten... (DiReX.cpp, Zeile 207, Funktion drxDoMessageLoop) 
 
INFO: Nachrichtenschleife beendet! (DiReX.cpp, Zeile 272, Funktion drxDoMessageLoop) 
 
INFO: Die Direct3D-Komponente wurde heruntergefahren. (drxDirect3D.cpp, Zeile 310, Funktion drxDirect3D::Exit) 
 
INFO: Die DirectInput-Komponente wurde heruntergefahren. (drxDirectInput.cpp, Zeile 781, Funktion drxDirectInput::Exit) 
 
INFO: Die DirectSound-Komponente wurde heruntergefahren. (drxDirectSound.cpp, Zeile 130, Funktion drxDirectSound::Exit) 
 
INFO: Der Texturmanager wurde heruntergefahren. (drxTextureManager.cpp, Zeile 59, Funktion drxTextureManager::Exit) 
 
INFO: Die Netzwerk-Komponente wurde heruntergefahren. (drxNetwork.cpp, Zeile 70, Funktion drxNetwork::Exit) 
 
INFO: DiReX-Engine wird heruntergefahren... (DiReX.cpp, Zeile 138, Funktion drxExit) 
 
INFO: Alle Speicherbereiche freigegeben! (drxMemory.cpp, Zeile 118, Funktion drxMemExit) 
 
INFO: Herunterfahren abgeschlossen! (DiReX.cpp, Zeile 178, Funktion drxExit)


Wer interressiert ist an dem Code für die Config Story mit der Datei kann dies mir gerne kunt tun ;) Ist besonders für Anfänger interressant, besonders dann auch wenn man das Game oft startet und nicht jedesmal bock hat den Config Dialog zu verarbeiten. 8) :jojo:

2

03.09.2003, 11:45

Zitat

ich hätte da nal eine kleine Frage, mein Projekt läuft im Vollbildmodus und trozdem wird manchmal kurzzeitig vor dem eigentlichen Start der Rahmen (wie im Windowed Mode) angezeigt.

Der Vollbildmodus ist im Prinzip nach auch nur ein Fenster für Windows. Mit dem Unterschied, das man sich um alles selber Kümmern muss (Refresh, Resolution etc. ) Bevor man aber ein Vollbildfenster erzeugen kann, muss man überhaupt ein Fenster haben. Das ist das Fenster das dann immer kurz angezeigt wird.
Wichtig! Ich übernehme keinerlei Verantwortung für eventl. Datenverlust oder Schäden am Rechner ;D

Anonymous

unregistriert

3

03.09.2003, 12:22

Danke DragonMaster,,,

das ist mir Klar, aber wie machen das denn die anderen Spiele Entwickler, dort sieht man auch den Rahmen nicht ?!?

Naja, Okay ich werde mich da mal schlau machen und ein wenig experimentieren.

DarthB

Treue Seele

Beiträge: 265

Beruf: Schüler

  • Private Nachricht senden

4

03.09.2003, 13:00

Es könnte an deinem Windowstyles liegen versuch mal bei CreateWindow nur diesen Style anzugeben falls er sofort in den Vollbildmodus wechseln soll:
WS_POPUPWINDOW

Ciao DarthB :huhu:

Anonymous

unregistriert

5

03.09.2003, 17:44

Danke,,,

werde mir das mal anschauen.

Anonymous

unregistriert

6

03.09.2003, 18:09

@DarthB,,,

:) ;) :-D ;D :huhu: :roll: :jojo: 8)

Thanks das hat geklappt, heute bist Du mein Held !*g*!

Anonymous

unregistriert

7

03.09.2003, 18:15

Zitat von »"DarthB"«

Es könnte an deinem Windowstyles liegen versuch mal bei CreateWindow nur diesen Style anzugeben falls er sofort in den Vollbildmodus wechseln soll:
WS_POPUPWINDOW

Ciao DarthB :huhu:

Wir benutzen eh keinen Fenstermodus, sondern nur den Vollbildmodus *g*, von daher ist das so voll OK. :jojo:

DarthB

Treue Seele

Beiträge: 265

Beruf: Schüler

  • Private Nachricht senden

8

03.09.2003, 20:41

Immer wieder gern! ;D

Ciao DarthB :huhu:

Anonymous

unregistriert

9

03.09.2003, 20:54

@DarthB,,,

jo es ist genau der Effekt herausgekommen den wir haben wollten *g*, der dumme Rahmen ist weg ! Super, danke für den Tipp. :wirbel:

Werbeanzeige