【问题标题】:How to get boundaries of visible part of canvas on screen如何在屏幕上获取画布可见部分的边界
【发布时间】:2018-12-26 00:00:52
【问题描述】:

我正在尝试使用 pixi 和 javascript 在画布上构建游戏,我的画布是无限的,只有一小部分可见,它超出了可见部分,我需要找到可见部分的边界,以便一旦我游戏角色到达边缘我需要将画布朝各自的方向移动,我现在通过跟踪所有内容来艰难地实现它, 可视部分可以是画布上的任何位置,具体取决于用户,我需要确定边界,如何实现这一点,有什么建议吗???我正在使用 PIXI。我很抱歉我不能在这里粘贴我的代码,因为它太复杂而且我不拥有它。

【问题讨论】:

  • 到目前为止你有什么尝试?
  • 使用屏幕宽度和高度,跟踪运动 保存发生的数据,但这些看起来像昂贵的操作
  • 您能否发布一些您的努力的代码,以便有人可以更新他们的答案!
  • 现在发生的事情是我必须跟踪所有内容,包括屏幕分辨率和每个动作,我的画布可以拖动,所以所有这些东西看起来像一个头顶,我只想知道是否有这样做的更好方法。对不起,我不能在这里粘贴我的代码。
  • 只是好奇,因为我从来没有使用过pixi,你是在创建一个掩码作为pixi的矩形显示对象吗?您是否使用 _recursivePostUpdateTransform 进行拖动?

标签: javascript html canvas pixi.js


【解决方案1】:

如果您使用 javascript,则可以使用以下方法获取画布位置和大小:-

var can = getElementById("can");
var width = can.width;
var height = can.height;
var left = can.style.left;
var top = can.style.top;

注意你应该将canvas id设置为can才能使用上面的代码。

【讨论】:

  • 没有像 getElementById() 这样的方法。尝试使用文档。 getElementById()
【解决方案2】:

我使用 Pixi Viewport 来解决这个问题。

【讨论】:

    猜你喜欢
    • 2014-03-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-12
    相关资源
    最近更新 更多