Difference between revisions of "B2.setScale"

From GiderosMobile
(Created page with "__NOTOC__ '''Available since:''' Gideros 2011.6<br/> === Description === <br /> Box2D is tuned for MKS (meters-kilogram-second) units and the size of moving objects should rou...")
 
Line 11: Line 11:
 
<br />
 
<br />
 
<source lang="lua">
 
<source lang="lua">
= b2.setScale(scale,)
+
b2.setScale(scale)
 
</source>
 
</source>
'''scale:''' (number) - the global pixels to meters scale ''''''<br/>
+
'''scale''': (number) - the global pixels to meters scale ''''''<br/>

Revision as of 10:21, 23 August 2018

Available since: Gideros 2011.6

Description


Box2D is tuned for MKS (meters-kilogram-second) units and the size of moving objects should roughly between 0.1 and 10 meters.
If you directly use the pixels as your units, unfortunately this will lead to a poor simulation and possibly weird behavior.

Gideros uses an internal scale system to convert between meters and pixels. By default, the value of this scale is 30
which means 1 meter = 30 pixels. This is a global value and effects all the physics system. Therefore, it is recommended to set this
value once before any physical objects are instantiated (e.g. right after calling `require "box2d"`)

 b2.setScale(scale)

'scale: (number) - the global pixels to meters scale '