0

好的,所以我的 iPhone 5 到了(我住在澳大利亚,很幸运能在美国之前拥有它),我想做的第一件事就是使用Impact JS引擎为我的 2D 平台游戏充分利用88像素的额外宽度.

我无法理解如何实际修改画布宽度。

这是我以前使用的:

ig.main('#canvas', MyGame, 60, 240, 160, 2);

现在,我认为将240像素增加44像素会很容易(考虑到横向两侧各有44像素):

ig.main('#canvas', MyGame, 60, 284, 160, 2);

但是,在上述代码更改后,我仍然在两侧看到44像素的黑条。

不确定我是否必须修改任何其他 Impact 引擎文件才能使其正常工作。我还没有玩够它,因为我现在正在工作,不应该真的在我的游戏上工作。我确定还有一些其他方面我必须修改才能使其正常工作。

顺便说一句,我正在使用iOSImpact并将我的游戏直接部署到我的 iPhone 5,因此其中可能还有需要更新的文件。

我还注意到以下用于在移动设备之间进行检测的属性。我也需要ig.ua.iPhone5在这里投入一处房产。

ig.ua.pixelRatio = window.devicePixelRatio || 1;

ig.ua.viewport = {
    width: window.innerWidth,
    height: window.innerHeight
};

ig.ua.screen = {
    width: window.screen.availWidth * pixelRatio,
    height: window.screen.availHeight * pixelRatio
};

ig.ua.iPhone = /iPhone/i.test(navigator.userAgent);
ig.ua.iPhone4 = (iPhone && pixelRatio == 2);
ig.ua.iPhone5 = ??
ig.ua.iPad = /iPad/i.test(navigator.userAgent);
ig.ua.android = /android/i.test(navigator.userAgent);
ig.ua.webos = /hpwos/i.test(navigator.userAgent);
ig.ua.iOS = iPhone || iPad;
ig.ua.mobile = iOS || android || webos;

我在以下内容上做了一个 console.log,这就是它返回的内容:

ig.ua.viewport.width= 640

ig.ua.viewport.height= 960

ig.ua.screen.width= 1280

ig.ua.screen.height= 1920

我对上述结果也有点困惑,特别是 ig.ua.viewport.width 返回960。我会认为它应该返回1136

4

1 回答 1

1

您的应用程序必须告诉操作系统它支持更高/更宽的屏幕。我认为这是通过指定该大小的启动图像来完成的。否则,您将在兼容模式下运行,而无法使用全屏

于 2012-09-21T06:34:40.770 回答