|
JLI Spieleprogrammierung
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
TheMillenium Dark JLI'ler
Anmeldedatum: 21.07.2002 Beiträge: 1427 Wohnort: World Medaillen: Keine
|
Verfasst am: 28.09.2002, 17:10 Titel: DC nicht verfügbar?!? |
|
|
Ich baue in meine neue Engine zum Test erstmal ne Text Funktion ein, dass ich später nicht immer soviel Code schreiben muss, und das alles übersichtlicher wird...in diesem Fall geht ja kein Makro oder ich finde es hier nicht so schön...
Also zu meinem Problem:
Ich starte das Programm und dann steht da:
Code: |
Text||||||||||||||||||||DC ist nicht verfügbar||||||||||
|
Also besser gesagt, das wir trotzdem auf die PrimarySurface geschrieben, obwohl der DC ja eigentlich nicht verfügbar sei
Code: |
void Render(void)
{
// Hintergrund löschen
DDrawObjekt.Clear(0);
Text("Text");
// primäre Oberfläche anzeigen
DDrawObjekt.Flip();
}
void Text(char* text)
{
HDC hDC;
// DC für die Oberfläche anfordern
if(FAILED(DDrawObjekt.GetBuffer()->GetDC(&hDC)))
{
Log.Log("DC ist nicht verfügbar");
}
// Textfarbe und Ausgabemodus setzen
SetTextColor(hDC,RGB(255,100,20));
SetBkMode(hDC,TRANSPARENT);
// Text und Ellipse ausgeben
TextOut(hDC,500,500, text,50);
// Wichtig !!! Device Context wieder freigeben
DDrawObjekt.GetBuffer()->ReleaseDC(hDC);
}
|
Das Problem ist auch, wenn ich das Log.Log() raus-kommentiere dann steht da nur noch Text|||||||||
und die Funktion Log.Log () sieht so aus
Code: | int AAS_Log::Log(char* LogMsg)
{
// in LogFile
if(LogMsg)
{
fprintf(Logfile,LogMsg);
fprintf(Logfile,"\n");
}
// und in das Ausgabefenster
OutputDebugString(LogMsg);
OutputDebugString("\n");
return 0;
} |
Hoffe ihr könnt mir helfen ich sitze da schon 2 Tage lang dran...naja ich habe auch immer wieder Mal etwas anderes gemacht sonst wäre ich jetzt am Boden zerstört... _________________ The source of all power is in its destiny... |
|
Nach oben |
|
|
Dietmar Ferstl Mini JLI'ler
Anmeldedatum: 19.07.2002 Beiträge: 47 Wohnort: Regensburg/Bayern Medaillen: Keine
|
Verfasst am: 28.09.2002, 17:25 Titel: |
|
|
Schon mal ne Fehleranalyse gemacht ?
Wenn du das alles weglässt, funktioniert's dann auch :
if(FAILED(DDrawObjekt.GetBuffer()->GetDC(&hDC)))
{
Log.Log("DC ist nicht verfügbar");
}
Dietmar |
|
Nach oben |
|
|
TheMillenium Dark JLI'ler
Anmeldedatum: 21.07.2002 Beiträge: 1427 Wohnort: World Medaillen: Keine
|
Verfasst am: 28.09.2002, 18:05 Titel: |
|
|
Wenn ich das DC nicht hole funzt es überhaupt nicht, schon Mal darüber nachgedacht... _________________ The source of all power is in its destiny... |
|
Nach oben |
|
|
TheMillenium Dark JLI'ler
Anmeldedatum: 21.07.2002 Beiträge: 1427 Wohnort: World Medaillen: Keine
|
Verfasst am: 19.10.2002, 17:50 Titel: |
|
|
Ich habe immer noch das Problem...hoffe ihr könnt mir helfen, wenn ihr das komplette Projekt habt...
http://mitglied.lycos.de/onlineboard/2D_ENGINE.rar _________________ The source of all power is in its destiny... |
|
Nach oben |
|
|
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
Powered by phpBB © 2001, 2005 phpBB Group Deutsche Übersetzung von phpBB.de
|