Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
CorDharel Junior JLI'ler

Anmeldedatum: 15.10.2002 Beiträge: 73 Wohnort: Winterthur, Zürich, CH Medaillen: Keine
|
Verfasst am: 21.09.2003, 02:40 Titel: Richtige Fenstergrösse (Kapitel 19) |
|
|
Hi all!
Ich bin bis zur Ausgabe des Fensters gekommen. Jetzt habe ich eine Frage: Das Fenster sollte ja 800*600 Pixel sein, wie hier geschrieben:
Code: | PParams.BackBufferWidth = 800;
PParams.BackBufferHeight = 600; |
Aber es nimmt die Zahlen von CreateWindowEx:
Code: | return CreateWindowEx(NULL, // Keine erweiterten Stile nutzen
"WindowClass", // Klassenname
"DirectXGraphics", // Fenstertitel
WS_OVERLAPPEDWINDOW | // Fenster
WS_VISIBLE, // Eigenschaften
100, 100, 400, 300, <<< |
Wie mach ich dass es die richtige Grösse anzeigt?
Thx4Answers  _________________ Greetz CorDharel |
|
Nach oben |
|
 |
philipp_boeing JLI'ler

Alter: 35 Anmeldedatum: 26.07.2003 Beiträge: 188
Medaillen: Keine
|
Verfasst am: 21.09.2003, 09:04 Titel: |
|
|
Ich glaube die Werte sollten gleich sein...
Mach es doch mal so wie im Buch und mach in irgendeinen Headerdatei (z.B. Global.h) zwei Konstanten SCR_HEIGHT und SCR_WIDTH. Diese Headerdatei musst du dann in deiner Haupt .cpp Datei einbinden (main.cpp) und dort wo die das mit 800*600 festlegst, bei PParams. Dann gibst du statt deinen Zahlen einfach SCR_HEIGHT und SCR_WIDTH an, also bei CreateWindowEx und bei den PParams.
Du kannst es auch mal testen, in dem du die CreateWindowEx Zahlen einfach an auch auf 800*600 stellst
MfG
Philipp Böing |
|
Nach oben |
|
 |
CorDharel Junior JLI'ler

Anmeldedatum: 15.10.2002 Beiträge: 73 Wohnort: Winterthur, Zürich, CH Medaillen: Keine
|
Verfasst am: 21.09.2003, 13:35 Titel: |
|
|
Jo das sollte schon gehen.
Warum kann man dann
Code: | PParams.BackBufferWidth = 800;
PParams.BackBufferHeight = 600; |
Nicht einfach weglassen wenn es ja oben schon definiert ist?
Oder ist GrösseEinesFensters != GrösseBackBuffer? Bzw. kann man auch mehrere BackBuffers erstellen oder so irgendwas? _________________ Greetz CorDharel |
|
Nach oben |
|
 |
philipp_boeing JLI'ler

Alter: 35 Anmeldedatum: 26.07.2003 Beiträge: 188
Medaillen: Keine
|
Verfasst am: 21.09.2003, 14:29 Titel: |
|
|
ja ein weiterer Buffer ist zum beispiel der Z-Buffer ( bei 3D ) |
|
Nach oben |
|
 |
Cyianor Super JLI'ler

Anmeldedatum: 23.12.2002 Beiträge: 452
Medaillen: Keine
|
Verfasst am: 21.09.2003, 18:47 Titel: |
|
|
Die Werte von d3d beschreiben die Größe des BackBuffers. Im Fenstermodus verwendet Windows zwar die Fensterkoordinaten, aber theoretisch könnte dein Programm auf einen BackBuffer von 800*600 zugreifen. Allerdings wird alles was sich ausserhalb des Fensters befindet per Clipper gelöscht bzw. nicht angezeigt.
Im Fullscreenmodus ist das anders. Dort werden von Windows die Werte, die du bei d3d angegeben hast, verwendet.
Warum das so ist ???? Keine Ahnung...  |
|
Nach oben |
|
 |
|