Light2D
繼承: Node2D < CanvasItem < Node < Object
被繼承: DirectionalLight2D, PointLight2D
在 2D 環境中投射光線。
說明
在 2D 環境中投射光線。光線由顏色、能量值、模式(見常數)以及其他各種參數(與範圍和陰影有關)來定義。
教學
屬性
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
方法
get_height() const |
|
void |
set_height(height: float) |
列舉
enum ShadowFilter: 🔗
ShadowFilter SHADOW_FILTER_NONE = 0
不對陰影貼圖套用篩選。提供較硬的陰影邊緣,算繪速度最快。見 shadow_filter。
ShadowFilter SHADOW_FILTER_PCF5 = 1
對陰影貼圖使用百分比接近篩選(5 個樣本)。與硬陰影算繪相比較慢。見 shadow_filter。
ShadowFilter SHADOW_FILTER_PCF13 = 2
對陰影貼圖使用百分比接近篩選(13 個樣本)。最慢的陰影篩選模式,應謹慎使用。見 shadow_filter。
enum BlendMode: 🔗
BlendMode BLEND_MODE_ADD = 0
將 Light2D 對應的圖元值與其下方的圖元值相加。這是燈的常見行為。
BlendMode BLEND_MODE_SUB = 1
將 Light2D 對應的圖元值減去其下方的圖元值,產生反光效果。
BlendMode BLEND_MODE_MIX = 2
通過線性插值將 Light2D 對應的圖元值與其下方的圖元值混合。
屬性說明
The Light2D's blend mode.
Color color = Color(1, 1, 1, 1) 🔗
該 Light2D 的顏色 Color。
如果為 true,Light2D 將只在編輯場景時出現。
如果為 true,Light2D 會發光。
Light2D 的能量值。該值越大,光線就越強。
int range_item_cull_mask = 1 🔗
層遮罩。CanvasItem.light_mask 與之配對的對象才會被該 Light2D 影響。另見 shadow_item_cull_mask,影響的是哪些物件能夠投射陰影。
注意:DirectionalLight2D 會忽略 range_item_cull_mask,始終對 2D 節點進行照明,無論其 CanvasItem.light_mask 的取值。
受 Light2D 影響的對象的最大層數值。
受 Light2D 影響的對象的最小層數值。
受 Light2D 影響的物體的最大 z 值。
受 Light2D 影響的物體的最小 z 值。
Color shadow_color = Color(0, 0, 0, 0) 🔗
該 Light2D 投下的影子的顏色 Color。
如果為 true,則該 Light2D 將投下陰影。
ShadowFilter shadow_filter = 0 🔗
void set_shadow_filter(value: ShadowFilter)
ShadowFilter get_shadow_filter()
Shadow filter type.
float shadow_filter_smooth = 0.0 🔗
陰影的平滑值。更高的值將導致更柔和的陰影,代價是在陰影算繪中可能出現可見的條紋。只有在 shadow_filter 為 SHADOW_FILTER_PCF5 或 SHADOW_FILTER_PCF13 時,shadow_filter_smooth 才有效果。
int shadow_item_cull_mask = 1 🔗
陰影遮罩。與 LightOccluder2D 一起使用以投射陰影。只有配對 CanvasItem.light_mask 的遮擋物才會投射陰影。另見 range_item_cull_mask,它影響哪些物件可以接收光。
方法說明
返回該燈光的高度,用於 2D 法線對應。見 PointLight2D.height 和 DirectionalLight2D.height。
void set_height(height: float) 🔗
設定該燈光的高度,用於 2D 法線對應。見 PointLight2D.height 和 DirectionalLight2D.height。