【问题标题】:Anchor point in a Cocos2d-x DrawNodeCocos2d-x DrawNode 中的锚点
【发布时间】:2015-09-24 01:10:08
【问题描述】:

我一直在尝试绘制节点,到目前为止,我得到了我想要的结果,但有点使用试错法。

绘制节点的主要问题是我似乎无法理解锚点的工作原理。

例如,通常我会将锚点调整到中间,然后将精灵移动到某处,然后精灵图像的中间将正好位于锚点所在的中心。

但是,更改锚点如何在绘图节点中真正起作用?它甚至有效吗? (我开始相信它没有)

锚点会影响绘图吗?还是只是最终图像?还是什么都没有?

现在,当我绘制某些东西时,它似乎被绘制成好像我在 (0,0) 周围绘制的画布中一样,并且移动锚点似乎没有任何作用(无论我是在之前还是之后移动它图)

【问题讨论】:

    标签: cocos2d-x cocos2d-x-3.0


    【解决方案1】:

    据我所知,DrawNode 是 Node 的子类。而 Node,默认情况下没有大小。如果节点没有大小(技术上它是 0x0)锚点将不起作用,因为例如 0x0 对象的中心它只是同一个点。如果你想让你的节点居中,你必须使用 setContentSize 方法指定它的大小。

    【讨论】:

    • 绘制后不自动计算内容大小?另外,内容大小是从0,0到右上角吗?还是从 - (width/2,height/2) 到 + (width/2,height/2)?
    • 不,它没有。 (0, 0) 在 openGl 坐标中是左下角。当您设置 contentSize (默认锚点时)时,它将是 (0, 0) - (width, height)。然后你可以将 anchorPoint 设置为 (0.5, 0.5) 或任何你想要的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多