This translation is community contributed and may not be up to date. We only maintain the English version of the documentation. Read this manual in English
Label 组件在游戏空间中渲染一段文本。默认情况下,它会与所有精灵和图块图形一起排序和绘制。该组件有一组属性,用于控制文本的渲染方式。Defold的GUI支持文本,但在游戏世界中放置GUI元素可能比较棘手。Labels使这一过程变得更加简单。
要创建一个 Label 组件, 在游戏对象上 右键点击 选择 Add Component ▸ Label.
(如果你想从同一模板实例化多个label,也可以创建一个新的label组件文件:在Assets浏览器中的文件夹上右键点击并选择New... ▸ Label,然后将该文件作为组件添加到任何游戏对象)
将Font属性设置为您想要使用的字体,并确保将Material属性设置为与字体类型相匹配的材质:
除了Id、Position、Rotation和Scale属性外,还存在以下组件特有属性:
请注意,默认材质出于性能原因禁用了阴影渲染。
Blend Mode 属性定义了组件图形应如何与其后面的图形进行混合。以下是可用的混合模式及其计算方式:
src.a * src.rgb + (1 - src.a) * dst.rgb
src.rgb + dst.rgb
src.rgb * dst.rgb
src.rgb - dst.rgb * dst.rgb
通过设置Pivot属性,您可以更改文本的对齐模式。
Center
、North
或South
,则文本居中对齐。West
模式,则文本左对齐。East
模式,则文本右对齐。您可以在运行时通过获取和设置标签文本以及其他各种属性来操作标签。
color
vector4
)outline
vector4
)shadow
vector4
)scale
number
,或者是用于沿各轴单独缩放的vector3
。size
vector3
)function init(self)
-- 设置与此脚本在同一游戏对象中的"my_label"组件的文本。
label.set_text("#my_label", "新文本")
end
function init(self)
-- 设置与此脚本在同一游戏对象中的"my_label"组件的颜色。
-- 颜色是存储在vector4中的RGBA值。
local grey = vmath.vector4(0.5, 0.5, 0.5, 1.0)
go.set("#my_label", "color", grey)
-- ...通过将其alpha设置为0来移除轮廓...
go.set("#my_label", "outline.w", 0)
-- ...沿x轴将其缩放2倍。
local scale_x = go.get("#my_label", "scale.x")
go.set("#my_label", "scale.x", scale_x * 2)
end
game.project文件中有一些与标签相关的项目设置。
Did you spot an error or do you have a suggestion? Please let us know on GitHub!
GITHUB