我创造的游戏世界比屏幕更大。所以我需要根据可视化移动Debug Draw。在Flash端口存档这个问题我们通常移动DisplayObject作为Debug Draw的目标,但在Box2D Debug的javascript端口中Draw缺乏这种可能性吗?或者我想念一些东西?
我使用了Box2DFlash 2.1a https://code.google.com/p/box2dweb/的 box2dweb javascript端口。
答案 0 :(得分:4)
只使用canvas的上下文2d的函数:
context.translate(canvasOffset.x,canvasOffset.y); context.scale(刻度,刻度);
答案 1 :(得分:0)
如果要从绝对值(即原始位置而不是最后一个帧位置)转换上下文,则需要保存和恢复上下文,因此翻译的起源相同。 您可能还需要clearRect来清除将要绘制的区域。
context.save();
context.clearRect(0, 0, debugCanvas.width, debugCanvas.height);
context.translate(canvasOffset.x, canvasOffset.y);
world.DrawDebugData();
context.restore();