class_visibleonscreennotifier3d.rst 4.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  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/VisibleOnScreenNotifier3D.xml.
  6. .. _class_VisibleOnScreenNotifier3D:
  7. VisibleOnScreenNotifier3D
  8. =========================
  9. **Inherits:** :ref:`VisualInstance3D<class_VisualInstance3D>` **<** :ref:`Node3D<class_Node3D>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
  10. **Inherited By:** :ref:`VisibleOnScreenEnabler3D<class_VisibleOnScreenEnabler3D>`
  11. Detects approximately when the node is visible on screen.
  12. Description
  13. -----------
  14. The VisibleOnScreenNotifier3D detects when it is visible on the screen. It also notifies when its bounding rectangle enters or exits the screen or a :ref:`Camera3D<class_Camera3D>`'s view.
  15. If you want nodes to be disabled automatically when they exit the screen, use :ref:`VisibleOnScreenEnabler3D<class_VisibleOnScreenEnabler3D>` instead.
  16. \ **Note:** VisibleOnScreenNotifier3D uses an approximate heuristic for performance reasons. It doesn't take walls and other occlusion into account. The heuristic is an implementation detail and may change in future versions. If you need precise visibility checking, use another method such as adding an :ref:`Area3D<class_Area3D>` node as a child of a :ref:`Camera3D<class_Camera3D>` node and/or :ref:`Vector3.dot<class_Vector3_method_dot>`.
  17. Properties
  18. ----------
  19. +-------------------------+------------------------------------------------------------+-------------------------------+
  20. | :ref:`AABB<class_AABB>` | :ref:`aabb<class_VisibleOnScreenNotifier3D_property_aabb>` | ``AABB(-1, -1, -1, 2, 2, 2)`` |
  21. +-------------------------+------------------------------------------------------------+-------------------------------+
  22. Methods
  23. -------
  24. +-------------------------+----------------------------------------------------------------------------------------------+
  25. | :ref:`bool<class_bool>` | :ref:`is_on_screen<class_VisibleOnScreenNotifier3D_method_is_on_screen>` **(** **)** |const| |
  26. +-------------------------+----------------------------------------------------------------------------------------------+
  27. Signals
  28. -------
  29. .. _class_VisibleOnScreenNotifier3D_signal_screen_entered:
  30. - **screen_entered** **(** **)**
  31. Emitted when the VisibleOnScreenNotifier3D enters the screen.
  32. ----
  33. .. _class_VisibleOnScreenNotifier3D_signal_screen_exited:
  34. - **screen_exited** **(** **)**
  35. Emitted when the VisibleOnScreenNotifier3D exits the screen.
  36. Property Descriptions
  37. ---------------------
  38. .. _class_VisibleOnScreenNotifier3D_property_aabb:
  39. - :ref:`AABB<class_AABB>` **aabb**
  40. +-----------+-------------------------------+
  41. | *Default* | ``AABB(-1, -1, -1, 2, 2, 2)`` |
  42. +-----------+-------------------------------+
  43. | *Setter* | set_aabb(value) |
  44. +-----------+-------------------------------+
  45. | *Getter* | get_aabb() |
  46. +-----------+-------------------------------+
  47. The VisibleOnScreenNotifier3D's bounding box.
  48. Method Descriptions
  49. -------------------
  50. .. _class_VisibleOnScreenNotifier3D_method_is_on_screen:
  51. - :ref:`bool<class_bool>` **is_on_screen** **(** **)** |const|
  52. If ``true``, the bounding box is on the screen.
  53. \ **Note:** It takes one frame for the node's visibility to be assessed once added to the scene tree, so this method will return ``false`` right after it is instantiated, even if it will be on screen in the draw pass.
  54. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  55. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  56. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
  57. .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
  58. .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
  59. .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`