2013-01-06 191 views
4

我想用cocos2d在屏幕上画一个简单的彩色圆圈,但是我画的所有东西都是白色的。 我试图glColor4f和glColor4ub但没有一个工作,即使他们在这里用来绘制彩色原语:http://code.google.com/p/cocos2d-iphone/source/browse/trunk/tests/drawPrimitivesTest.m?r=1813画一个彩色圆圈

这些例子直出他们的代码,但它只是给了我一个白圈和白线。

-(void) draw 
{ 
    [super draw]; 
    glEnable(GL_LINE_SMOOTH); 

    glColor4f(0.0, 1.0, 0.0, 1.0); 
    glLineWidth(2.0f); 
    ccDrawLine(ccp(10,100),ccp(50,79)); 

    glLineWidth(16); 
    glColor4ub(0, 255, 0, 255); 
    ccDrawCircle(ccp(200, 200), 100, 0, 10, NO); 

} 
+0

不知道这是否是问题,但不要忘记调用[超级绘制]。 –

+0

啊对。虽然没有解决我的问题。 – AlexQueue

+0

你使用的是什么版本的cocos2d? –

回答

7

cocos2d 2.0使用OpenGLES 2.0。 glColor4f不再存在。要改变绘制颜色,你可以使用

ccDrawColor4F(0.0f, 1.0f, 0.0f, 1.0f); 
+0

我该如何使用它?添加它(例如替换glColor4f行)给了我一个'隐式声明函数'ccDrawColor4F'在C99'警告中无效,并在运行时导致崩溃 – AlexQueue

+1

您的项目设置可能有问题。它应该只在cocos2d 2.0中工作。打开CCDrawingPrimitives.h,看看你能在那找到什么。 –

+0

升级到cocos2d 2.0 stable。如果您使用的是“测试版”,我认为这意味着第一个2.0测试版,那么这些功能在您的版本中不存在。 – LearnCocos2D