Ios 使用Cocos2d绘制矩形
所以我试图在我的iOS cocos2d游戏中画一个简单的矩形,但它根本没有出现。起初,我将矩形绘图代码添加到主场景的init方法中,但没有显示,所以我四处查看 我读了这篇文章,从中得到的是创建一个新类,扩展CCLayer类,并将其添加到我的主场景中 这是我的主要场景代码:Ios 使用Cocos2d绘制矩形,ios,cocos2d-iphone,Ios,Cocos2d Iphone,所以我试图在我的iOS cocos2d游戏中画一个简单的矩形,但它根本没有出现。起初,我将矩形绘图代码添加到主场景的init方法中,但没有显示,所以我四处查看 我读了这篇文章,从中得到的是创建一个新类,扩展CCLayer类,并将其添加到我的主场景中 这是我的主要场景代码: +(CCScene *) scene { // 'scene' is an autorelease object. CCScene *scene = [CCScene node]; // 'layer
+(CCScene *) scene
{
// 'scene' is an autorelease object.
CCScene *scene = [CCScene node];
// 'layer' is an autorelease object.
HelloWorldLayer *layer = [HelloWorldLayer node];
RectLayer *rectLayer = [RectLayer node];
// add layer as a child to scene
[scene addChild:rectLayer];
[scene addChild: layer];
// return the scene
return scene;
}
这是我的RectLayer.m代码
#import "RectLayer.h"
@implementation RectLayer
-(id) init {
if( (self=[super init] )) {
glEnable(GL_LINE_SMOOTH);
glColor4ub(255, 255, 255, 255);
glLineWidth(2);
CGPoint vertices2[] = { ccp(79,299), ccp(134,299), ccp(134,229), ccp(79,229) };
ccDrawPoly(vertices2, 4, YES);
}
}
@end
现在,当我试图用iPad模拟器打开它时,遇到了一个EXC_BAD_访问错误
我最近刚开始使用Objective-C,所以我不太确定出了什么问题
谢谢您的帮助。将绘图代码放入方法
draw
:
- (void)draw
{
glEnable(GL_LINE_SMOOTH);
glColor4ub(255, 255, 255, 255);
glLineWidth(2);
CGPoint vertices2[] = { ccp(79,299), ccp(134,299), ccp(134,229), ccp(79,229) };
ccDrawPoly(vertices2, 4, YES);
}
将绘图代码放入方法
draw
:
- (void)draw
{
glEnable(GL_LINE_SMOOTH);
glColor4ub(255, 255, 255, 255);
glLineWidth(2);
CGPoint vertices2[] = { ccp(79,299), ccp(134,299), ccp(134,229), ccp(79,229) };
ccDrawPoly(vertices2, 4, YES);
}
您还可以将此代码放在方法draw中:
ccDrawSolidRect(CGPoint原点、CGPoint终点、ccColor4F color) 您还可以将此代码放在方法draw中:
ccDrawSolidRect(CGPoint原点、CGPoint终点、ccColor4F color) 另外,在主场景的代码中,你需要一层一层地添加rectLayer,使其显示在顶部。是的,这应该是rectLayer的绘制方法。另外,请参见@Letrstotheprez的注释。在主场景的代码中,您还需要在一层接一层地添加rectLayer,使其显示在顶部。是的,这应该是rectLayer的绘制方法。另外,请参见@Letrstotheprez的评论。