VisibleOnScreenEnabler3D
继承: VisibleOnScreenNotifier3D < VisualInstance3D < Node3D < Node < Object
3D 空间的盒形区块,当在屏幕上可见时,启用目标节点。
描述
VisibleOnScreenEnabler3D 包含 3D 空间的盒形区块和目标节点。当该区域的任何部分在屏幕上可见时,目标节点将自动启用(通过其 Node.process_mode 属性),否则将自动禁用。例如,这可以被用于仅在玩家接近敌人时激活敌人。
如果你只想在该区块在屏幕上可见时收到通知,请参阅 VisibleOnScreenNotifier3D。
注意:**VisibleOnScreenEnabler3D** 使用近似启发式,不考虑墙壁和其他遮挡,除非使用遮挡剔除。除非将 Node3D.visible 设置为 true
,否则它也不会起作用。
属性
| ||
|
枚举
enum EnableMode: 🔗
EnableMode ENABLE_MODE_INHERIT = 0
EnableMode ENABLE_MODE_ALWAYS = 1
EnableMode ENABLE_MODE_WHEN_PAUSED = 2
对应 Node.PROCESS_MODE_WHEN_PAUSED。
属性说明
EnableMode enable_mode = 0
🔗
void set_enable_mode(value: EnableMode)
EnableMode get_enable_mode()
确定如何启用目标节点。对应于 ProcessMode。当该节点被禁用时,它始终使用 Node.PROCESS_MODE_DISABLED。
NodePath enable_node_path = NodePath("..")
🔗
目标节点的路径,相对于 VisibleOnScreenEnabler3D。目标节点会被缓存;只有在设置这个属性时(VisibleOnScreenEnabler3D 位于场景树中),以及 VisibleOnScreenEnabler3D 进入场景树时会进行赋值。如果路径为空,则不会影响任何节点。如果路径无效,则还会生成错误。