为何用DrawNode.drawSegment绘制出来的线粗细不一?

如果设置的过细(0.1) 则有些线看不到
如果设置大一些(0.5) 则有些线显得更粗一些

为什么? 代码如下

auto draw = DrawNode::create();
addChild(draw, 10);

for (int j = 0; j < SCENE_HEIGHT; j+= CELL_PIXEL_SIZE)
{
    draw->drawSegment(Point(0, j), Point(SCENE_WIDTH-1, j), 0.5, Color4F(1, 0, 0, 1));
}

for (int j = 0; j < SCENE_WIDTH; j+= CELL_PIXEL_SIZE)
{
    draw->drawSegment(Point(j, 0), Point(j, SCENE_HEIGHT-1), 0.5, Color4F(1, 0, 0, 1));
}

截图见附件

层缩放后还会变成这样

问题解决了吗?

我在Mac环境下,版本是3.3Final并没有出现你这种情况,可以说下你的环境吗?

这个问题重现一下。

我提了一个issue。

https://github.com/cocos2d/cocos2d-x/issues/10257

你可以关注一下这个问题。

好像是因为1像素的线在跨越在两个像素的格子里,没有办法画出一边半像素,所以两个像素都画了,结果就粗了!