首页 > 代码库 > Cocos2d-X 3.2学习——DrawNode使用注意

Cocos2d-X 3.2学习——DrawNode使用注意

2014-09-21

最近用Cocos2d-x 3.2 Lua写个小游戏,用DrawNode的时候发现的问题。

1、GL Verts不断增长,代码如下

local draw = cc.DrawNode:create()
local points = {cc.p(0,0), cc.p(0 + size, 0), cc.p(0 + size, 0 + size), cc.p(0, 0 + size)}
draw:drawPolygon(points, table.getn(points), s.CUBE_COLOR[type], 0, {})
draw:setTag("draw")
node:addChild(draw)

原因:由于设置了Tag,所以我每次都是取同一个DrawNode进行绘制,这样导致绘图节点多了

解决:当draw的时候,需要先将drawnode clear一下,draw:clear()调用一下这个。

2、DrawNode:drawPolygon如果设置边界为0,在移动Node的时候还是会有小的边界出现

drawNode:drawPolygon(points, table.getn(points), color, 0.00001, color)
暴力解决:将边界设置为一个小值,如上代码


以上

Cocos2d-X 3.2学习——DrawNode使用注意