ios - 向 CCScene 添加矩形 - cocos2d

标签 ios objective-c cocos2d-iphone

游戏已启动并正在运行,但我想创建一个矩形层,以供将来开发/维护。这些矩形将在编译时启用。他们将向开发人员展示场景热点。

我已经尝试创建一个新的 CCLayer 并将其绘制方法更改为:

- (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);
}

但是 Xcode 说“使用未声明的标识符 GL_LINE_SMOOTH”

我不想仅仅为此创建图像 Sprite 。

有没有什么办法可以使用像“CGContextAddRect”这样简单的东西?

东西真的很简单...

我在这里使用了许多高级和复杂的方法。这不是我要找的。

谢谢!

最佳答案

我不相信 OpenGL ES 2.0 支持 GL_LINE_SMOOTH(我在 Khronos 组的 ES 2.0 编程指南中找不到它)。它可能仅在桌面版本中受支持。

相信您可以使用这些绘图方法轻松绘制矩形和其他东西。

由于这仅用于开发(根据您的问题),我不确定抗锯齿效果有多重要。

void ccDrawPoint (CGPoint point);
void ccDrawPoints (const CGPoint *points, NSUInteger numberOfPoints);
void ccDrawLine (CGPoint origin, CGPoint destination);
void ccDrawRect (CGPoint origin, CGPoint destination);

void ccDrawPoly (const CGPoint *vertices, NSUInteger numOfVertices, BOOL closePolygon);
void ccDrawCircle (CGPoint center, float radius, float angle, NSUInteger segments, BOOL drawLineToCenter);

你也可以做填充版本:
void ccDrawSolidRect (CGPoint origin, CGPoint destination, ccColor4F color);
void ccDrawSolidPoly (const CGPoint *poli, NSUInteger numberOfPoints, ccColor4F color);

Here is a reference ,带有一些示例代码(参见底部的 -visit )。

为了确保我不只是随意添加一些东西,我创建了一个项目(coco2d 的旧版本,1.01)并放入以下代码(进入默认的 HelloWorldLayer.m):
-(void) visit
{
   [super visit];

   ccDrawPoint(ccp(240, 160));
   ccDrawLine(ccp(100, 100), ccp(400, 300));
   ccDrawCircle(ccp(310, 150), 50, 1, 10, YES);
   ccDrawQuadBezier(ccp(50, 300), ccp(450, 250), ccp(400, 30), 15);
}

这是它的样子:

enter image description here

这是你需要的吗?

关于ios - 向 CCScene 添加矩形 - cocos2d,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20928447/

相关文章:

objective-c - 难道我不允许覆盖 -sendEvent : in my NSApplication subclass?

objective-c - React Native 中的桥接类函数

ios - 将图像从一个 View 传递到另一个 View

html - UIWebView 内容宽度自定义大小

iOS 企业内部分发流程

ios - 使用 nsdate 格式化程序进行日期格式化

ios - 用于 AdHoc 分发的 Xcode 6 存档

ios - 如何在cocos2d中针对特定场景实现手势

ios - didLoadFromCCB : come from in Cocos2d v3? 方法在哪里

iphone - Kobold2d 和 Cocos Builder : setting start scene