- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
作为将我的 LimeJS 游戏从 PC 转移到 Android 的前奏,我正在尝试让 Android CocoonJS Launcher 与基本的 LimeJS 应用程序一起工作。我在这里做错了什么吗?
我有一些问题,其中一些可能只有 Tõnis Tiigi 知道,所以我也会问他:
LimeJS 是否已知可在 CocoonJS Android 启动器上运行,或者是否存在尚未针对此平台解决的 LimeJS 问题?
如果有问题,对这个平台的支持是计划中还是正在开发中?如果没有,我将不得不考虑重写以使用已知可与 CocoonJS 配合使用的游戏引擎。
我下载并安装了 limejs-no-dom 包,并让它在我的 Windows 机器上运行。我将基本的\limejs-no-dom\lime\demos\tests\anim1 和 run_canvasonly.htm 改编为我自己的测试项目。这工作正常,没有控制台错误。我做了一个 lime.py build 来创建一个测试,并将其上传到我的远程服务器。当我从浏览器访问它时,它工作正常,没有控制台错误。当我使用 CocoonJS Launcher 应用程序将我的 Android 手机连接到该站点时,出现黑屏。有一个 JavaScript 异常:类型错误:无法读取对象 goog.style.installStyles 中未定义的属性 parentNode
<!DOCTYPE HTML>
<html>
<head>
<title>Run MBTest</title>
<script type="text/javascript" src="mbt.js"></script>
</head>
<body onload="mbtest.start(document.getElementById('mycanvas'))">
<canvas id="mycanvas" width="500" height="500" style="border: 3px solid #c00"></canvas>
</body>
</html>
goog.provide('mbtest');
goog.require('lime');
goog.require('lime.Button');
goog.require('lime.Circle');
goog.require('lime.CoverNode');
goog.require('lime.Director');
goog.require('lime.Label');
goog.require('lime.Layer');
goog.require('lime.Scene');
goog.require('lime.Sprite');
goog.require('lime.animation.Loop');
goog.require('lime.animation.MoveBy');
goog.require('lime.animation.RotateBy');
goog.require('lime.animation.ScaleBy');
goog.require('lime.animation.Sequence');
goog.require('lime.animation.Spawn');
goog.require('lime.animation.ColorTo');
mbtest.WIDTH = 600;
mbtest.HEIGHT = 400;
mbtest.start = function(parent) {
mbtest.director = new lime.Director(parent || document.body, mbtest.WIDTH, mbtest.HEIGHT);
mbtest.director.makeMobileWebAppCapable();
var menuscene = new lime.Scene;
var layer = (new lime.Layer).setPosition(100, 100);
menuscene.appendChild(layer);
var sprite = new lime.Sprite().setFill(100,0,0).setSize(50, 50).setRenderer(lime.Renderer.CANVAS);
layer.appendChild(sprite);
var anim = new lime.animation.Sequence(new lime.animation.Spawn(
new lime.animation.MoveBy(200, 0).setDuration(1.5),
new lime.animation.ScaleBy(2),
new lime.animation.ColorTo(0,200,0)
), new lime.animation.Spawn(
new lime.animation.MoveBy(-200, 0).setDuration(1.5),
new lime.animation.ScaleBy(.5),
new lime.animation.ColorTo(200,0,0)
));
sprite.runAction(new lime.animation.Loop(anim).setLimit(5));
var sprite = new lime.Sprite().setFill('#0c0').setSize(50, 50).setPosition(0, 100).setRenderer(lime.Renderer.CANVAS);
layer.appendChild(sprite);
var anim = new lime.animation.Spawn(
new lime.animation.RotateBy(-90).setDuration(3).enableOptimizations(),
new lime.animation.MoveBy(300, 0).setDuration(3).enableOptimizations()
);
var a2 = new lime.animation.Sequence(anim, anim.reverse());
sprite.runAction(new lime.animation.Loop(a2).setLimit(5));
mbtest.director.replaceScene(menuscene);
};
goog.exportSymbol('mbtest.start', mbtest.start);
最佳答案
no-dom 分支的主要部署目标是 Ejecta。由于社区对 CocoonJS 表现出兴趣并且相似度达到 99%,因此还使用 CocoonJS 启动器对代码进行了测试。除了运行演示游戏之外,我从未尝试过更多。许多其他人报告说他们已经成功运行了他们的游戏。
还有一些边缘情况未完成(例如字体加载)。另外,我没有将它合并到 master 中,因为我没有真正的生产代码使用它。所以我不确定我能否为该代码提供支持。目前所有代码都是公开的,但使用由游戏作者负责。
我今天在启动器中再次运行了演示游戏(在 iPhone 而非 Android 上)。有一个小的计时 API 问题现在已修复(似乎与您遇到的错误不同)https://github.com/digitalfruit/limejs/commit/5ad9eb67a但除此之外,它们工作正常。
您发布的错误似乎是一个合理的错误,但我与您的代码示例无关。 Launcher 需要在 zip 容器中编译游戏。如果您在制作容器时遇到问题,请查看 Makefile 中的示例。
此外,如果您有错误报告(带有测试用例),我希望您在 Github 而不是 StackOverflow 中打开问题。
关于javascript - LimeJS 在 CocoonJS Android 启动器上失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22180770/
我正准备开发 child 读物应用程序。它将涉及大量插图和一些动画菜单,但就动画而言,没有像视频游戏那样疯狂。我正在尝试确定是使用 Phonegap 和 DOM 还是 CocoonJs 和 Canva
我使用 Construct 2 制作了一个游戏,我首先尝试使用 PhoneGap 构建来制作应用程序,但我意识到 PhoneGap 游戏非常慢。所以我听说CocoonJS可以解决这个问题。我尝试通过在
我用单独的 css 文件构建了一个 hello world 应用程序,用于背景颜色和 div 大小,当我得到我的 cocoonJS 应用程序时,它全是黑色的。 CocoonJS支持css/css3还是
我只有一个简单的问题:有没有人尝试过将基于 Crafty Game Engine(早期的 CraftyJS)构建的 HTML5 游戏部署到 CocoonJS 容器中? 如果是,您的体验如何?它的表现如
我正在尝试将 CocoonJS Social 与我的应用程序集成。当我在他们的启动器下运行它时,它返回以下异常作为来自 facebook ApiException 的响应:Key hash E7rnQ
首先,我知道有很多与此主题相关的问题和答案。但是,它们都不适合我(也许是因为它们很旧并且方法已经过时,我不知道)...让我简要解释一下我的问题: 我已经尝试使用 CocoonJS 上的扩展权限登录 F
我已经花了两周时间试图解决这个问题,但我无法让它工作...我制作了一个 HTML + Javascript 游戏,打算在 Android 和 iOS 设备上运行,所以我使用了 Ludei 的 Coco
Concoonjs 用于加速 html 5 游戏应用程序。 我有一个 Phonegap/Cordova 应用程序(不是游戏),但我不确定使用 Concoonjs 是否会提高性能? 有人尝试过吗? 最佳
我有一个在 Eclipse 中创建的 HTML/JS 项目,我想跨平台。我遇到了 Ludei 的 CocoonJS,它似乎是最好的选择(因为它们支持 WebGL)我按照 Ludei site 上的说明
作为将我的 LimeJS 游戏从 PC 转移到 Android 的前奏,我正在尝试让 Android CocoonJS Launcher 与基本的 LimeJS 应用程序一起工作。我在这里做错了什么吗
我到处搜索,无论是论坛、博客、谷歌,甚至文档,但无法弄清楚如何为 CocoonJS 做 Android 特定的事情。我想开始开发一个 javascript 游戏并使用 CocoonJS 构建它,我知道
我正在使用三个 v 67 的 WebGLRenderTarget 将第二个相机/场景渲染到缓冲区以供将来在纹理中使用。 Three.js 中的标准内容,但它在 CocoonJS 中悄然消亡。 我尝试过
我刚刚在 Apple 的 Appstore 上发布了一款由 CocoonJS 驱动的 Javascript 游戏,它集成了一些 Facebook 功能。在为 Facebook 创建我的应用程序后,我花
我想知道是否可以使用 iPhone 相机拍摄该图像,让用户选择面部,然后在 CocoonJS 和 PandaJS 中裁剪出该面部。我需要这样做来制作个人资料类型的东西,但我只想要用户选择的面部部分。
我的 KineticJS 游戏在 CocoonJS 中运行得很好,除了缩放 Canvas 。我有 1024x768 Canvas ,这对 iPad 2 来说非常好。但是对于 iPad 4,由于视网膜屏
因此,我正在使用 HTML5 制作游戏,我想将其转换为使用 CocoonJS 的应用程序。我有在 DOM 中制作的菜单,其中包含 HTML 内容,例如绑定(bind)到脚本的按钮。然后主要游戏在Can
我正在尝试使用 Phaser 创建游戏和 CocoonJS 。除了使用 canvas+ 在 cocoon 上部署游戏时将 Canvas 居中之外,一切正常渲染器。下面的三行代码可以实现我在网络浏览器中
我是一名优秀的程序员,十分优秀!