Registriert: Mo Sep 02, 2002 15:41 Beiträge: 867 Wohnort: nahe Stuttgart
Hi,
kurz etwas Vorgeschichte: ich progge derzeit an einem kleinen Sample mit ein paar Features, um einen groben Überblick über Funktionsweisen und benötigte Codes zu kriegen. Dieses Sample hab ich nun auch mal einem Kumpel geschickt; unter anderem, weil er ne ATI-Karte hat und das zum Testen sicher auch nicht schlecht ist. Da er etwas von "seltsame Farbkleckse" geredet hat, die nicht da sein sollten, habe ich eine Screenshot-Funktion per glReadPixels eingebaut, die bei ihm jedoch den Dienst verweigert. Eine kleine Debugprozedur förderte dann das zu Tage:
Zitat:
GL library glGetString() ... GL Version
GL Vendor
GL Renderer
GL Shading language
GL Extensions
GLU library gluGetString() ... GLU Version 1.2.2.0 Microsoft Corporation
GLU Extensions
Program specific information GL_MAX_TEXTURE_UNITS 0
Nun gibt es ja die Legende von den lebenden Toten, aber das sieht mir schon extrem komisch aus.
(Leute ohne große Vorstellungskraft können sich ein korrektes Exemplar hier anschauen)
Der leere GL_VIEWPORT erklärt natürlich die nicht vorhandenen Bilder. Dass das überhaupt läuft, wundert mich aber irgendwie auch.
Noch seltsamer ist die Tatsache, dass Folgendes nach der Initialisation von OpenGL getan wird:
Code:
glGetIntegerv(GL_MAX_TEXTURE_UNITS,@i);
if i < 2then
begin
Application.MessageBox(PChar('Your graphic accelerator does [blablabla]'),
'Initalization Error', MB_ICONERROR or MB_OK);
[...]
end;
Was er jedoch ebenfalls trotz der Aussage GL_MAX_TEXTURE_UNITS = 0 nicht zu Gesicht bekommt.
In seinem Rechner steckt ne Radeon X800XT, Win 2k und er hat den Catalyst 06.2 ( 2d 6.15.10.6599 ).
Soweit ich weiß, gibt es OpenGL2.0-Support mit glSlang in Catalyst seit 5.3 bis 5.6, aber ATI-Karten sind nicht grade mein Spezialgebiet. Daher kann ich mir dieses Problem nicht grade erklären, würde ihm aber trotzdem gern meine OGL-Applikationen zeigen.
Deswegen bitte ich hier um Hilfe und hoffe, dass jemand einen Einfall / Erfahrungen zu dem Problem hat.
Registriert: Do Dez 05, 2002 10:35 Beiträge: 4234 Wohnort: Dortmund
Sehe ich das richtig? Du hast in seinem Log nicht mal einen Vendor stehen? Das komplette Log ist leer. Dass er die Meldung nicht sieht lässt vermuten, dass dein Programm vielleicht ne Exception hatte und deswegen gar nicht erst zu dem Stück Code gelangt ist. Allerdings weiß ich nicht wie du dein Log befüllst und was für Exceptionhandling du betreibst. Kann es sein, dass du ne Struktur oder so was befüllst und die am Ende wegschreibst? Evtl setzt du die ein oder andere Extension stillschweigend vorraus, die bei NV implementiert ist bei ATI aber nicht? Also zu begin beim Initialisieren. Das würde ich mir mal ganz genau ansehen.
Anderenfall mal andere OpenGL Anwendungen auf seinem Rechner ausprobieren. Also mal das glInfo von Tom Nuydens. Und evtl ein Screenshoot der Farbkleckse von Hand anfertigen lassen. Also mit IrfanView oder so.
Registriert: Mo Sep 02, 2002 15:41 Beiträge: 867 Wohnort: nahe Stuttgart
OK, großes Edit:
ATI-Karten mögen ganz anscheinend kein mutterseelenalleiniges glEnd; in einer Displaylist. Darauf hätt ich auch früher kommen können, zumal es mir auch nicht ganz gut gewählt erschien.
Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.