简单的多边形纹理映射/ iOS / cocos2d

时间:2011-10-26 21:59:04

标签: objective-c ios cocos2d-iphone mapping textures

我遇到了一些opengl和cocos2d的问题。我知道,我用opengl吮吸。我试图找到一个简单的答案,但没有运气。

我要做的是映射这样的纹理:

Example

...所以我得到了分数

CGPoint points[4];

points[0] = ccp(x1,y1);
points[1] = ccp(x2,y2);
points[2] = ccp(x3,y3);
points[3] = ccp(x4,y4);

接下来是什么:(?

我想要做的就是将该纹理映射到该多边形上。 我将以“白痴”的方式展示它:)

enter image description here

1 个答案:

答案 0 :(得分:1)

首先,我会设计底部水平的纹理,然后在末尾旋转精灵,因为这样可以更轻松。

我会将纹理加载到UIImage中。然后使用CGContexts删除顶角的三角形部分。

然后将UIImage加载到CCTexture2D中,然后我将创建一个精灵。然后旋转精灵,使其处于所需的方向。

或者,如果您不需要以编程方式生成纹理,则可以使用gimp,photoshop或pixelmator从纹理中删除边角。然后加载该纹理的方式与加载任何其他纹理的方式相同。