2010-11-23 8 views
1

Ich möchte eine Liste aller verfügbaren Pixelformate für OpenGL erstellen. Unter Windows kann ich dies tun, indem ich DescribePixelFormat in einer Schleife aufruft, um die Pixelformat-ID zu erhöhen, bis sie false zurückgibt.Aufzählen aller Pixelformate mit AGL - wie? (Mac OS X)

Leider scheint aglDescribePixelFormat nicht so zu funktionieren. Der Parameter AGLPixelFormat ist ein Zeiger auf eine undurchsichtige Struktur - ich kann dies nicht in einer Schleife aufrufen.

Apples Dokumentation bietet auch keine Hinweise, noch google. Gibt es irgendwelche AGL-Experten, die ihr Wissen teilen möchten?

Edit: Ich habe erwähnt, eine aglListPixelFmts() -Funktion, aber das ist nicht in agl.h aufgeführt, noch kann ich in Apple-Dokumentation keine Erwähnung finden. Was gibt?

Antwort

0

Eigentlich gibt Apples Dokumentation einen Hinweis. Unter aglDescribePixelFormat, heißt es:

Um die Daten im Pixelformat andere Objekte als die erste in die Liste, rufen aglNextPixelFormat abzurufen. Dann übergeben Sie das zurückgegebene Pixelformat Objekt an aglDescribePixelFormat abrufen einen Attributwert.

+1

Danke. Dies bezieht sich auf etwas anderes: Unter Mac OS X können Sie mehrere Renderer für ein einzelnes Pixelformat verwenden. Bei einem Pixelformat ermöglicht aglNextPixelFormat die Iteration aller kompatiblen Renderer. –