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

idontknow

unregistriert

1

18.02.2009, 18:37

Video Formate!

hey

ich hänge gerade total daran, wie ich einen Video Fromat abfrage...

Das problem ist, dass ch diese Ganzen Makros mit D3DFMT_R5G6B5 und wie sie alle heißen, und dazu noch das ganze mit 16 Bit usw. überhaupt nicht raffe T_T.

Also was hat es mit deisen BIT-Formaten auf sich?
und worin liegt der unterschied bei der Einstellung von Vollbild - und Fenstermodus??

Es tut mir leid, dass meine Fragen etwas unkalr formuliert sind, aber ich komme mit dem Buch einfach nicht weiter, und habe das ganze Packet über Videomodus und Fenster -Vollbildmodus eigetnlich gar nicht so richtig verstanden!

Es wäre nett wenn sich jemand die Mühe machen würde mir das näher zu bringen, da ich gerade an einer Initialisierungsfunktion arbeite, die alle Daten vom benutzer abfrägt und ich darum ohne dieses Wissen schlecht weitermachen kann.

mit freudnlichen Grüßen
idontknow

Gotbread

Alter Hase

Beiträge: 421

Beruf: Student (Etechnik) + Hiwi

  • Private Nachricht senden

2

18.02.2009, 19:00

Diese Bit-Angaben beschreiben die Oberflächen in Direct3D.
Jede Oberfläche (Textur, Backbuffer alles was Pixel enthällt)
ist ein großer Speicherbereich deren Inhalt als Farbe interpretiert
wird.

Die Zahlen nach 'R', 'G', 'B', 'A' und 'X' geben an, wieviele Bits
die Farbkomponente beschreiben.

Bei R5G6B5 hast du:

5 Bits für Rot (00000 bis 11111) 32 verschiedene Werte
6 Bits für Grün (000000 bis 111111) 64 verschiedene Werte
5 Bits für Blau (00000 bis 11111) 32 verschiedene Werte

Das Format ist aber unpraktisch, da Grün einen doppelt sogroßen
Wertebereich wie die anderen Komponenten.

Zusammen muss das immer ein Vielfaches von 8 Bit sein.

Vollbild heißt (abgesehen davon dass der ganze bildschirm benutzt
wird, dass DirectX exklusivzugriff auf den Bildschirm hat. Dann geht z.b.
das zeichnen schneller. Außerdem kannst du dann die Frequenz oder
das Format (fast) frei wählen.

Im Fenstermodus zeichnet DirectX in ein Fenster, die Performance ist
nicht ganz so hoch und man kann nicht alles ändern wie man will, da
die anderen Programme auch noch funktioniern müssen. Dafür
geht die Initialisierung einen Tick flotter (gefühlt nicht bestätigt) und man
hat kein Problem mit dem minimieren (Alt-Tab Bug)
Mfg Goti
www.gotbread.bplaced.net
viele tolle spiele kostenlos, viele hardware-basteleien :)

"Es ist nicht undicht, es läuft über" - Homer Simpson

idontknow

unregistriert

3

18.02.2009, 19:03

aha ok danke das hilft mir schonmal wieter!

aber wegen der Umsetzung:

Wie inititalisiere ich jetzt einen Vollbild/einen Fenstermodus?

Also was für paramter benötige ich da? Wie genau geht das?

Wäre nett wenn jmd. darauf auch noch eine Antwort hätte :D

4

18.02.2009, 19:04

Was ist ein Alt-Tab Bug?

Ansonsten gibts noch S für Stencil und D für Depthbuffer.
Siehe DX-Doku.
fka tm

drakon

Supermoderator

Beiträge: 6 513

Wohnort: Schweiz

Beruf: Entrepreneur

  • Private Nachricht senden

5

18.02.2009, 19:05

Zitat von »"idontknow"«

aha ok danke das hilft mir schonmal wieter!

aber wegen der Umsetzung:

Wie inititalisiere ich jetzt einen Vollbild/einen Fenstermodus?

Also was für paramter benötige ich da? Wie genau geht das?

Wäre nett wenn jmd. darauf auch noch eine Antwort hätte :D


Das machst du bei der Erstellung der Device:
http://msdn.microsoft.com/en-us/library/bb174313(VS.85).aspx

Das gibst du in den D3DPRESENT_PARAMETERS an.

@Trikkie:
Er meint wohl Lost Device. Aber das ist imo kein Grund kein Fullscreen zu benutzen.. Fürs Debuggen ohne zweiten Screen die Hölle, aber native Auflösung zu haben ist schon was schönes. :)

6

18.02.2009, 19:07

Zitat von »"TrikkieMikkie"«

Was ist ein Alt-Tab Bug?

wenn du aus einer Vollbild-Anwendung raus- und wieder reintabbst, bekommst du ne LostDevice oder inkorrekte ergebnisse beim Rendern (bin mir da ausm kopf nicht ganz sicher), und du musst Direct3D afaik komplett neu initialisieren, damit du wieder vernünftig rendern kannst. Mittlerweile machen das fast alle Spiele, aber viele ältere machen da komische Sachen.

7

18.02.2009, 19:09

Das war mir schon klar, was damit gemeint ist. (und jede vernünftige Anwendung sollte das handlen können, z.B. auch bei der Windowstaste, Popupfenstern etc.)

Aber warum Bug?
fka tm

8

18.02.2009, 19:15

wahrscheinlich, weil er genauso wenig wie ich weiß, warum das passiert - meinem wissensstand nach, macht das keinen sinn, und da es negativ ist, nennt mans bug

PS: wir bräuchten mal nen Schulterzuck-Smiley

9

18.02.2009, 19:20

Ich habe schon lange vor, mal ein Tut darüber zu schreiben.
Habe aber noch nie die Zeit gefunden.
Auch bin ich immer so pingelig und drehe jedes Wort zweimal um. :?
Mal sehen, momentan bin ich ja noch krankgeschrieben...
fka tm

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

10

18.02.2009, 19:24

Zitat von »"Gotbread"«


Das Format ist aber unpraktisch, da Grün einen doppelt sogroßen
Wertebereich wie die anderen Komponenten.

Zusammen muss das immer ein Vielfaches von 8 Bit sein.


Das stimmt nicht ganz. Es gibt z.B. auch RGB555, wo ein Bit einfach ungenutzt bleibt... Und unpraktisch ist es auch nicht, wenn Grün ein Bit mehr hat. :)

Werbeanzeige