2010-07-07 16 views

Respuesta

11

que tiene que hacer dos cosas:

  1. Al inicializar su CAEAGLLayer, establezca la propiedad opaca a no (o FALSO).

    También es posible que deba asegurarse de que drawableProperties utilice un formato de color que admita transparencia (kEAGLColorFormatRGBA8 sí, pero kEAGLColorFormatRGB565 no lo hace).

    eaglLayer.opaque = NO;

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

    Si está usando OpenGL plantilla de proyecto de XCode, esto será en [initWithCoder de EAGLView].

  2. Dibuje el fondo en un color transparente y alfa.

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

    Si está usando OpenGL plantilla de proyecto de XCode, esto será en los métodos "Render": [ES1Renderer render] y [ES2Renderer rendir].
Cuestiones relacionadas