2011-06-27 7 views
5

Praca nad aplikacją do rysowania dla iPada i używaniem CCRenderTexture jako płótna, na którym maluje się sprite. Pętla rysowania, której używam, jest oparta na przykładzie z przykładu cocos dla klasy tekstury renderowania.Błąd OpenGL 500 w cocos2D-iphone na końcu CCRenderTexture

[target begin]; 

float distance = ccpDistance(start, end); 
if (distance > 1) { 
    int d = (int)distance; 
    float difx = end.x - start.x; 
    float dify = end.y - start.y; 
    for (float i = 0; i < d; i+=([self.currentBrush sprite].textureRect.size.width * [self.currentBrush sprite].scale)/4.0f) { 
     float delta = i/distance; 
     [[self.currentBrush sprite] setPosition:ccp(start.x + (difx * delta), start.y + (dify * delta))]; 
     [[self.currentBrush sprite] visit]; 
    } 
} else { 
    [[self.currentBrush sprite] setPosition:start]; 
    [[self.currentBrush sprite] visit]; 
} 

[target end]; 

każdym razem [target end] nazywa pojawia się błąd OpenGL 0x0500:

OpenGL error 0x0500 in -[EAGLView swapBuffers] 

wydaje się być oparty na funkcji mieszania {GL_ONE, GL_DST_COLOR} na duchy, które maluję na płótnie „”. Kiedy używam {GL_ONE, GL_ONE} lub {GL_ONE, GL_ONE_MINUS_SRC_ALPHA} (Eraser), nie mam tego samego problemu.

Problem występuje na iOS 4.2 i 4.3 zarówno na urządzeniu, jak i na symulatorze.

Jest to moja pierwsza praca z OpenGL, więc czuję się trochę zagubiony w próbach znalezienia rozwiązania, każda pomoc byłaby bardzo ceniona.

[Aktualizacja]

usunąłem wszystkie wywołania funkcji, aby ustawić mieszanie jak GL_DST_COLOR zdawała się być jednym przyczyną błędu. Po usunięciu połączeń mieszania (z wyjątkiem gumki) nadal wygląda tak samo, więc jestem z tego zadowolony.

Przyszły do ​​tego rozwiązania po przeczytaniu a cocos2d forum post w odniesieniu do tego samego problemu.

+0

Wygląda na to, że wpis na forum już nie istnieje? Właściwie to ciekawa jest dyskusja na temat Cocos2D. Może link został zerwany? –

Odpowiedz

0
May be It's bug in latest version of Cocos2d.It's give the warning and some time Performance is also decrease.I fetch same problem when we put Gesture on the view controller. 

Below link is a my question discussion. 


**http://stackoverflow.com/questions/21326063/glview-causes-opengl-error?noredirect=1#comment32164422_21326063** 
Powiązane problemy