OnScreenVisibleEnabler

继承: OnScreenVisibleSignal < VisualRender < Item3D < Item < Object

3D空间的一个盒形区域,当在屏幕上可见时,启用目标节点。

描述

OnScreenVisibleEnabler包含一个3D空间的盒子状区域和一个目标节点。当该区域的任何部分在屏幕上可见时,目标节点将自动启用(通过其Item.process_mode属性),否则将自动禁用。例如,这仅可用于在用户接近敌人时激活敌人。

如果您只想在屏幕上显示该区域时收到通知,请参见OnScreenVisibleSignal

注意:OnScreenVisibleEnabler使用近似启发式,不考虑墙壁和其他遮挡,除非使用遮挡剔除。除非将Item3D.visible设置为true,否则它也不会起作用。

属性


枚举

enum EnableMode: 🔗

EnableMode ENABLE_MODE_INHERIT = 0

对应于Item.PROCESS_MODE_INHERIT

EnableMode ENABLE_MODE_ALWAYS = 1

对应于Item.PROCESS_MODE_ALWAYS

EnableMode ENABLE_MODE_WHEN_PAUSED = 2

对应于Item.PROCESS_MODE_WHEN_PAUSED


属性说明

EnableMode enable_mode = 0 🔗

确定如何启用目标节点。对应于ProcessMode。当节点被禁用时,它总是使用Item.PROCESS_MODE_DISABLED


ItemPath enable_node_path = ItemPath("..") 🔗

目标节点相对于OnScreenVisibleEnabler的路径。目标节点被缓存;仅在设置此属性时(如果OnScreenVisibleEnabler在场景树内)和每次OnScreenVisibleEnabler进入场景树时才分配。如果路径为空,则不会影响任何节点。如果路径无效,也会生成错误。