box2D (JavaScript) - PullRequest
       1

box2D (JavaScript)

1 голос
/ 06 октября 2011

Я только начинаю с box2d.Я могу создать некоторые объекты и создать мир, в котором можно использовать эти объекты.Например, чтобы создать поле (взято из: http://box2d -js.sourceforge.net / index2.html ), я могу сделать это так:

    elements = getElementsByClass("box2d");
      for ( var i = 0; i < elements.length; i ++ ) {
        properties[i] = getElementProperties( elements[i] );
        bodyDef.type = b2Body.b2_dynamicBody;
        var data = { element: elements[i]};
        bodyDef.userData = data;
        fixDef.shape = new b2PolygonShape;
        fixDef.shape.SetAsBox(2 //half width ,  2);
        bodyDef.position.x = Math.random() * 10;
        bodyDef.position.y = Math.random() * 10;
        world.CreateBody(bodyDef).CreateFixture(fixDef);
      }

Что бы якак сделать, это взять div с текстом и превратить эти div с текстом в формы и использовать их в box2D.Я действительно не знаю, с чего начать.Я использую свойство userData и теперь думаю, что это как минимум начало.

Я нашел отличный пример этого в действии: http://mrdoob.com/projects/chromeexperiments/google_gravity/

getElementProperties и getElementsByClass определены.Я думал об использовании getElementProperties для установки размеров формы.

Ответы [ 2 ]

1 голос
/ 20 сентября 2012

Вы можете взять эталонные образцы ..

http://jsbin.com/efequk/5

http://www.jeremyhubble.com/box2d.html

1 голос
/ 20 февраля 2012

Я делаю что-то похожее с iOS, но хороший способ приблизиться к этому - сделать изображения из информации, хранящейся в div. Затем вы можете сделать спрайт из этого изображения и добавить его в качестве userData для вашего тела box2d. Когда вы обновляете (тик: метод в iOS, я не уверен в javascript), вы перебираете все тела и корректируете расположение спрайта. Мир box2d должен сделать все остальное за вас.

...