【问题标题】:Corona SDK - rectangle not appearing in expected place (coordinate system)Corona SDK - 矩形未出现在预期位置(坐标系)
【发布时间】:2015-10-18 07:25:38
【问题描述】:

我是 corona SDK 和以下教程的新手。我注意到,当我定位元素时,它们并没有像教程中那样出现。例如:

local testRect = display.newRect( 0, 0, 50, 50 )
testRect:setFillColor( 0.5,0,0 )

在教程中是这样的:

我猜矩形上的锚点是 0.5, 0.5,我必须将其定位在 50% 的右侧,以及距离左上角顶部 50% 的位置。看起来在他们的示例中,矩形的锚点为 0, 0,并且默认情况下粘在屏幕边缘。

为什么会有差异?我注意到本教程使用的是 iphone 4.. 但这有关系吗?

【问题讨论】:

    标签: coronasdk game-engine coordinate


    【解决方案1】:

    几年前,Corona SDK 采用了他们的 Graphics 2.0 标准。这一举措的一部分是让所有 display.* 对象在创建它们时表现相同。在 Graphics 2.0 之前,一些对象的 X 和 Y 值表示左上角,而另一些对象则表示居中。在 Graphics 2.0 中,创建对象时的所有 X 和 Y 值现在都是对象的中心。

    如果您有较早的教程,可能会假设 x、y 位于左上角。在您的示例中,您在 0, 0 创建对象,这是内容区域的左上角。由于您所在的屏幕比定义的内容区域更宽,因此 0、0 并不总是屏幕的左上角。

    我猜你的 config.lua 将宽度设置为 320,将高度设置为 480(总是像设备处于纵向模式一样列出)。但是您使用的是 iPhone 5 屏幕,这意味着左上角为 -44, 0。这就解释了为什么图像不是一直到左边缘。

    【讨论】:

    【解决方案2】:

    我确定他们使用的锚点是 0.5,0.5。

    我建议您检查您的 build.settings 文件..我尝试了代码并得到了相同的结果..

    再次检查您的 build.settings 文件

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-02-05
      • 2016-03-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多