跳至正文
版本:bleeding-edge 🩸

透视和高亮显示

这段示例代码展示了如何设置 Actor 在墙后被高亮显示,或者始终保持高亮显示!

提示

由于高亮显示是在后处理中计算出来的,因此很难为单个实体单独定义自定义颜色。

幸好,nanos world 支持 3 种不同的颜色,你可以自己进行配置!

要为特定索引配置全局高亮颜色,使用:​

Client.SetHighlightColor(highlight_color, index, mode)

要对特定的 Actor 启用高亮显示,使用:​

my_entity:SetHighlightEnabled(true, index)

信息

有效索引为 0、1 和 2。

Client/Index.lua
-- 设置全局高亮颜色
-- 颜色值越高,发光越强(例如 Color(100, 0, 0))
local highlight_color = Color(10, 2.5, 0)
Client.SetHighlightColor(highlight_color, 0, HighlightMode.Always)

-- 设置所有角色高亮显示
Character.Subscribe("Spawn", function(character)
character:SetHighlightEnabled(true, 0)
end)

轮廓线​

除了高亮之外,Actor 还可以绘制轮廓线,其工作原理相同,包含 3 个可配置索引:

Client/Index.lua
-- 配置索引 0 的轮廓线颜色(和厚度)
Client.SetOutlineColor(Color(0, 1, 0), 0, 2)

-- 当所有道具生成时开启轮廓线
Prop.Subscribe("Spawn", function(prop)
prop:SetOutlineEnabled(true, 0)
end)