class_physicsdirectspacestate3dextension.rst 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176
  1. :github_url: hide
  2. .. DO NOT EDIT THIS FILE!!!
  3. .. Generated automatically from Godot engine sources.
  4. .. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py.
  5. .. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/PhysicsDirectSpaceState3DExtension.xml.
  6. .. _class_PhysicsDirectSpaceState3DExtension:
  7. PhysicsDirectSpaceState3DExtension
  8. ==================================
  9. **Inherits:** :ref:`PhysicsDirectSpaceState3D<class_PhysicsDirectSpaceState3D>` **<** :ref:`Object<class_Object>`
  10. Provides virtual methods that can be overridden to create custom :ref:`PhysicsDirectSpaceState3D<class_PhysicsDirectSpaceState3D>` implementations.
  11. .. rst-class:: classref-introduction-group
  12. Description
  13. -----------
  14. This class extends :ref:`PhysicsDirectSpaceState3D<class_PhysicsDirectSpaceState3D>` by providing additional virtual methods that can be overridden. When these methods are overridden, they will be called instead of the internal methods of the physics server.
  15. Intended for use with GDExtension to create custom implementations of :ref:`PhysicsDirectSpaceState3D<class_PhysicsDirectSpaceState3D>`.
  16. .. rst-class:: classref-reftable-group
  17. Methods
  18. -------
  19. .. table::
  20. :widths: auto
  21. +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  22. | :ref:`bool<class_bool>` | :ref:`_cast_motion<class_PhysicsDirectSpaceState3DExtension_private_method__cast_motion>` **(** :ref:`RID<class_RID>` shape_rid, :ref:`Transform3D<class_Transform3D>` transform, :ref:`Vector3<class_Vector3>` motion, :ref:`float<class_float>` margin, :ref:`int<class_int>` collision_mask, :ref:`bool<class_bool>` collide_with_bodies, :ref:`bool<class_bool>` collide_with_areas, float* closest_safe, float* closest_unsafe, PhysicsServer3DExtensionShapeRestInfo* info **)** |virtual| |
  23. +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  24. | :ref:`bool<class_bool>` | :ref:`_collide_shape<class_PhysicsDirectSpaceState3DExtension_private_method__collide_shape>` **(** :ref:`RID<class_RID>` shape_rid, :ref:`Transform3D<class_Transform3D>` transform, :ref:`Vector3<class_Vector3>` motion, :ref:`float<class_float>` margin, :ref:`int<class_int>` collision_mask, :ref:`bool<class_bool>` collide_with_bodies, :ref:`bool<class_bool>` collide_with_areas, void* results, :ref:`int<class_int>` max_results, int32_t* result_count **)** |virtual| |
  25. +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  26. | :ref:`Vector3<class_Vector3>` | :ref:`_get_closest_point_to_object_volume<class_PhysicsDirectSpaceState3DExtension_private_method__get_closest_point_to_object_volume>` **(** :ref:`RID<class_RID>` object, :ref:`Vector3<class_Vector3>` point **)** |virtual| |const| |
  27. +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  28. | :ref:`int<class_int>` | :ref:`_intersect_point<class_PhysicsDirectSpaceState3DExtension_private_method__intersect_point>` **(** :ref:`Vector3<class_Vector3>` position, :ref:`int<class_int>` collision_mask, :ref:`bool<class_bool>` collide_with_bodies, :ref:`bool<class_bool>` collide_with_areas, PhysicsServer3DExtensionShapeResult* results, :ref:`int<class_int>` max_results **)** |virtual| |
  29. +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  30. | :ref:`bool<class_bool>` | :ref:`_intersect_ray<class_PhysicsDirectSpaceState3DExtension_private_method__intersect_ray>` **(** :ref:`Vector3<class_Vector3>` from, :ref:`Vector3<class_Vector3>` to, :ref:`int<class_int>` collision_mask, :ref:`bool<class_bool>` collide_with_bodies, :ref:`bool<class_bool>` collide_with_areas, :ref:`bool<class_bool>` hit_from_inside, :ref:`bool<class_bool>` hit_back_faces, :ref:`bool<class_bool>` pick_ray, PhysicsServer3DExtensionRayResult* result **)** |virtual| |
  31. +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  32. | :ref:`int<class_int>` | :ref:`_intersect_shape<class_PhysicsDirectSpaceState3DExtension_private_method__intersect_shape>` **(** :ref:`RID<class_RID>` shape_rid, :ref:`Transform3D<class_Transform3D>` transform, :ref:`Vector3<class_Vector3>` motion, :ref:`float<class_float>` margin, :ref:`int<class_int>` collision_mask, :ref:`bool<class_bool>` collide_with_bodies, :ref:`bool<class_bool>` collide_with_areas, PhysicsServer3DExtensionShapeResult* result_count, :ref:`int<class_int>` max_results **)** |virtual| |
  33. +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  34. | :ref:`bool<class_bool>` | :ref:`_rest_info<class_PhysicsDirectSpaceState3DExtension_private_method__rest_info>` **(** :ref:`RID<class_RID>` shape_rid, :ref:`Transform3D<class_Transform3D>` transform, :ref:`Vector3<class_Vector3>` motion, :ref:`float<class_float>` margin, :ref:`int<class_int>` collision_mask, :ref:`bool<class_bool>` collide_with_bodies, :ref:`bool<class_bool>` collide_with_areas, PhysicsServer3DExtensionShapeRestInfo* rest_info **)** |virtual| |
  35. +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  36. | :ref:`bool<class_bool>` | :ref:`is_body_excluded_from_query<class_PhysicsDirectSpaceState3DExtension_method_is_body_excluded_from_query>` **(** :ref:`RID<class_RID>` body **)** |const| |
  37. +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  38. .. rst-class:: classref-section-separator
  39. ----
  40. .. rst-class:: classref-descriptions-group
  41. Method Descriptions
  42. -------------------
  43. .. _class_PhysicsDirectSpaceState3DExtension_private_method__cast_motion:
  44. .. rst-class:: classref-method
  45. :ref:`bool<class_bool>` **_cast_motion** **(** :ref:`RID<class_RID>` shape_rid, :ref:`Transform3D<class_Transform3D>` transform, :ref:`Vector3<class_Vector3>` motion, :ref:`float<class_float>` margin, :ref:`int<class_int>` collision_mask, :ref:`bool<class_bool>` collide_with_bodies, :ref:`bool<class_bool>` collide_with_areas, float* closest_safe, float* closest_unsafe, PhysicsServer3DExtensionShapeRestInfo* info **)** |virtual|
  46. .. container:: contribute
  47. There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
  48. .. rst-class:: classref-item-separator
  49. ----
  50. .. _class_PhysicsDirectSpaceState3DExtension_private_method__collide_shape:
  51. .. rst-class:: classref-method
  52. :ref:`bool<class_bool>` **_collide_shape** **(** :ref:`RID<class_RID>` shape_rid, :ref:`Transform3D<class_Transform3D>` transform, :ref:`Vector3<class_Vector3>` motion, :ref:`float<class_float>` margin, :ref:`int<class_int>` collision_mask, :ref:`bool<class_bool>` collide_with_bodies, :ref:`bool<class_bool>` collide_with_areas, void* results, :ref:`int<class_int>` max_results, int32_t* result_count **)** |virtual|
  53. .. container:: contribute
  54. There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
  55. .. rst-class:: classref-item-separator
  56. ----
  57. .. _class_PhysicsDirectSpaceState3DExtension_private_method__get_closest_point_to_object_volume:
  58. .. rst-class:: classref-method
  59. :ref:`Vector3<class_Vector3>` **_get_closest_point_to_object_volume** **(** :ref:`RID<class_RID>` object, :ref:`Vector3<class_Vector3>` point **)** |virtual| |const|
  60. .. container:: contribute
  61. There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
  62. .. rst-class:: classref-item-separator
  63. ----
  64. .. _class_PhysicsDirectSpaceState3DExtension_private_method__intersect_point:
  65. .. rst-class:: classref-method
  66. :ref:`int<class_int>` **_intersect_point** **(** :ref:`Vector3<class_Vector3>` position, :ref:`int<class_int>` collision_mask, :ref:`bool<class_bool>` collide_with_bodies, :ref:`bool<class_bool>` collide_with_areas, PhysicsServer3DExtensionShapeResult* results, :ref:`int<class_int>` max_results **)** |virtual|
  67. .. container:: contribute
  68. There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
  69. .. rst-class:: classref-item-separator
  70. ----
  71. .. _class_PhysicsDirectSpaceState3DExtension_private_method__intersect_ray:
  72. .. rst-class:: classref-method
  73. :ref:`bool<class_bool>` **_intersect_ray** **(** :ref:`Vector3<class_Vector3>` from, :ref:`Vector3<class_Vector3>` to, :ref:`int<class_int>` collision_mask, :ref:`bool<class_bool>` collide_with_bodies, :ref:`bool<class_bool>` collide_with_areas, :ref:`bool<class_bool>` hit_from_inside, :ref:`bool<class_bool>` hit_back_faces, :ref:`bool<class_bool>` pick_ray, PhysicsServer3DExtensionRayResult* result **)** |virtual|
  74. .. container:: contribute
  75. There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
  76. .. rst-class:: classref-item-separator
  77. ----
  78. .. _class_PhysicsDirectSpaceState3DExtension_private_method__intersect_shape:
  79. .. rst-class:: classref-method
  80. :ref:`int<class_int>` **_intersect_shape** **(** :ref:`RID<class_RID>` shape_rid, :ref:`Transform3D<class_Transform3D>` transform, :ref:`Vector3<class_Vector3>` motion, :ref:`float<class_float>` margin, :ref:`int<class_int>` collision_mask, :ref:`bool<class_bool>` collide_with_bodies, :ref:`bool<class_bool>` collide_with_areas, PhysicsServer3DExtensionShapeResult* result_count, :ref:`int<class_int>` max_results **)** |virtual|
  81. .. container:: contribute
  82. There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
  83. .. rst-class:: classref-item-separator
  84. ----
  85. .. _class_PhysicsDirectSpaceState3DExtension_private_method__rest_info:
  86. .. rst-class:: classref-method
  87. :ref:`bool<class_bool>` **_rest_info** **(** :ref:`RID<class_RID>` shape_rid, :ref:`Transform3D<class_Transform3D>` transform, :ref:`Vector3<class_Vector3>` motion, :ref:`float<class_float>` margin, :ref:`int<class_int>` collision_mask, :ref:`bool<class_bool>` collide_with_bodies, :ref:`bool<class_bool>` collide_with_areas, PhysicsServer3DExtensionShapeRestInfo* rest_info **)** |virtual|
  88. .. container:: contribute
  89. There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
  90. .. rst-class:: classref-item-separator
  91. ----
  92. .. _class_PhysicsDirectSpaceState3DExtension_method_is_body_excluded_from_query:
  93. .. rst-class:: classref-method
  94. :ref:`bool<class_bool>` **is_body_excluded_from_query** **(** :ref:`RID<class_RID>` body **)** |const|
  95. .. container:: contribute
  96. There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
  97. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  98. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  99. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
  100. .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
  101. .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
  102. .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`
  103. .. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)`