【发布时间】:2012-01-04 13:50:26
【问题描述】:
我需要帮助/建议来改进/评论我当前的设计:)
这与简单游戏中的碰撞检测有关:动态物体(移动物体)可能与静态物体(即地面、墙壁)发生碰撞。我正在将我的 Obj-C 模型移植到 Javascript,并且在我的实现方式方面面临内存/性能问题。
我正在使用一种非常基本的方法:数组数组代表我在物理不透明度方面的级别。
位设置为0:透明区域,物体可以通过
位设置为 1:不透明区域,物体碰撞
测试一个像素的透明度/不透明度的过程如下:
if (grid[x][y]) {
// collide!
}
我对 JS 的了解在性能/内存方面非常有限,无法评估这种方法有多好:) 不知道使用数组的效率。
想象一下一个宽 1000 像素、高 600 像素的关卡。这是一个小级别,但这已经意味着一个包含 1000 个数组的数组,每个数组最多包含 600 个条目。此外,我还没有找到一种方法来确保创建像低级语言那样的 1 位大小的元素。
使用以下内容,我可以确定一个条目不是“其他”的东西吗?
grid[x][y] = true;
grid[x][y] = false;
感谢您的宝贵时间和 cmets/建议!
J.
【问题讨论】:
-
顺便说一句,有没有人参考每个值类型的内存使用情况?我在这里找到了这个,但无法与其他来源确认:stackoverflow.com/questions/1248302/javascript-object-size
标签: javascript arrays performance multidimensional-array bitmap