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

1

15.01.2006, 16:39

GetGammaRamp & die pure verzweiflung

hy,
ich wollte mir heute die gammawerte meiner anwendung ausgeben lassen.
zu beginn klappte das auch wunderbar.

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
D3DGAMMARAMP pRamp;
m_pD3Ddev->GetGammaRamp(0,&pRamp);

for(int nloop = 0;nloop<=256;nloop++)
{
    add_log("Gamma Red %i = %i",nloop,pRamp.red[nloop]);
    add_log("Gamma Green %i = %i",nloop,pRamp.green[nloop]);
    add_log("Gamma Blue %i = %i",nloop,pRamp.blue[nloop]);
}

in der logdatei waren sechsstellige werte von pRamp.Farbe[nloop].
Gamma Red 0 = 142254
Gamma Green 0 = 285444
Gamma Blue 0 = 135599
Gamma Red 1 = 142254
Gamma Green 1 = 285444
Gamma Blue 1 = 135599

als ich dann versuchte habe die gammawerte zu ändern wurde die anwendung schwarz.

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
if(GetAsyncKeyState(VKEY_G)&1==1)
{
    m_GammaRed++;
    m_GammaGreen++;
    m_GammaBlue++;
}

if(GetAsyncKeyState(VKEY_H)&1==1)
{
    m_GammaRed--;
    m_GammaGreen--;
    m_GammaBlue--;
}
    

for(int nloop = 0;nloop<=256;nloop++)
{
    pRamp.red[nloop]    = m_GammaRed;
    pRamp.green[nloop]  = m_GammaGreen;
    pRamp.blue[nloop]   = m_GammaBlue;
}

if(bGamma)
SetGammaRamp(0,Flag,&pRamp);

ok is ja nicht schlimm.
aber als ich dann in die logdatei geschaut hab kapier ich jetzt gar nichts mehr.
selbst wenn ich mir nur die werte ausgeben lasse ohne zu versuchen sie zu ändern und die anwendung vollkommen normal läuft steht in der log

Gamma Red 0 = 0
Gamma Green 0 = 0
Gamma Blue 0 = 0
Gamma Red 1 = 1
Gamma Green 1 = 1
Gamma Blue 1 = 1
.........
Gamma Red 255 = 255
Gamma Green 255 = 255
Gamma Blue 255 = 255
Gamma Red 256 = 0
Gamma Green 256 = 0
Gamma Blue 256 = 221806

ich versteh die welt nicht mehr warum gibt mir die anwendung nur noch müll aus obwohl es zuerst wunderbar geklappt hat?
Ein blutiger Direct X Anfänger