SurfaceGui

显示已弃用

*此内容使用人工智能(Beta)翻译,可能包含错误。若要查看英文页面,请点按 此处

SurfaceGui 允许在 3D 世界中将 UI 对象渲染到零件表面,同时还允许基本用户互动发生。与 和 类似,用户界面对象,例如 和 会面向相同方向的表面,可以通过 属性进行编辑。

SurfaceGui on a 3D part in the place with an ImageLabel child to depict a screen console.

请注意,如 和 内的互动用户界面元素只会接收用户输入,如果它们属于 ,通常是通过将 放置在 内( 属性可用于将 3D 世界中的某个部分标记为目标,而 本身仍留在 中)。此外,零件的 CanQuery 属性必须为 true 才能接收输入,以便交互用户界面元素收到输入。

请参阅体验内的用户界面以获取有关使用SurfaceGui的指南。

缓存行为

为了帮助提高性能,SurfaceGui 的外观将被缓存,直到以下情况之一发生,然后其外观将在下一次渲染框中重新计算。

概要

属性

继承自SurfaceGuiBase属性继承自LayerCollector属性继承自GuiBase2d属性

活动

继承自GuiBase2d活动

属性

AlwaysOnTop

读取并联

该属性决定 whether SurfaceGui 是否总是会在其他 3D 对象上渲染。

当设置为 false (默认) 时,SurfaceGui 像其他 3D 内容一样渲染,被其他 3D 对象遮蔽。当设置为 true 时,SurfaceGui 总是在 3D 内容上渲染,外观变化显著:

  • 颜色与它们在 ScreenGui 内出现的方式匹配。
  • 文本可能在高 DPI 设备上显得更锋利。
  • LightInfluence 被视为如果它是 0
  • Brightness 没有效果。

Brightness

读取并联

该属性决定了当 容器的灯光被缩放时的因子,当 > 时灯光被缩放。默认情况下,此属性为 1 ,可以设置为 01000 之间的任何数字。通过修改此属性,SurfaceGui 的显示亮度可以更好地匹配其环境。例实例,一个视频广告牌可以在黑暗房间内亮起,通过将 Brightness 提高到 10 来实现。

请注意, 在 Studio 无法访问,且当 或 是 时没有效果。

CanvasSize

读取并联

在"虚拟像素"中"虚拟屏幕"的大小,使 SurfaceGuis 像素与 ScreenGuis 兼容。

ClipsDescendants

读取并联

当设置为 true (默认) 时,那些落在 GuiObjects 画布边界之外的 SurfaceGui 部分不会被绘制。

即使当这个属性是 falseGuiObjects 那些在画布外完全 **** 的东西也不会渲染。

LightInfluence

读取并联

控制 SurfaceGui 是否受到环境灯光的影响多少,范围为 01 。将其设置为 1 意味着周围的照明拥有完全控制外观,而将其设置为 0 意味着照明没有作用。

MaxDistance

读取并联

此属性控制在渲染停止之前,SurfaceGui 会显示多远离相机。值 0 表示没有限制,将无限远地渲染。默认值 1000 对大多数情况来说都很好。

对于那些在室外出现的 SurfaceGuis ,建议 MaxDistance 高度足够,以确保容器的用户界面在出现或消失时在屏幕上足够小,减少突然出现/消失的效果。

PixelsPerStud

读取并联

该属性决定了每个世界空间像素用于渲染 SurfaceGui 内容的密度。更高的值会导致内部的各种 GuiObjects 变小,如果保持相同的尺寸。相反,较低的值会导致对象看起来更大。然而,如果 GuiObjects 通过使用 UIScale , GuiObject.Size , TextLabel.TextSize 或类似来进行比例缩放,该属性可以允许使用更高的定义。

选择一个值,取决于你希望玩家观看 SurfaceGui 的距离有多远很重要。还需要注意,大的像素密度可能会对性能产生负面影响,如果装饰的部件的面积足够大。

读取并联

当设置为 Enum.SurfaceGuiSizingMode.PixelsPerStud (默认) 时,SurfaceGui 渲染以基于 PixelsPerStud 和表面尺寸的变量大小进行渲染。

当设置为 Enum.SurfaceGuiSizingMode.FixedSize 时,SurfaceGui 通过 CanvasSize 设置固定尺寸渲染。

ToolPunchThroughDistance

读取并联

设置左键单击开始在 SurfaceGui 上作用而不是在持有的 Tool 上的距离。如果角色在 SurfaceGui 的距离内,Tool 将在点按时不会激活。

ZOffset

读取并联

将此 SurfaceGui 与同一面上的其他人关联(更改此操作不会视觉上“举起”或“下沉”SurfaceGui 从表面)。

方法

活动