Reference API Roblox

Engine API

Website

Related

Reference API Roblox

SurfaceGuiBase

Base class for containers that render GuiObjects onto a face of a BasePart in the 3D world.

This class is not creatable. Instances of this class cannot be created with Instance.new.
Tags: [NotCreatable]

Member index 3

HistoryMember
731Active: bool
731Adornee: Instance
731Face: NormalId
inherited from LayerCollector
731Enabled: bool
731ResetOnSpawn: bool
731ZIndexBehavior: ZIndexBehavior
648GetGuiObjectsAtPosition(x: int, y: int): Instances
462GetLayoutNodeTree(): Dictionary
inherited from GuiBase2d
731AbsolutePosition: Vector2
731AbsoluteRotation: float
731AbsoluteSize: Vector2
731AutoLocalize: bool
731RootLocalizationTable: LocalizationTable
731SelectionBehaviorDown: SelectionBehavior
731SelectionBehaviorLeft: SelectionBehavior
731SelectionBehaviorRight: SelectionBehavior
731SelectionBehaviorUp: SelectionBehavior
731SelectionGroup: bool
525SelectionChanged(amISelected: bool, previousSelection: GuiObject, newSelection: GuiObject)
inherited from Instance
731Archivable: bool
731Capabilities: SecurityCapabilities
731IsInSandbox: bool
731Name: string
731Parent: Instance
731PredictionMode: PredictionMode
731Sandboxed: bool
731UniqueId: UniqueId
576AddTag(tag: string): null
573ClearAllChildren(): null
462Clone(): Instance
573Destroy(): null
486FindFirstAncestor(name: string): Instance
486FindFirstAncestorOfClass(className: string): Instance
486FindFirstAncestorWhichIsA(className: string): Instance
486FindFirstChild(name: string, recursive: bool = false): Instance
486FindFirstChildOfClass(className: string): Instance
486FindFirstChildWhichIsA(className: string, recursive: bool = false): Instance
486FindFirstDescendant(name: string): Instance
563GetActor(): Actor
486GetAttribute(attribute: string): Variant
462GetAttributeChangedSignal(attribute: string): RBXScriptSignal
631GetAttributes(): Dictionary
648GetChildren(): Instances
462GetDebugId(scopeLength: int = 4): string
707GetDescendants(): Instances
486GetFullName(): string
706GetStyled(name: string, selector: string?): Variant
657GetStyledPropertyChangedSignal(property: string): RBXScriptSignal
576GetTags(): Array
576HasTag(tag: string): bool
486IsAncestorOf(descendant: Instance): bool
486IsDescendantOf(ancestor: Instance): bool
664IsPropertyModified(property: string): bool
698QueryDescendants(selector: string): Instances
573Remove(): null
576RemoveTag(tag: string): null
664ResetPropertyToDefault(property: string): null
573SetAttribute(attribute: string, value: Variant): null
462WaitForChild(childName: string, timeOut: double): Instance
731children(): Instances
731clone(): Instance
731destroy(): null
731findFirstChild(name: string, recursive: bool = false): Instance
731getChildren(): Instances
731isDescendantOf(ancestor: Instance): bool
731remove(): null
462AncestryChanged(child: Instance, parent: Instance)
462AttributeChanged(attribute: string)
462ChildAdded(child: Instance)
462ChildRemoved(child: Instance)
462DescendantAdded(descendant: Instance)
462DescendantRemoving(descendant: Instance)
500Destroying()
657StyledPropertiesChanged()
731childAdded(child: Instance)
inherited from Object
731ClassName: string
731className: string
647GetPropertyChangedSignal(property: string): RBXScriptSignal
647IsA(className: string): bool
731isA(className: string): bool
647Changed(property: string)

Description

SurfaceGuiBase is the LayerCollector base class for containers that render their GuiObject descendants onto a face of a BasePart in the 3D world. SurfaceGui and AdGui inherit from it.

The target part is set through the Adornee property; if no adornee is specified, the container renders on its parent when that parent is a BasePart. The Face property selects which surface of the part the UI is projected onto.

History 13

Members 3

Active

TypeDefault
bool

This property determines whether the SurfaceGui will sink input, for example if the parent or Adornee part contains a ClickDetector class like DragDetector.

Note that interactive UI elements like ImageButtons and TextButtons inside a SurfaceGui will only receive user input if they are parented to the PlayerGui (the SurfaceGui.Adorneee property can be used to target a part in the 3D world while the SurfaceGui itself remains in the PlayerGui). Additionally, the part's CanQuery property must be true for the interactive UI element to receive input.

History 4

Adornee

TypeDefault
Instance

BasePart on which to apply the SurfaceGui, overriding the default parent association.

History 4

Face

TypeDefault
NormalId

NormalId face of the SurfaceGui parent (or its Adornee) upon which to apply the SurfaceGui.

History 4

Settings