title: Physics standardisation between iOS Spritekit and Android Andengine
body: <p>I'm developing a game on iOS Sprite Kit and on AndEngine (with Box2d) simultaneously. I want the game's physics to be identical on both platforms. Sprite Kit uses Box2d internally for physics simulation same as in AndEngine.</p>
  
  <p>In AndEngine's Box2d, I use <code>body.SetLinearVelocity(x,y)</code> where x = y = density/34f(some constant value)</p>
  
  <p>In Sprite Kit, I use <code>ball.physicsBody.velocity = CGVectorMake(x,y)</code></p>
  
  <p>I similarly use the code below for  gravity &amp; impulse in AndEngine &amp; Sprite Kit respectively.</p>
  
  <p>For Gravity :</p>
  
  <p>In AndEngine's Box2d, I use </p>
  
  <pre><code>mPhysicsWorld = new FixedStepPhysicsWorld(60, 1, new Vector2(0, -1f),false, 6, 2);
  </code></pre>
  
  <p>In Sprite Kit, I use</p>
  
  <pre><code>self.physicsWorld.gravity = CGVectorMake(0, -1);
  </code></pre>
  
  <p>For Impulse :</p>
  
  <p>In AndEngine's Box2d, I use </p>
  
  <pre><code>body.applyLinearImpulse(new Vector2(2f, 2f),new Vector2(body.getWorldCenter().x, body.getWorldCenter().y));
  </code></pre>
  
  <p>In Sprite Kit, I use</p>
  
  <pre><code>[ball.physicsBody applyImpulse:CGVectorMake(2,2)];
  </code></pre>
  
  <p>In AndEngine I give the velocity is given w.r.t the density of the devices so that we can make the gameplay looks same in all android devices like the ball starts and ends at almost the same time in all devices(Mobiles, Tablets)</p>
  
  <p>I want to know what value to be given in sprite kit w.r.t AndEngine so that physics in both platforms looks similar. Also whether we have to give different velocity for different screen sizes like in AndEngine or same velocity should be given for all iOS devices.</p>
  
  <p>Apart from setting velocity, I need to know whether I should keep the Gravity, Impulse variable according to screen sizes.</p>