VisibilityNotifier
Inherits: CullInstance < Spatial < Node < Object
Inherited By: VisibilityEnabler
大约在节点在屏幕上可见时进行检测。
描述
VisibilityNotifier 检测它在屏幕上是否可见。当它的边界矩形进入或退出屏幕或 Camera 的视图时,它也会发出通知。
如果你想让节点在退出屏幕时自动禁用,请使用 VisibilityEnabler 代替。
注意:VisibilityNotifier 由于性能原因使用了一个近似的启发式方法。它不会考虑墙和其他遮挡物(除非你使用了 Portal)。启发式这一实现细节,在未来的版本中可能会改变。如果你需要精确的可见性检查,请使用另一种方法,例如添加一个 Area 节点作为 Camera 节点的子节点和/或 Vector3.dot。
属性
|
方法
is_on_screen ( ) const |
信号
- camera_entered ( Camera camera )
当VisibilityNotifier进入Camera的视图时触发。
- camera_exited ( Camera camera )
当VisibilityNotifier退出Camera的视图时触发。
- screen_entered ( )
当VisibilityNotifier进入屏幕时触发。
- screen_exited ( )
当VisibilityNotifier退出屏幕时触发。
属性说明
- AABB aabb
Default |
|
Setter | set_aabb(value) |
Getter | get_aabb() |
VisibilityNotifier的边界框。
方法说明
- bool is_on_screen ( ) const
如果true
,则边界框在屏幕上。
注意:一旦添加到场景树中,需要一帧来计算节点的可见性,所以这个方法将在它被实例化后立即返回false
,即使屏幕在绘制过程中。