2010-07-07 4 views

Répondre

11

Vous devez faire deux choses:

  1. Lorsque vous initialisez votre CAEAGLLayer, définissez la propriété opaque NO (ou FAUX).

    Vous devrez peut-être également vous assurer que votre drawableProperties utilise un format de couleur qui prend en charge la transparence (kEAGLColorFormatRGBA8, mais pas kEAGLColorFormatRGB565).

    eaglLayer.opaque = NO;

    eaglLayer.drawableProperties = [NSDictionary dictionaryWithObjectsAndKeys: [NSNumber numberWithBool:NO], kEAGLDrawablePropertyRetainedBacking, kEAGLColorFormatRGBA8, kEAGLDrawablePropertyColorFormat, nil];

    Si vous utilisez le modèle de projet OpenGL de XCode, ce sera dans [initWithCoder de EAGLView]. Dessinez le fond dans une couleur transparente et alpha.

    glClearColor(0.0f, 0.0f, 0.0f, 0.0f);

    Si vous utilisez le modèle de projet OpenGL de XCode, ce sera dans les méthodes "rendre": [ES1Renderer rendu] et [rendre ES2Renderer].