VisibilityNotifier

Inherits: Spatial < Node < Object

Inherited By: VisibilityEnabler

Detects approximately when the node is visible on screen.

Description

The VisibilityNotifier detects when it is visible on the screen. It also notifies when its bounding rectangle enters or exits the screen or a Camera's view.

If you want nodes to be disabled automatically when they exit the screen, use VisibilityEnabler instead.

Note: VisibilityNotifier 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 Area node as a child of a Camera node and/or Vector3.dot.

Properties

AABB aabb AABB( -1, -1, -1, 2, 2, 2 )

Methods

bool is_on_screen ( ) const

Signals

  • camera_entered ( Camera camera )

Emitted when the VisibilityNotifier enters a Camera's view.


  • camera_exited ( Camera camera )

Emitted when the VisibilityNotifier exits a Camera's view.


  • screen_entered ( )

Emitted when the VisibilityNotifier enters the screen.


  • screen_exited ( )

Emitted when the VisibilityNotifier exits the screen.

Property Descriptions

Default AABB( -1, -1, -1, 2, 2, 2 )
Setter set_aabb(value)
Getter get_aabb()

The VisibilityNotifier's bounding box.

Method Descriptions

  • bool is_on_screen ( ) const

If true, the bounding box is on the screen.

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.