Box2D有几个不同的JavaScript 端口.哪一个是最好的?
Box2DJS - "以自动方式从Box2DFlashAS3_1.4.3.1转换"
Box2Dflash 2.0移植到JavaScript - "恰好工作的一个大讨厌的黑客"
box2dweb - "一个Box2DFlash 2.1a到JavaScript的端口.我开发了一个ActionScript 3到JavaScript转换器来生成代码"
HBehrens/box2d.js - "Box2D 2.1a的JavaScript版本"(2011年11月21日添加)
kripken/box2d.js - "使用Emscripten将Box2D 2D物理引擎直接移植到JavaScript"(已于2013年9月24日添加)
任何版本http://chrome.angrybirds.com/使用的想法,如果有的话?
我得到了Box2D项目源,并希望编译它的testbed部分.项目文件夹包含以下文件夹:freeglu glui testbed(演示)helloword(演示)Box2D Build CMakeFiles
在所有不同的文件夹中有许多CMakeLists.txt.我在想我应该编写所有这些文件,以便在所有需要的地方创建make文件.我读了这个(作为我想要的指示):
wget http://box2d.googlecode.com/files/Box2D_v2.2.1.zip
unzip Box2D_v2.2.1.zip
cd Box2D_v2.2.1/Build
cmake ..
make
Run Code Online (Sandbox Code Playgroud)
什么是cmake ..做什么?build文件夹中没有CMakeLists.txt.
这篇文章与想要学习如何在LIBGDX和Box2D之间正确呈现的早期帖子有关.在我继续之前,我必须了解视口.
经过大量的代码/后期阅读,我觉得"视口"的意思是"镜头的矩形开口,可以看到LIBGDX的游戏世界,我可以在世界各地移动它来查看我想要的东西".但是,经过更多的阅读,我似乎远远没有实际意义.
我已经阅读了LIBGDX wiki,并阅读了OpenGL文档,它似乎将视口解释为两个不同的东西.
LIBGDX维基:
"视口是投影3D场景的屏幕的矩形视图区域.它只不过是将三维对象映射到二维平面."
OpenGL的:
"视口指示场景映射到的可用屏幕区域的形状."
堆栈溢出:
"......它在不同的背景下有几个定义......":'(
我已经尝试过阅读数十篇论坛帖子和教程.但是,不幸的是,几乎每个人都跳进去,好像"视口"是一个每个人都理解和知道的原始概念.
我知道,对于这个完全基本的问题,我会得到很多热量.请不要火焰,我问,因为我实际上不知道,实际上需要帮助.
无论如何,进入实际问题.
LIBGDX上下文中的"viewport"是什么?
我有一个b2Body,我想在某个目标位置移动.我不想使用SetPosition函数.我怎样才能实现这个目的:
我正在使用Box2DAS3 2.1a.任何其他语言的帮助也将不胜感激.
好吧,我试图制作我在这里制作的游戏的iphone版本http://scratch.mit.edu/projects/techy/781198更好的box2d或者花栗鼠,每个教程都有哪些教程
我正在尝试像javascript一样做一个小小的翅膀.
我第一次看到使用Box2D的技术,我正在使用closure-web版本(因为内存泄漏修复).
简而言之,我将曲线分解为多边形,因此它看起来像这样:

我也试过过Chipmunk-js,我用段形来模拟我的地面:

在这两种情况下,当圆形滚动时,我在多边形或线段之间的公共点处遇到一些"崩溃"或"颠簸".
我询问了Chipmunk,作者说他为段实现了radius属性以减少这种行为.我试过,它确实做了诀窍,但它并不完美.我仍然有一些颠簸(我必须设置为30px的半径才能获得正面效果).
"凸起"附加在两个多边形之间的共享点上:

正如伊兰德里尔向我建议的那样使用边缘技术 (他只测试了多边形 - 多边形接触)以避免圆圈在边缘上崩溃:

还试图像Luc建议的那样添加子弹选项,似乎没有任何改变.
这里是问题的演示.
您可以尝试更改要检查的值:
(仅在最新的开发Chrome上测试)
耐心(或改变水平重力),你会明白我的意思.
这里的感兴趣的回购.
在JBox2d中,存在以下代码Vec2.equals():
@Override
public boolean equals(Object obj) { //automatically generated by Eclipse
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
Vec2 other = (Vec2) obj;
if (Float.floatToIntBits(x) != Float.floatToIntBits(other.x))
return false;
if (Float.floatToIntBits(y) != Float.floatToIntBits(other.y))
return false;
return true;
}
Run Code Online (Sandbox Code Playgroud)
我想知道float < - > int位转换函数的用途是什么,这里.这是否提供了一种解决Java浮动比较不准确问题的方法(如果可能的话)?还是完全不同的东西?我想知道它是否是epsilon方法的替代方案:
if (Math.abs(floatVal1 - floatVal2) < epsilon)
Run Code Online (Sandbox Code Playgroud)
PS.为了完整和兴趣,这里是Vec2.hashCode():
@Override
public int hashCode() { //automatically generated by Eclipse
final int prime = 31;
int …Run Code Online (Sandbox Code Playgroud) 我即将开始开发一款主要功能围绕2D水模拟的游戏.我已经考虑过从Box2D开始并在该引擎中设计水,但我不确定它是否有效,而且我对Box2D没有任何经验.
如果有一个内置良好流体模拟的发动机,那将会很棒.如果没有,我应该从哪里开始?我一直在寻找一段时间,但仍然没有一个好的开始.
水一次只占屏幕的10%,我的目标是3GS上40 FPS和iPhone 4上45+.只是粗略的数字.
我还没有找到关于如何正确设置iOS手势识别器的教程.我需要检测向上和向下滑动,以及它们的回调.
任何帮助,赞赏.谢谢.
box2d ×10
chipmunk ×2
javascript ×2
box2d-iphone ×1
c++ ×1
cmake ×1
cocoa-touch ×1
curve ×1
graphics ×1
ios ×1
iphone ×1
java ×1
libgdx ×1
makefile ×1
objective-c ×1
physics ×1
terminology ×1
vector ×1
viewport ×1