2010-07-07 22 views

Antwort

11

Sie haben zwei Dinge zu tun:

  1. Wenn Sie Ihre CAEAGLLayer initialisieren, stellen Sie die opake Eigenschaft auf NO (oder FALSCH).

    Sie müssen möglicherweise auch sicherstellen, dass Ihre drawableProperties ein Farbformat verwendet, das Transparenz unterstützt (kEAGLColorFormatRGBA8 tut dies, aber kEAGLColorFormatRGB565 nicht).

    eaglLayer.opaque = NO;

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

    Wenn Sie OpenGL XCode Projektvorlage verwenden, wird dies in [EAGLView des initWithCoder].
  2. Zeichnen Sie den Hintergrund in einer transparenten Farbe und Alpha.

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

    Wenn Sie XCode OpenGL Projektvorlage verwenden, wird dies in den "Render" Methoden sein: [ES1Renderer machen] und [ES2Renderer machen].
Verwandte Themen