Je ne suis pas nouveau à OpenGL, mais pas un expert. De nombreux tutoriels enseignent comment dessiner, 3D, 2D, projections, orthogonales, etc, mais comment définir une vue? (NSOpenGLView dans Cocoa, Macs).OpenGL Pixel Format Attributs (NSOpenGLPixelFormatAttibutes) explication?
Par exemple, j'ai ceci:
- (id) initWithFrame: (NSRect) frame
{
GLuint attribs[] = { //PF: PixelAttibutes
NSOpenGLPFANoRecovery,
NSOpenGLPFAWindow,
NSOpenGLPFAAccelerated,
NSOpenGLPFADoubleBuffer,
NSOpenGLPFAColorSize, 24,
NSOpenGLPFAAlphaSize, 8,
NSOpenGLPFADepthSize, 24,
NSOpenGLPFAStencilSize, 8,
NSOpenGLPFAAccumSize, 0,
0
};
NSOpenGLPixelFormat* fmt = [[NSOpenGLPixelFormat alloc] initWithAttributes: (NSOpenGLPixelFormatAttribute*) attribs];
return self = [super initWithFrame:frame pixelFormat: [fmt autorelease]];
}
Et je ne comprends pas très bien leur utilisation, surtout quand les combinant.
Par exemple:
Si je veux que mon point de vue à pouvoir plein écran dois-je écrire NSOpenGLPFAFullScreen seulement? ou les deux? (par capable je ne veux pas toujours dire en plein écran)
En ce qui concerne Double Buffer, qu'est-ce que c'est exactement? (Ci-dessous: la définition d'Apple)
Si présent, cet attribut indique que seul pixel double tampon formats sont pris en compte. Dans le cas contraire, uniquement les formats de pixel unique sont mises en mémoire tampon considéré
En ce qui concerne Couleur: si NSOpenGLPFAColorSize est 24 et NSOpenGLPFAColorSize est 8 alors cela signifie que les composants alpha et RVB sont traités différemment? que se passe-t-il si je mets le premier à 32 et le plus tard à 0?
Etc, etc, En général, comment puis-je apprendre à définir ma vue à partir de zéro?
Merci d'avance.
Ignacio.