0
我正在開發一個iphone遊戲我使用多線程在屏幕上繪製多個對象,但我不清楚如何使用所有這些線程渲染特定的場景,我應該使用相同的FOB所有的線程來更新場景或有任何其他技術進行渲染使用多線程。請幫助下面給出 碼現場(在單獨的線程放置)給出了不良ACCES在opengles中使用多線程渲染場景
-(void)drawBricks1{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
[EAGLContext setCurrentContext:context];
glBindFramebufferOES(GL_FRAMEBUFFER_OES, viewFramebuffer);
//glViewport(0, 0,backingWidth, backingHeight);
Image *ii=[[Image alloc]initWithImage:[UIImage imageNamed:@"s_2.png"]];
[ii renderAtPoint:CGPointMake(100, 100) centerOfImage:YES];
// Clear screen
//glClear(GL_COLOR_BUFFER_BIT);
glBindRenderbufferOES(GL_RENDERBUFFER_OES, viewRenderbuffer);
[context presentRenderbuffer:GL_RENDERBUFFER_OES];
[pool release];
}// end of the drawb
但問題是,我做的計算就在同一個主線程遊戲和在該線程中也有不同的渲染方法,因爲這個我砍伐某種在iPhone3的延遲,但它在iPhone4的:)工作正常。 – Ali 2011-03-11 14:40:59
只要你在一個線程中保留所有的OpenGL操作,你就可以創建你喜歡的線程。如果多個線程同時訪問一個OpenGL上下文,問題就開始了。 – datenwolf 2011-03-11 14:48:44
後來我提到的問題是,我不能夠,如果船舶在一個線程中移動和球員的移動的其他線程現場從所有這些線程結合起來,例如,如何將這些結合起來,使一個場景 – Ali 2011-03-11 14:57:52