2012-01-24 6 views
4

Я использую cocos2d-iphone, последнюю версию, отличную от бета-версии.CCLiquid делает мой экран черным

Недавно я нашел это: http://www.cocos2d-iphone.org/wiki/doku.php/prog_guide:effects, и меня интересовало CCLiquid или CCWaves для некоторых эффектов воды в моей игре.

Однако, когда я применяю CCLiquid-действие на моем CCSprite, все, кроме самого спрайта, становится черным. Ну, не совсем. Когда я увеличил амплитуду действия, я заметил, что на самом деле это черный фон, размер экрана, созданный непосредственно под моим CCSprite (и такой фон также «махал»).

Несмотря на то, что это не 3D действие (без 3D суффикс, по крайней мере), я решил последовать верхушку на этой странице и поместить это на мой делегат:

[[CCDirector sharedDirector] setDepthBufferFormat:kDepthBuffer16]; 

Но kDepthBuffer16 не признается в любом случае.

Любые идеи?

Редактировать: Что-то, о чем стоит упомянуть, заключается в том, что мой спрайт анимируется с помощью CCAnimate.

+0

Я получаю тот же эффект с простым оттенком ванили, без анимации. – YvesLeBorg

ответ

2

С версией 1.0.1 это исправлено для меня (статическое изображение, без анимации). Это в AppDelegate (в моем случае):

- (void) applicationDidFinishLaunching:(UIApplication*)application 
{ 
    // Init the window 

    window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; 
    if(! [CCDirector setDirectorType:kCCDirectorTypeDisplayLink]) { 
     [CCDirector setDirectorType:kCCDirectorTypeDefault]; 
    } 

    CCDirector *director = [CCDirector sharedDirector]; 

    // Init the View Controller 

    viewController = [[RootViewController alloc] initWithNibName:nil bundle:nil]; 
    viewController.wantsFullScreenLayout = YES; 

    // Create the EAGLView manually 

    EAGLView* glView = [EAGLView viewWithFrame:[window bounds] 
            pixelFormat:kEAGLColorFormatRGBA8 
            depthFormat:GL_DEPTH_COMPONENT16_OES 
          preserveBackbuffer:NO 
            sharegroup:nil 
           multiSampling:NO 
           numberOfSamples:0]; 


    // attach the openglView to the director 

    [director setOpenGLView:glView]; 

    // ... etc here 

} 
Смежные вопросы