class_physics2dserver.rst 101 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899
  1. .. Generated automatically by doc/tools/makerst.py in Godot's source tree.
  2. .. DO NOT EDIT THIS FILE, but the Physics2DServer.xml source instead.
  3. .. The source is found in doc/classes or modules/<name>/doc_classes.
  4. .. _class_Physics2DServer:
  5. Physics2DServer
  6. ===============
  7. **Inherits:** :ref:`Object<class_object>`
  8. **Inherited By:** :ref:`Physics2DServerSW<class_physics2dserversw>`
  9. **Category:** Core
  10. Brief Description
  11. -----------------
  12. Physics 2D Server.
  13. Member Functions
  14. ----------------
  15. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  16. | void | :ref:`area_add_shape<class_Physics2DServer_area_add_shape>` **(** :ref:`RID<class_rid>` area, :ref:`RID<class_rid>` shape, :ref:`Transform2D<class_transform2d>` transform=Transform2D( 1, 0, 0, 1, 0, 0 ) **)** |
  17. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  18. | void | :ref:`area_attach_object_instance_id<class_Physics2DServer_area_attach_object_instance_id>` **(** :ref:`RID<class_rid>` area, :ref:`int<class_int>` id **)** |
  19. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  20. | void | :ref:`area_clear_shapes<class_Physics2DServer_area_clear_shapes>` **(** :ref:`RID<class_rid>` area **)** |
  21. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  22. | :ref:`RID<class_rid>` | :ref:`area_create<class_Physics2DServer_area_create>` **(** **)** |
  23. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  24. | :ref:`int<class_int>` | :ref:`area_get_object_instance_id<class_Physics2DServer_area_get_object_instance_id>` **(** :ref:`RID<class_rid>` area **)** const |
  25. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  26. | :ref:`Variant<class_variant>` | :ref:`area_get_param<class_Physics2DServer_area_get_param>` **(** :ref:`RID<class_rid>` area, :ref:`int<class_int>` param **)** const |
  27. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  28. | :ref:`RID<class_rid>` | :ref:`area_get_shape<class_Physics2DServer_area_get_shape>` **(** :ref:`RID<class_rid>` area, :ref:`int<class_int>` shape_idx **)** const |
  29. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  30. | :ref:`int<class_int>` | :ref:`area_get_shape_count<class_Physics2DServer_area_get_shape_count>` **(** :ref:`RID<class_rid>` area **)** const |
  31. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  32. | :ref:`Transform2D<class_transform2d>` | :ref:`area_get_shape_transform<class_Physics2DServer_area_get_shape_transform>` **(** :ref:`RID<class_rid>` area, :ref:`int<class_int>` shape_idx **)** const |
  33. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  34. | :ref:`RID<class_rid>` | :ref:`area_get_space<class_Physics2DServer_area_get_space>` **(** :ref:`RID<class_rid>` area **)** const |
  35. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  36. | :ref:`int<class_int>` | :ref:`area_get_space_override_mode<class_Physics2DServer_area_get_space_override_mode>` **(** :ref:`RID<class_rid>` area **)** const |
  37. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  38. | :ref:`Transform2D<class_transform2d>` | :ref:`area_get_transform<class_Physics2DServer_area_get_transform>` **(** :ref:`RID<class_rid>` area **)** const |
  39. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  40. | void | :ref:`area_remove_shape<class_Physics2DServer_area_remove_shape>` **(** :ref:`RID<class_rid>` area, :ref:`int<class_int>` shape_idx **)** |
  41. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  42. | void | :ref:`area_set_collision_layer<class_Physics2DServer_area_set_collision_layer>` **(** :ref:`RID<class_rid>` area, :ref:`int<class_int>` layer **)** |
  43. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  44. | void | :ref:`area_set_collision_mask<class_Physics2DServer_area_set_collision_mask>` **(** :ref:`RID<class_rid>` area, :ref:`int<class_int>` mask **)** |
  45. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  46. | void | :ref:`area_set_monitor_callback<class_Physics2DServer_area_set_monitor_callback>` **(** :ref:`RID<class_rid>` area, :ref:`Object<class_object>` receiver, :ref:`String<class_string>` method **)** |
  47. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  48. | void | :ref:`area_set_param<class_Physics2DServer_area_set_param>` **(** :ref:`RID<class_rid>` area, :ref:`int<class_int>` param, :ref:`Variant<class_variant>` value **)** |
  49. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  50. | void | :ref:`area_set_shape<class_Physics2DServer_area_set_shape>` **(** :ref:`RID<class_rid>` area, :ref:`int<class_int>` shape_idx, :ref:`RID<class_rid>` shape **)** |
  51. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  52. | void | :ref:`area_set_shape_disabled<class_Physics2DServer_area_set_shape_disabled>` **(** :ref:`RID<class_rid>` area, :ref:`int<class_int>` shape_idx, :ref:`bool<class_bool>` disable **)** |
  53. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  54. | void | :ref:`area_set_shape_transform<class_Physics2DServer_area_set_shape_transform>` **(** :ref:`RID<class_rid>` area, :ref:`int<class_int>` shape_idx, :ref:`Transform2D<class_transform2d>` transform **)** |
  55. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  56. | void | :ref:`area_set_space<class_Physics2DServer_area_set_space>` **(** :ref:`RID<class_rid>` area, :ref:`RID<class_rid>` space **)** |
  57. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  58. | void | :ref:`area_set_space_override_mode<class_Physics2DServer_area_set_space_override_mode>` **(** :ref:`RID<class_rid>` area, :ref:`int<class_int>` mode **)** |
  59. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  60. | void | :ref:`area_set_transform<class_Physics2DServer_area_set_transform>` **(** :ref:`RID<class_rid>` area, :ref:`Transform2D<class_transform2d>` transform **)** |
  61. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  62. | void | :ref:`body_add_collision_exception<class_Physics2DServer_body_add_collision_exception>` **(** :ref:`RID<class_rid>` body, :ref:`RID<class_rid>` excepted_body **)** |
  63. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  64. | void | :ref:`body_add_force<class_Physics2DServer_body_add_force>` **(** :ref:`RID<class_rid>` body, :ref:`Vector2<class_vector2>` offset, :ref:`Vector2<class_vector2>` force **)** |
  65. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  66. | void | :ref:`body_add_shape<class_Physics2DServer_body_add_shape>` **(** :ref:`RID<class_rid>` body, :ref:`RID<class_rid>` shape, :ref:`Transform2D<class_transform2d>` transform=Transform2D( 1, 0, 0, 1, 0, 0 ) **)** |
  67. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  68. | void | :ref:`body_apply_impulse<class_Physics2DServer_body_apply_impulse>` **(** :ref:`RID<class_rid>` body, :ref:`Vector2<class_vector2>` position, :ref:`Vector2<class_vector2>` impulse **)** |
  69. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  70. | void | :ref:`body_attach_object_instance_id<class_Physics2DServer_body_attach_object_instance_id>` **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` id **)** |
  71. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  72. | void | :ref:`body_clear_shapes<class_Physics2DServer_body_clear_shapes>` **(** :ref:`RID<class_rid>` body **)** |
  73. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  74. | :ref:`RID<class_rid>` | :ref:`body_create<class_Physics2DServer_body_create>` **(** **)** |
  75. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  76. | :ref:`int<class_int>` | :ref:`body_get_collision_layer<class_Physics2DServer_body_get_collision_layer>` **(** :ref:`RID<class_rid>` body **)** const |
  77. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  78. | :ref:`int<class_int>` | :ref:`body_get_collision_mask<class_Physics2DServer_body_get_collision_mask>` **(** :ref:`RID<class_rid>` body **)** const |
  79. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  80. | :ref:`int<class_int>` | :ref:`body_get_continuous_collision_detection_mode<class_Physics2DServer_body_get_continuous_collision_detection_mode>` **(** :ref:`RID<class_rid>` body **)** const |
  81. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  82. | :ref:`Physics2DDirectBodyState<class_physics2ddirectbodystate>` | :ref:`body_get_direct_state<class_Physics2DServer_body_get_direct_state>` **(** :ref:`RID<class_rid>` body **)** |
  83. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  84. | :ref:`int<class_int>` | :ref:`body_get_max_contacts_reported<class_Physics2DServer_body_get_max_contacts_reported>` **(** :ref:`RID<class_rid>` body **)** const |
  85. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  86. | :ref:`int<class_int>` | :ref:`body_get_mode<class_Physics2DServer_body_get_mode>` **(** :ref:`RID<class_rid>` body **)** const |
  87. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  88. | :ref:`int<class_int>` | :ref:`body_get_object_instance_id<class_Physics2DServer_body_get_object_instance_id>` **(** :ref:`RID<class_rid>` body **)** const |
  89. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  90. | :ref:`float<class_float>` | :ref:`body_get_param<class_Physics2DServer_body_get_param>` **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` param **)** const |
  91. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  92. | :ref:`RID<class_rid>` | :ref:`body_get_shape<class_Physics2DServer_body_get_shape>` **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` shape_idx **)** const |
  93. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  94. | :ref:`int<class_int>` | :ref:`body_get_shape_count<class_Physics2DServer_body_get_shape_count>` **(** :ref:`RID<class_rid>` body **)** const |
  95. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  96. | :ref:`Variant<class_variant>` | :ref:`body_get_shape_metadata<class_Physics2DServer_body_get_shape_metadata>` **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` shape_idx **)** const |
  97. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  98. | :ref:`Transform2D<class_transform2d>` | :ref:`body_get_shape_transform<class_Physics2DServer_body_get_shape_transform>` **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` shape_idx **)** const |
  99. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  100. | :ref:`RID<class_rid>` | :ref:`body_get_space<class_Physics2DServer_body_get_space>` **(** :ref:`RID<class_rid>` body **)** const |
  101. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  102. | :ref:`Variant<class_variant>` | :ref:`body_get_state<class_Physics2DServer_body_get_state>` **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` state **)** const |
  103. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  104. | :ref:`bool<class_bool>` | :ref:`body_is_omitting_force_integration<class_Physics2DServer_body_is_omitting_force_integration>` **(** :ref:`RID<class_rid>` body **)** const |
  105. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  106. | void | :ref:`body_remove_collision_exception<class_Physics2DServer_body_remove_collision_exception>` **(** :ref:`RID<class_rid>` body, :ref:`RID<class_rid>` excepted_body **)** |
  107. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  108. | void | :ref:`body_remove_shape<class_Physics2DServer_body_remove_shape>` **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` shape_idx **)** |
  109. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  110. | void | :ref:`body_set_axis_velocity<class_Physics2DServer_body_set_axis_velocity>` **(** :ref:`RID<class_rid>` body, :ref:`Vector2<class_vector2>` axis_velocity **)** |
  111. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  112. | void | :ref:`body_set_collision_layer<class_Physics2DServer_body_set_collision_layer>` **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` layer **)** |
  113. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  114. | void | :ref:`body_set_collision_mask<class_Physics2DServer_body_set_collision_mask>` **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` mask **)** |
  115. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  116. | void | :ref:`body_set_continuous_collision_detection_mode<class_Physics2DServer_body_set_continuous_collision_detection_mode>` **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` mode **)** |
  117. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  118. | void | :ref:`body_set_force_integration_callback<class_Physics2DServer_body_set_force_integration_callback>` **(** :ref:`RID<class_rid>` body, :ref:`Object<class_object>` receiver, :ref:`String<class_string>` method, :ref:`Variant<class_variant>` userdata=null **)** |
  119. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  120. | void | :ref:`body_set_max_contacts_reported<class_Physics2DServer_body_set_max_contacts_reported>` **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` amount **)** |
  121. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  122. | void | :ref:`body_set_mode<class_Physics2DServer_body_set_mode>` **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` mode **)** |
  123. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  124. | void | :ref:`body_set_omit_force_integration<class_Physics2DServer_body_set_omit_force_integration>` **(** :ref:`RID<class_rid>` body, :ref:`bool<class_bool>` enable **)** |
  125. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  126. | void | :ref:`body_set_param<class_Physics2DServer_body_set_param>` **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` param, :ref:`float<class_float>` value **)** |
  127. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  128. | void | :ref:`body_set_shape<class_Physics2DServer_body_set_shape>` **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` shape_idx, :ref:`RID<class_rid>` shape **)** |
  129. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  130. | void | :ref:`body_set_shape_as_one_way_collision<class_Physics2DServer_body_set_shape_as_one_way_collision>` **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` shape_idx, :ref:`bool<class_bool>` enable **)** |
  131. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  132. | void | :ref:`body_set_shape_disabled<class_Physics2DServer_body_set_shape_disabled>` **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` shape_idx, :ref:`bool<class_bool>` disable **)** |
  133. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  134. | void | :ref:`body_set_shape_metadata<class_Physics2DServer_body_set_shape_metadata>` **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` shape_idx, :ref:`Variant<class_variant>` metadata **)** |
  135. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  136. | void | :ref:`body_set_shape_transform<class_Physics2DServer_body_set_shape_transform>` **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` shape_idx, :ref:`Transform2D<class_transform2d>` transform **)** |
  137. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  138. | void | :ref:`body_set_space<class_Physics2DServer_body_set_space>` **(** :ref:`RID<class_rid>` body, :ref:`RID<class_rid>` space **)** |
  139. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  140. | void | :ref:`body_set_state<class_Physics2DServer_body_set_state>` **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` state, :ref:`Variant<class_variant>` value **)** |
  141. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  142. | :ref:`bool<class_bool>` | :ref:`body_test_motion<class_Physics2DServer_body_test_motion>` **(** :ref:`RID<class_rid>` body, :ref:`Transform2D<class_transform2d>` from, :ref:`Vector2<class_vector2>` motion, :ref:`float<class_float>` margin=0.08, :ref:`Physics2DTestMotionResult<class_physics2dtestmotionresult>` result=null **)** |
  143. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  144. | :ref:`RID<class_rid>` | :ref:`capsule_shape_create<class_Physics2DServer_capsule_shape_create>` **(** **)** |
  145. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  146. | :ref:`RID<class_rid>` | :ref:`circle_shape_create<class_Physics2DServer_circle_shape_create>` **(** **)** |
  147. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  148. | :ref:`RID<class_rid>` | :ref:`concave_polygon_shape_create<class_Physics2DServer_concave_polygon_shape_create>` **(** **)** |
  149. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  150. | :ref:`RID<class_rid>` | :ref:`convex_polygon_shape_create<class_Physics2DServer_convex_polygon_shape_create>` **(** **)** |
  151. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  152. | :ref:`RID<class_rid>` | :ref:`damped_spring_joint_create<class_Physics2DServer_damped_spring_joint_create>` **(** :ref:`Vector2<class_vector2>` anchor_a, :ref:`Vector2<class_vector2>` anchor_b, :ref:`RID<class_rid>` body_a, :ref:`RID<class_rid>` body_b **)** |
  153. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  154. | :ref:`float<class_float>` | :ref:`damped_string_joint_get_param<class_Physics2DServer_damped_string_joint_get_param>` **(** :ref:`RID<class_rid>` joint, :ref:`int<class_int>` param **)** const |
  155. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  156. | void | :ref:`damped_string_joint_set_param<class_Physics2DServer_damped_string_joint_set_param>` **(** :ref:`RID<class_rid>` joint, :ref:`int<class_int>` param, :ref:`float<class_float>` value **)** |
  157. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  158. | void | :ref:`free_rid<class_Physics2DServer_free_rid>` **(** :ref:`RID<class_rid>` rid **)** |
  159. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  160. | :ref:`int<class_int>` | :ref:`get_process_info<class_Physics2DServer_get_process_info>` **(** :ref:`int<class_int>` process_info **)** |
  161. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  162. | :ref:`RID<class_rid>` | :ref:`groove_joint_create<class_Physics2DServer_groove_joint_create>` **(** :ref:`Vector2<class_vector2>` groove1_a, :ref:`Vector2<class_vector2>` groove2_a, :ref:`Vector2<class_vector2>` anchor_b, :ref:`RID<class_rid>` body_a, :ref:`RID<class_rid>` body_b **)** |
  163. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  164. | :ref:`float<class_float>` | :ref:`joint_get_param<class_Physics2DServer_joint_get_param>` **(** :ref:`RID<class_rid>` joint, :ref:`int<class_int>` param **)** const |
  165. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  166. | :ref:`int<class_int>` | :ref:`joint_get_type<class_Physics2DServer_joint_get_type>` **(** :ref:`RID<class_rid>` joint **)** const |
  167. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  168. | void | :ref:`joint_set_param<class_Physics2DServer_joint_set_param>` **(** :ref:`RID<class_rid>` joint, :ref:`int<class_int>` param, :ref:`float<class_float>` value **)** |
  169. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  170. | :ref:`RID<class_rid>` | :ref:`line_shape_create<class_Physics2DServer_line_shape_create>` **(** **)** |
  171. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  172. | :ref:`RID<class_rid>` | :ref:`pin_joint_create<class_Physics2DServer_pin_joint_create>` **(** :ref:`Vector2<class_vector2>` anchor, :ref:`RID<class_rid>` body_a, :ref:`RID<class_rid>` body_b **)** |
  173. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  174. | :ref:`RID<class_rid>` | :ref:`ray_shape_create<class_Physics2DServer_ray_shape_create>` **(** **)** |
  175. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  176. | :ref:`RID<class_rid>` | :ref:`rectangle_shape_create<class_Physics2DServer_rectangle_shape_create>` **(** **)** |
  177. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  178. | :ref:`RID<class_rid>` | :ref:`segment_shape_create<class_Physics2DServer_segment_shape_create>` **(** **)** |
  179. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  180. | void | :ref:`set_active<class_Physics2DServer_set_active>` **(** :ref:`bool<class_bool>` active **)** |
  181. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  182. | :ref:`Variant<class_variant>` | :ref:`shape_get_data<class_Physics2DServer_shape_get_data>` **(** :ref:`RID<class_rid>` shape **)** const |
  183. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  184. | :ref:`int<class_int>` | :ref:`shape_get_type<class_Physics2DServer_shape_get_type>` **(** :ref:`RID<class_rid>` shape **)** const |
  185. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  186. | void | :ref:`shape_set_data<class_Physics2DServer_shape_set_data>` **(** :ref:`RID<class_rid>` shape, :ref:`Variant<class_variant>` data **)** |
  187. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  188. | :ref:`RID<class_rid>` | :ref:`space_create<class_Physics2DServer_space_create>` **(** **)** |
  189. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  190. | :ref:`Physics2DDirectSpaceState<class_physics2ddirectspacestate>` | :ref:`space_get_direct_state<class_Physics2DServer_space_get_direct_state>` **(** :ref:`RID<class_rid>` space **)** |
  191. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  192. | :ref:`float<class_float>` | :ref:`space_get_param<class_Physics2DServer_space_get_param>` **(** :ref:`RID<class_rid>` space, :ref:`int<class_int>` param **)** const |
  193. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  194. | :ref:`bool<class_bool>` | :ref:`space_is_active<class_Physics2DServer_space_is_active>` **(** :ref:`RID<class_rid>` space **)** const |
  195. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  196. | void | :ref:`space_set_active<class_Physics2DServer_space_set_active>` **(** :ref:`RID<class_rid>` space, :ref:`bool<class_bool>` active **)** |
  197. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  198. | void | :ref:`space_set_param<class_Physics2DServer_space_set_param>` **(** :ref:`RID<class_rid>` space, :ref:`int<class_int>` param, :ref:`float<class_float>` value **)** |
  199. +--------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  200. Enums
  201. -----
  202. .. _enum_Physics2DServer_CCDMode:
  203. enum **CCDMode**
  204. - **CCD_MODE_DISABLED** = **0** --- Disables continuous collision detection. This is the fastest way to detect body collisions, but can miss small, fast-moving objects.
  205. - **CCD_MODE_CAST_RAY** = **1** --- Enables continuous collision detection by raycasting. It is faster than shapecasting, but less precise.
  206. - **CCD_MODE_CAST_SHAPE** = **2** --- Enables continuous collision detection by shapecasting. It is the slowest CCD method, and the most precise.
  207. .. _enum_Physics2DServer_BodyState:
  208. enum **BodyState**
  209. - **BODY_STATE_TRANSFORM** = **0** --- Constant to set/get the current transform matrix of the body.
  210. - **BODY_STATE_LINEAR_VELOCITY** = **1** --- Constant to set/get the current linear velocity of the body.
  211. - **BODY_STATE_ANGULAR_VELOCITY** = **2** --- Constant to set/get the current angular velocity of the body.
  212. - **BODY_STATE_SLEEPING** = **3** --- Constant to sleep/wake up a body, or to get whether it is sleeping.
  213. - **BODY_STATE_CAN_SLEEP** = **4** --- Constant to set/get whether the body can sleep.
  214. .. _enum_Physics2DServer_ProcessInfo:
  215. enum **ProcessInfo**
  216. - **INFO_ACTIVE_OBJECTS** = **0** --- Constant to get the number of objects that are not sleeping.
  217. - **INFO_COLLISION_PAIRS** = **1** --- Constant to get the number of possible collisions.
  218. - **INFO_ISLAND_COUNT** = **2** --- Constant to get the number of space regions where a collision could occur.
  219. .. _enum_Physics2DServer_JointParam:
  220. enum **JointParam**
  221. - **JOINT_PARAM_BIAS** = **0**
  222. - **JOINT_PARAM_MAX_BIAS** = **1**
  223. - **JOINT_PARAM_MAX_FORCE** = **2**
  224. .. _enum_Physics2DServer_ShapeType:
  225. enum **ShapeType**
  226. - **SHAPE_LINE** = **0** --- This is the constant for creating line shapes. A line shape is an infinite line with an origin point, and a normal. Thus, it can be used for front/behind checks.
  227. - **SHAPE_RAY** = **1**
  228. - **SHAPE_SEGMENT** = **2** --- This is the constant for creating segment shapes. A segment shape is a line from a point A to a point B. It can be checked for intersections.
  229. - **SHAPE_CIRCLE** = **3** --- This is the constant for creating circle shapes. A circle shape only has a radius. It can be used for intersections and inside/outside checks.
  230. - **SHAPE_RECTANGLE** = **4** --- This is the constant for creating rectangle shapes. A rectangle shape is defined by a width and a height. It can be used for intersections and inside/outside checks.
  231. - **SHAPE_CAPSULE** = **5** --- This is the constant for creating capsule shapes. A capsule shape is defined by a radius and a length. It can be used for intersections and inside/outside checks.
  232. - **SHAPE_CONVEX_POLYGON** = **6** --- This is the constant for creating convex polygon shapes. A polygon is defined by a list of points. It can be used for intersections and inside/outside checks. Unlike the method :ref:`CollisionPolygon2D.set_polygon<class_CollisionPolygon2D_set_polygon>`, polygons modified with :ref:`shape_set_data<class_Physics2DServer_shape_set_data>` do not verify that the points supplied form is a convex polygon.
  233. - **SHAPE_CONCAVE_POLYGON** = **7** --- This is the constant for creating concave polygon shapes. A polygon is defined by a list of points. It can be used for intersections checks, but not for inside/outside checks.
  234. - **SHAPE_CUSTOM** = **8** --- This constant is used internally by the engine. Any attempt to create this kind of shape results in an error.
  235. .. _enum_Physics2DServer_AreaParameter:
  236. enum **AreaParameter**
  237. - **AREA_PARAM_GRAVITY** = **0** --- Constant to set/get gravity strength in an area.
  238. - **AREA_PARAM_GRAVITY_VECTOR** = **1** --- Constant to set/get gravity vector/center in an area.
  239. - **AREA_PARAM_GRAVITY_IS_POINT** = **2** --- Constant to set/get whether the gravity vector of an area is a direction, or a center point.
  240. - **AREA_PARAM_GRAVITY_DISTANCE_SCALE** = **3** --- Constant to set/get the falloff factor for point gravity of an area. The greater this value is, the faster the strength of gravity decreases with the square of distance.
  241. - **AREA_PARAM_GRAVITY_POINT_ATTENUATION** = **4** --- This constant was used to set/get the falloff factor for point gravity. It has been superseded by AREA_PARAM_GRAVITY_DISTANCE_SCALE.
  242. - **AREA_PARAM_LINEAR_DAMP** = **5** --- Constant to set/get the linear dampening factor of an area.
  243. - **AREA_PARAM_ANGULAR_DAMP** = **6** --- Constant to set/get the angular dampening factor of an area.
  244. - **AREA_PARAM_PRIORITY** = **7** --- Constant to set/get the priority (order of processing) of an area.
  245. .. _enum_Physics2DServer_AreaBodyStatus:
  246. enum **AreaBodyStatus**
  247. - **AREA_BODY_ADDED** = **0** --- The value of the first parameter and area callback function receives, when an object enters one of its shapes.
  248. - **AREA_BODY_REMOVED** = **1** --- The value of the first parameter and area callback function receives, when an object exits one of its shapes.
  249. .. _enum_Physics2DServer_BodyParameter:
  250. enum **BodyParameter**
  251. - **BODY_PARAM_BOUNCE** = **0** --- Constant to set/get a body's bounce factor.
  252. - **BODY_PARAM_FRICTION** = **1** --- Constant to set/get a body's friction.
  253. - **BODY_PARAM_MASS** = **2** --- Constant to set/get a body's mass.
  254. - **BODY_PARAM_INERTIA** = **3** --- Constant to set/get a body's inertia.
  255. - **BODY_PARAM_GRAVITY_SCALE** = **4** --- Constant to set/get a body's gravity multiplier.
  256. - **BODY_PARAM_LINEAR_DAMP** = **5** --- Constant to set/get a body's linear dampening factor.
  257. - **BODY_PARAM_ANGULAR_DAMP** = **6** --- Constant to set/get a body's angular dampening factor.
  258. - **BODY_PARAM_MAX** = **7** --- This is the last ID for body parameters. Any attempt to set this property is ignored. Any attempt to get it returns 0.
  259. .. _enum_Physics2DServer_BodyMode:
  260. enum **BodyMode**
  261. - **BODY_MODE_STATIC** = **0** --- Constant for static bodies.
  262. - **BODY_MODE_KINEMATIC** = **1** --- Constant for kinematic bodies.
  263. - **BODY_MODE_RIGID** = **2** --- Constant for rigid bodies.
  264. - **BODY_MODE_CHARACTER** = **3** --- Constant for rigid bodies in character mode. In this mode, a body can not rotate, and only its linear velocity is affected by physics.
  265. .. _enum_Physics2DServer_DampedStringParam:
  266. enum **DampedStringParam**
  267. - **DAMPED_STRING_REST_LENGTH** = **0** --- Set the resting length of the spring joint. The joint will always try to go to back this length when pulled apart.
  268. - **DAMPED_STRING_STIFFNESS** = **1** --- Set the stiffness of the spring joint. The joint applies a force equal to the stiffness times the distance from its resting length.
  269. - **DAMPED_STRING_DAMPING** = **2** --- Set the damping ratio of the spring joint. A value of 0 indicates an undamped spring, while 1 causes the system to reach equilibrium as fast as possible (critical damping).
  270. .. _enum_Physics2DServer_SpaceParameter:
  271. enum **SpaceParameter**
  272. - **SPACE_PARAM_CONTACT_RECYCLE_RADIUS** = **0** --- Constant to set/get the maximum distance a pair of bodies has to move before their collision status has to be recalculated.
  273. - **SPACE_PARAM_CONTACT_MAX_SEPARATION** = **1** --- Constant to set/get the maximum distance a shape can be from another before they are considered separated.
  274. - **SPACE_PARAM_BODY_MAX_ALLOWED_PENETRATION** = **2** --- Constant to set/get the maximum distance a shape can penetrate another shape before it is considered a collision.
  275. - **SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD** = **3** --- Constant to set/get the threshold linear velocity of activity. A body marked as potentially inactive for both linear and angular velocity will be put to sleep after the time given.
  276. - **SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD** = **4** --- Constant to set/get the threshold angular velocity of activity. A body marked as potentially inactive for both linear and angular velocity will be put to sleep after the time given.
  277. - **SPACE_PARAM_BODY_TIME_TO_SLEEP** = **5** --- Constant to set/get the maximum time of activity. A body marked as potentially inactive for both linear and angular velocity will be put to sleep after this time.
  278. - **SPACE_PARAM_CONSTRAINT_DEFAULT_BIAS** = **6** --- Constant to set/get the default solver bias for all physics constraints. A solver bias is a factor controlling how much two objects "rebound", after violating a constraint, to avoid leaving them in that state because of numerical imprecision.
  279. .. _enum_Physics2DServer_AreaSpaceOverrideMode:
  280. enum **AreaSpaceOverrideMode**
  281. - **AREA_SPACE_OVERRIDE_DISABLED** = **0** --- This area does not affect gravity/damp. These are generally areas that exist only to detect collisions, and objects entering or exiting them.
  282. - **AREA_SPACE_OVERRIDE_COMBINE** = **1** --- This area adds its gravity/damp values to whatever has been calculated so far. This way, many overlapping areas can combine their physics to make interesting effects.
  283. - **AREA_SPACE_OVERRIDE_COMBINE_REPLACE** = **2** --- This area adds its gravity/damp values to whatever has been calculated so far. Then stops taking into account the rest of the areas, even the default one.
  284. - **AREA_SPACE_OVERRIDE_REPLACE** = **3** --- This area replaces any gravity/damp, even the default one, and stops taking into account the rest of the areas.
  285. - **AREA_SPACE_OVERRIDE_REPLACE_COMBINE** = **4** --- This area replaces any gravity/damp calculated so far, but keeps calculating the rest of the areas, down to the default one.
  286. .. _enum_Physics2DServer_JointType:
  287. enum **JointType**
  288. - **JOINT_PIN** = **0** --- Constant to create pin joints.
  289. - **JOINT_GROOVE** = **1** --- Constant to create groove joints.
  290. - **JOINT_DAMPED_SPRING** = **2** --- Constant to create damped spring joints.
  291. Description
  292. -----------
  293. Physics 2D Server is the server responsible for all 2D physics. It can create many kinds of physics objects, but does not insert them on the node tree.
  294. Member Function Description
  295. ---------------------------
  296. .. _class_Physics2DServer_area_add_shape:
  297. - void **area_add_shape** **(** :ref:`RID<class_rid>` area, :ref:`RID<class_rid>` shape, :ref:`Transform2D<class_transform2d>` transform=Transform2D( 1, 0, 0, 1, 0, 0 ) **)**
  298. Adds a shape to the area, along with a transform matrix. Shapes are usually referenced by their index, so you should track which shape has a given index.
  299. .. _class_Physics2DServer_area_attach_object_instance_id:
  300. - void **area_attach_object_instance_id** **(** :ref:`RID<class_rid>` area, :ref:`int<class_int>` id **)**
  301. Assigns the area to a descendant of :ref:`Object<class_object>`, so it can exist in the node tree.
  302. .. _class_Physics2DServer_area_clear_shapes:
  303. - void **area_clear_shapes** **(** :ref:`RID<class_rid>` area **)**
  304. Removes all shapes from an area. It does not delete the shapes, so they can be reassigned later.
  305. .. _class_Physics2DServer_area_create:
  306. - :ref:`RID<class_rid>` **area_create** **(** **)**
  307. Creates an :ref:`Area2D<class_area2d>`.
  308. .. _class_Physics2DServer_area_get_object_instance_id:
  309. - :ref:`int<class_int>` **area_get_object_instance_id** **(** :ref:`RID<class_rid>` area **)** const
  310. Gets the instance ID of the object the area is assigned to.
  311. .. _class_Physics2DServer_area_get_param:
  312. - :ref:`Variant<class_variant>` **area_get_param** **(** :ref:`RID<class_rid>` area, :ref:`int<class_int>` param **)** const
  313. Returns an area parameter value. A list of available parameters is on the AREA_PARAM\_\* constants.
  314. .. _class_Physics2DServer_area_get_shape:
  315. - :ref:`RID<class_rid>` **area_get_shape** **(** :ref:`RID<class_rid>` area, :ref:`int<class_int>` shape_idx **)** const
  316. Returns the :ref:`RID<class_rid>` of the nth shape of an area.
  317. .. _class_Physics2DServer_area_get_shape_count:
  318. - :ref:`int<class_int>` **area_get_shape_count** **(** :ref:`RID<class_rid>` area **)** const
  319. Returns the number of shapes assigned to an area.
  320. .. _class_Physics2DServer_area_get_shape_transform:
  321. - :ref:`Transform2D<class_transform2d>` **area_get_shape_transform** **(** :ref:`RID<class_rid>` area, :ref:`int<class_int>` shape_idx **)** const
  322. Returns the transform matrix of a shape within an area.
  323. .. _class_Physics2DServer_area_get_space:
  324. - :ref:`RID<class_rid>` **area_get_space** **(** :ref:`RID<class_rid>` area **)** const
  325. Returns the space assigned to the area.
  326. .. _class_Physics2DServer_area_get_space_override_mode:
  327. - :ref:`int<class_int>` **area_get_space_override_mode** **(** :ref:`RID<class_rid>` area **)** const
  328. Returns the space override mode for the area.
  329. .. _class_Physics2DServer_area_get_transform:
  330. - :ref:`Transform2D<class_transform2d>` **area_get_transform** **(** :ref:`RID<class_rid>` area **)** const
  331. Returns the transform matrix for an area.
  332. .. _class_Physics2DServer_area_remove_shape:
  333. - void **area_remove_shape** **(** :ref:`RID<class_rid>` area, :ref:`int<class_int>` shape_idx **)**
  334. Removes a shape from an area. It does not delete the shape, so it can be reassigned later.
  335. .. _class_Physics2DServer_area_set_collision_layer:
  336. - void **area_set_collision_layer** **(** :ref:`RID<class_rid>` area, :ref:`int<class_int>` layer **)**
  337. Assigns the area to one or many physics layers.
  338. .. _class_Physics2DServer_area_set_collision_mask:
  339. - void **area_set_collision_mask** **(** :ref:`RID<class_rid>` area, :ref:`int<class_int>` mask **)**
  340. Sets which physics layers the area will monitor.
  341. .. _class_Physics2DServer_area_set_monitor_callback:
  342. - void **area_set_monitor_callback** **(** :ref:`RID<class_rid>` area, :ref:`Object<class_object>` receiver, :ref:`String<class_string>` method **)**
  343. Sets the function to call when any body/area enters or exits the area. This callback will be called for any object interacting with the area, and takes five parameters:
  344. 1: AREA_BODY_ADDED or AREA_BODY_REMOVED, depending on whether the object entered or exited the area.
  345. 2: :ref:`RID<class_rid>` of the object that entered/exited the area.
  346. 3: Instance ID of the object that entered/exited the area.
  347. 4: The shape index of the object that entered/exited the area.
  348. 5: The shape index of the area where the object entered/exited.
  349. .. _class_Physics2DServer_area_set_param:
  350. - void **area_set_param** **(** :ref:`RID<class_rid>` area, :ref:`int<class_int>` param, :ref:`Variant<class_variant>` value **)**
  351. Sets the value for an area parameter. A list of available parameters is on the AREA_PARAM\_\* constants.
  352. .. _class_Physics2DServer_area_set_shape:
  353. - void **area_set_shape** **(** :ref:`RID<class_rid>` area, :ref:`int<class_int>` shape_idx, :ref:`RID<class_rid>` shape **)**
  354. Substitutes a given area shape by another. The old shape is selected by its index, the new one by its :ref:`RID<class_rid>`.
  355. .. _class_Physics2DServer_area_set_shape_disabled:
  356. - void **area_set_shape_disabled** **(** :ref:`RID<class_rid>` area, :ref:`int<class_int>` shape_idx, :ref:`bool<class_bool>` disable **)**
  357. Disables a given shape in an area.
  358. .. _class_Physics2DServer_area_set_shape_transform:
  359. - void **area_set_shape_transform** **(** :ref:`RID<class_rid>` area, :ref:`int<class_int>` shape_idx, :ref:`Transform2D<class_transform2d>` transform **)**
  360. Sets the transform matrix for an area shape.
  361. .. _class_Physics2DServer_area_set_space:
  362. - void **area_set_space** **(** :ref:`RID<class_rid>` area, :ref:`RID<class_rid>` space **)**
  363. Assigns a space to the area.
  364. .. _class_Physics2DServer_area_set_space_override_mode:
  365. - void **area_set_space_override_mode** **(** :ref:`RID<class_rid>` area, :ref:`int<class_int>` mode **)**
  366. Sets the space override mode for the area. The modes are described in the constants AREA_SPACE_OVERRIDE\_\*.
  367. .. _class_Physics2DServer_area_set_transform:
  368. - void **area_set_transform** **(** :ref:`RID<class_rid>` area, :ref:`Transform2D<class_transform2d>` transform **)**
  369. Sets the transform matrix for an area.
  370. .. _class_Physics2DServer_body_add_collision_exception:
  371. - void **body_add_collision_exception** **(** :ref:`RID<class_rid>` body, :ref:`RID<class_rid>` excepted_body **)**
  372. Adds a body to the list of bodies exempt from collisions.
  373. .. _class_Physics2DServer_body_add_force:
  374. - void **body_add_force** **(** :ref:`RID<class_rid>` body, :ref:`Vector2<class_vector2>` offset, :ref:`Vector2<class_vector2>` force **)**
  375. Adds a positioned force to the applied force and torque. As with :ref:`body_apply_impulse<class_Physics2DServer_body_apply_impulse>`, both the force and the offset from the body origin are in global coordinates. A force differs from an impulse in that, while the two are forces, the impulse clears itself after being applied.
  376. .. _class_Physics2DServer_body_add_shape:
  377. - void **body_add_shape** **(** :ref:`RID<class_rid>` body, :ref:`RID<class_rid>` shape, :ref:`Transform2D<class_transform2d>` transform=Transform2D( 1, 0, 0, 1, 0, 0 ) **)**
  378. Adds a shape to the body, along with a transform matrix. Shapes are usually referenced by their index, so you should track which shape has a given index.
  379. .. _class_Physics2DServer_body_apply_impulse:
  380. - void **body_apply_impulse** **(** :ref:`RID<class_rid>` body, :ref:`Vector2<class_vector2>` position, :ref:`Vector2<class_vector2>` impulse **)**
  381. Adds a positioned impulse to the applied force and torque. Both the force and the offset from the body origin are in global coordinates.
  382. .. _class_Physics2DServer_body_attach_object_instance_id:
  383. - void **body_attach_object_instance_id** **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` id **)**
  384. Assigns the area to a descendant of :ref:`Object<class_object>`, so it can exist in the node tree.
  385. .. _class_Physics2DServer_body_clear_shapes:
  386. - void **body_clear_shapes** **(** :ref:`RID<class_rid>` body **)**
  387. Removes all shapes from a body.
  388. .. _class_Physics2DServer_body_create:
  389. - :ref:`RID<class_rid>` **body_create** **(** **)**
  390. Creates a physics body. The first parameter can be any value from constants BODY_MODE\*, for the type of body created. Additionally, the body can be created in sleeping state to save processing time.
  391. .. _class_Physics2DServer_body_get_collision_layer:
  392. - :ref:`int<class_int>` **body_get_collision_layer** **(** :ref:`RID<class_rid>` body **)** const
  393. Returns the physics layer or layers a body belongs to.
  394. .. _class_Physics2DServer_body_get_collision_mask:
  395. - :ref:`int<class_int>` **body_get_collision_mask** **(** :ref:`RID<class_rid>` body **)** const
  396. Returns the physics layer or layers a body can collide with.
  397. .. _class_Physics2DServer_body_get_continuous_collision_detection_mode:
  398. - :ref:`int<class_int>` **body_get_continuous_collision_detection_mode** **(** :ref:`RID<class_rid>` body **)** const
  399. Returns the continuous collision detection mode.
  400. .. _class_Physics2DServer_body_get_direct_state:
  401. - :ref:`Physics2DDirectBodyState<class_physics2ddirectbodystate>` **body_get_direct_state** **(** :ref:`RID<class_rid>` body **)**
  402. Returns the :ref:`Physics2DDirectBodyState<class_physics2ddirectbodystate>` of the body.
  403. .. _class_Physics2DServer_body_get_max_contacts_reported:
  404. - :ref:`int<class_int>` **body_get_max_contacts_reported** **(** :ref:`RID<class_rid>` body **)** const
  405. Returns the maximum contacts that can be reported. See :ref:`body_set_max_contacts_reported<class_Physics2DServer_body_set_max_contacts_reported>`.
  406. .. _class_Physics2DServer_body_get_mode:
  407. - :ref:`int<class_int>` **body_get_mode** **(** :ref:`RID<class_rid>` body **)** const
  408. Returns the body mode.
  409. .. _class_Physics2DServer_body_get_object_instance_id:
  410. - :ref:`int<class_int>` **body_get_object_instance_id** **(** :ref:`RID<class_rid>` body **)** const
  411. Gets the instance ID of the object the area is assigned to.
  412. .. _class_Physics2DServer_body_get_param:
  413. - :ref:`float<class_float>` **body_get_param** **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` param **)** const
  414. Returns the value of a body parameter. A list of available parameters is on the BODY_PARAM\_\* constants.
  415. .. _class_Physics2DServer_body_get_shape:
  416. - :ref:`RID<class_rid>` **body_get_shape** **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` shape_idx **)** const
  417. Returns the :ref:`RID<class_rid>` of the nth shape of a body.
  418. .. _class_Physics2DServer_body_get_shape_count:
  419. - :ref:`int<class_int>` **body_get_shape_count** **(** :ref:`RID<class_rid>` body **)** const
  420. Returns the number of shapes assigned to a body.
  421. .. _class_Physics2DServer_body_get_shape_metadata:
  422. - :ref:`Variant<class_variant>` **body_get_shape_metadata** **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` shape_idx **)** const
  423. Returns the metadata of a shape of a body.
  424. .. _class_Physics2DServer_body_get_shape_transform:
  425. - :ref:`Transform2D<class_transform2d>` **body_get_shape_transform** **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` shape_idx **)** const
  426. Returns the transform matrix of a body shape.
  427. .. _class_Physics2DServer_body_get_space:
  428. - :ref:`RID<class_rid>` **body_get_space** **(** :ref:`RID<class_rid>` body **)** const
  429. Returns the :ref:`RID<class_rid>` of the space assigned to a body.
  430. .. _class_Physics2DServer_body_get_state:
  431. - :ref:`Variant<class_variant>` **body_get_state** **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` state **)** const
  432. Returns a body state.
  433. .. _class_Physics2DServer_body_is_omitting_force_integration:
  434. - :ref:`bool<class_bool>` **body_is_omitting_force_integration** **(** :ref:`RID<class_rid>` body **)** const
  435. Returns whether a body uses a callback function to calculate its own physics (see :ref:`body_set_force_integration_callback<class_Physics2DServer_body_set_force_integration_callback>`).
  436. .. _class_Physics2DServer_body_remove_collision_exception:
  437. - void **body_remove_collision_exception** **(** :ref:`RID<class_rid>` body, :ref:`RID<class_rid>` excepted_body **)**
  438. Removes a body from the list of bodies exempt from collisions.
  439. .. _class_Physics2DServer_body_remove_shape:
  440. - void **body_remove_shape** **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` shape_idx **)**
  441. Removes a shape from a body. The shape is not deleted, so it can be reused afterwards.
  442. .. _class_Physics2DServer_body_set_axis_velocity:
  443. - void **body_set_axis_velocity** **(** :ref:`RID<class_rid>` body, :ref:`Vector2<class_vector2>` axis_velocity **)**
  444. Sets an axis velocity. The velocity in the given vector axis will be set as the given vector length. This is useful for jumping behavior.
  445. .. _class_Physics2DServer_body_set_collision_layer:
  446. - void **body_set_collision_layer** **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` layer **)**
  447. Sets the physics layer or layers a body belongs to.
  448. .. _class_Physics2DServer_body_set_collision_mask:
  449. - void **body_set_collision_mask** **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` mask **)**
  450. Sets the physics layer or layers a body can collide with.
  451. .. _class_Physics2DServer_body_set_continuous_collision_detection_mode:
  452. - void **body_set_continuous_collision_detection_mode** **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` mode **)**
  453. Sets the continuous collision detection mode from any of the CCD_MODE\_\* constants.
  454. Continuous collision detection tries to predict where a moving body will collide, instead of moving it and correcting its movement if it collided.
  455. .. _class_Physics2DServer_body_set_force_integration_callback:
  456. - void **body_set_force_integration_callback** **(** :ref:`RID<class_rid>` body, :ref:`Object<class_object>` receiver, :ref:`String<class_string>` method, :ref:`Variant<class_variant>` userdata=null **)**
  457. Sets the function used to calculate physics for an object, if that object allows it (see :ref:`body_set_omit_force integration<class_Physics2DServer_body_set_omit_force integration>`).
  458. .. _class_Physics2DServer_body_set_max_contacts_reported:
  459. - void **body_set_max_contacts_reported** **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` amount **)**
  460. Sets the maximum contacts to report. Bodies can keep a log of the contacts with other bodies, this is enabled by setting the maximum amount of contacts reported to a number greater than 0.
  461. .. _class_Physics2DServer_body_set_mode:
  462. - void **body_set_mode** **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` mode **)**
  463. Sets the body mode, from one of the constants BODY_MODE\*.
  464. .. _class_Physics2DServer_body_set_omit_force_integration:
  465. - void **body_set_omit_force_integration** **(** :ref:`RID<class_rid>` body, :ref:`bool<class_bool>` enable **)**
  466. Sets whether a body uses a callback function to calculate its own physics (see :ref:`body_set_force_integration_callback<class_Physics2DServer_body_set_force_integration_callback>`).
  467. .. _class_Physics2DServer_body_set_param:
  468. - void **body_set_param** **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` param, :ref:`float<class_float>` value **)**
  469. Sets a body parameter. A list of available parameters is on the BODY_PARAM\_\* constants.
  470. .. _class_Physics2DServer_body_set_shape:
  471. - void **body_set_shape** **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` shape_idx, :ref:`RID<class_rid>` shape **)**
  472. Substitutes a given body shape by another. The old shape is selected by its index, the new one by its :ref:`RID<class_rid>`.
  473. .. _class_Physics2DServer_body_set_shape_as_one_way_collision:
  474. - void **body_set_shape_as_one_way_collision** **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` shape_idx, :ref:`bool<class_bool>` enable **)**
  475. Enables one way collision on body if ``enable`` is ``true``.
  476. .. _class_Physics2DServer_body_set_shape_disabled:
  477. - void **body_set_shape_disabled** **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` shape_idx, :ref:`bool<class_bool>` disable **)**
  478. Disables shape in body if ``disable`` is ``true``.
  479. .. _class_Physics2DServer_body_set_shape_metadata:
  480. - void **body_set_shape_metadata** **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` shape_idx, :ref:`Variant<class_variant>` metadata **)**
  481. Sets metadata of a shape within a body. This metadata is different from :ref:`Object.set_meta<class_Object_set_meta>`, and can be retrieved on shape queries.
  482. .. _class_Physics2DServer_body_set_shape_transform:
  483. - void **body_set_shape_transform** **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` shape_idx, :ref:`Transform2D<class_transform2d>` transform **)**
  484. Sets the transform matrix for a body shape.
  485. .. _class_Physics2DServer_body_set_space:
  486. - void **body_set_space** **(** :ref:`RID<class_rid>` body, :ref:`RID<class_rid>` space **)**
  487. Assigns a space to the body (see :ref:`create_space<class_Physics2DServer_create_space>`).
  488. .. _class_Physics2DServer_body_set_state:
  489. - void **body_set_state** **(** :ref:`RID<class_rid>` body, :ref:`int<class_int>` state, :ref:`Variant<class_variant>` value **)**
  490. Sets a body state (see BODY_STATE\* constants).
  491. .. _class_Physics2DServer_body_test_motion:
  492. - :ref:`bool<class_bool>` **body_test_motion** **(** :ref:`RID<class_rid>` body, :ref:`Transform2D<class_transform2d>` from, :ref:`Vector2<class_vector2>` motion, :ref:`float<class_float>` margin=0.08, :ref:`Physics2DTestMotionResult<class_physics2dtestmotionresult>` result=null **)**
  493. Returns whether a body can move from a given point in a given direction. Apart from the boolean return value, a :ref:`Physics2DTestMotionResult<class_physics2dtestmotionresult>` can be passed to return additional information in.
  494. .. _class_Physics2DServer_capsule_shape_create:
  495. - :ref:`RID<class_rid>` **capsule_shape_create** **(** **)**
  496. .. _class_Physics2DServer_circle_shape_create:
  497. - :ref:`RID<class_rid>` **circle_shape_create** **(** **)**
  498. .. _class_Physics2DServer_concave_polygon_shape_create:
  499. - :ref:`RID<class_rid>` **concave_polygon_shape_create** **(** **)**
  500. .. _class_Physics2DServer_convex_polygon_shape_create:
  501. - :ref:`RID<class_rid>` **convex_polygon_shape_create** **(** **)**
  502. .. _class_Physics2DServer_damped_spring_joint_create:
  503. - :ref:`RID<class_rid>` **damped_spring_joint_create** **(** :ref:`Vector2<class_vector2>` anchor_a, :ref:`Vector2<class_vector2>` anchor_b, :ref:`RID<class_rid>` body_a, :ref:`RID<class_rid>` body_b **)**
  504. Creates a damped spring joint between two bodies. If not specified, the second body is assumed to be the joint itself.
  505. .. _class_Physics2DServer_damped_string_joint_get_param:
  506. - :ref:`float<class_float>` **damped_string_joint_get_param** **(** :ref:`RID<class_rid>` joint, :ref:`int<class_int>` param **)** const
  507. Returns the value of a damped spring joint parameter.
  508. .. _class_Physics2DServer_damped_string_joint_set_param:
  509. - void **damped_string_joint_set_param** **(** :ref:`RID<class_rid>` joint, :ref:`int<class_int>` param, :ref:`float<class_float>` value **)**
  510. Sets a damped spring joint parameter. Parameters are explained in the DAMPED_STRING\* constants.
  511. .. _class_Physics2DServer_free_rid:
  512. - void **free_rid** **(** :ref:`RID<class_rid>` rid **)**
  513. Destroys any of the objects created by Physics2DServer. If the :ref:`RID<class_rid>` passed is not one of the objects that can be created by Physics2DServer, an error will be sent to the console.
  514. .. _class_Physics2DServer_get_process_info:
  515. - :ref:`int<class_int>` **get_process_info** **(** :ref:`int<class_int>` process_info **)**
  516. Returns information about the current state of the 2D physics engine. The states are listed under the INFO\_\* constants.
  517. .. _class_Physics2DServer_groove_joint_create:
  518. - :ref:`RID<class_rid>` **groove_joint_create** **(** :ref:`Vector2<class_vector2>` groove1_a, :ref:`Vector2<class_vector2>` groove2_a, :ref:`Vector2<class_vector2>` anchor_b, :ref:`RID<class_rid>` body_a, :ref:`RID<class_rid>` body_b **)**
  519. Creates a groove joint between two bodies. If not specified, the bodyies are assumed to be the joint itself.
  520. .. _class_Physics2DServer_joint_get_param:
  521. - :ref:`float<class_float>` **joint_get_param** **(** :ref:`RID<class_rid>` joint, :ref:`int<class_int>` param **)** const
  522. Returns the value of a joint parameter.
  523. .. _class_Physics2DServer_joint_get_type:
  524. - :ref:`int<class_int>` **joint_get_type** **(** :ref:`RID<class_rid>` joint **)** const
  525. Returns the type of a joint (see JOINT\_\* constants).
  526. .. _class_Physics2DServer_joint_set_param:
  527. - void **joint_set_param** **(** :ref:`RID<class_rid>` joint, :ref:`int<class_int>` param, :ref:`float<class_float>` value **)**
  528. Sets a joint parameter. Parameters are explained in the JOINT_PARAM\* constants.
  529. .. _class_Physics2DServer_line_shape_create:
  530. - :ref:`RID<class_rid>` **line_shape_create** **(** **)**
  531. .. _class_Physics2DServer_pin_joint_create:
  532. - :ref:`RID<class_rid>` **pin_joint_create** **(** :ref:`Vector2<class_vector2>` anchor, :ref:`RID<class_rid>` body_a, :ref:`RID<class_rid>` body_b **)**
  533. Creates a pin joint between two bodies. If not specified, the second body is assumed to be the joint itself.
  534. .. _class_Physics2DServer_ray_shape_create:
  535. - :ref:`RID<class_rid>` **ray_shape_create** **(** **)**
  536. .. _class_Physics2DServer_rectangle_shape_create:
  537. - :ref:`RID<class_rid>` **rectangle_shape_create** **(** **)**
  538. .. _class_Physics2DServer_segment_shape_create:
  539. - :ref:`RID<class_rid>` **segment_shape_create** **(** **)**
  540. .. _class_Physics2DServer_set_active:
  541. - void **set_active** **(** :ref:`bool<class_bool>` active **)**
  542. Activates or deactivates the 2D physics engine.
  543. .. _class_Physics2DServer_shape_get_data:
  544. - :ref:`Variant<class_variant>` **shape_get_data** **(** :ref:`RID<class_rid>` shape **)** const
  545. Returns the shape data.
  546. .. _class_Physics2DServer_shape_get_type:
  547. - :ref:`int<class_int>` **shape_get_type** **(** :ref:`RID<class_rid>` shape **)** const
  548. Returns the type of shape (see SHAPE\_\* constants).
  549. .. _class_Physics2DServer_shape_set_data:
  550. - void **shape_set_data** **(** :ref:`RID<class_rid>` shape, :ref:`Variant<class_variant>` data **)**
  551. Sets the shape data that defines its shape and size. The data to be passed depends on the kind of shape created :ref:`shape_get_type<class_Physics2DServer_shape_get_type>`.
  552. .. _class_Physics2DServer_space_create:
  553. - :ref:`RID<class_rid>` **space_create** **(** **)**
  554. Creates a space. A space is a collection of parameters for the physics engine that can be assigned to an area or a body. It can be assigned to an area with :ref:`area_set_space<class_Physics2DServer_area_set_space>`, or to a body with :ref:`body_set_space<class_Physics2DServer_body_set_space>`.
  555. .. _class_Physics2DServer_space_get_direct_state:
  556. - :ref:`Physics2DDirectSpaceState<class_physics2ddirectspacestate>` **space_get_direct_state** **(** :ref:`RID<class_rid>` space **)**
  557. Returns the state of a space, a :ref:`Physics2DDirectSpaceState<class_physics2ddirectspacestate>`. This object can be used to make collision/intersection queries.
  558. .. _class_Physics2DServer_space_get_param:
  559. - :ref:`float<class_float>` **space_get_param** **(** :ref:`RID<class_rid>` space, :ref:`int<class_int>` param **)** const
  560. Returns the value of a space parameter.
  561. .. _class_Physics2DServer_space_is_active:
  562. - :ref:`bool<class_bool>` **space_is_active** **(** :ref:`RID<class_rid>` space **)** const
  563. Returns whether the space is active.
  564. .. _class_Physics2DServer_space_set_active:
  565. - void **space_set_active** **(** :ref:`RID<class_rid>` space, :ref:`bool<class_bool>` active **)**
  566. Marks a space as active. It will not have an effect, unless it is assigned to an area or body.
  567. .. _class_Physics2DServer_space_set_param:
  568. - void **space_set_param** **(** :ref:`RID<class_rid>` space, :ref:`int<class_int>` param, :ref:`float<class_float>` value **)**
  569. Sets the value for a space parameter. A list of available parameters is on the SPACE_PARAM\_\* constants.