SurfaceGui

Pokaż przestarzałe

*Ta zawartość została przetłumaczona przy użyciu narzędzi AI (w wersji beta) i może zawierać błędy. Aby wyświetlić tę stronę w języku angielskim, kliknij tutaj.

SurfaceGui pozwala na renderowanie obiektów interfejsu użytkownika na powierzchni części w świecie 3D, jednocześnie umożliwiając wystąpienie podstawowej interakcji użytkownika.Podobnie do i , obiekty interfejsu użytkownika takie jak i są skierowane w tym samym kierunku, co powierzchnia, na której się znajdują, edytowane za pomocą właściwości .

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

Zauważ, że interaktywne elementy UI, takie jak ImageButtons i TextButtons wewnątrz SurfaceGui otrzymają tylko wejście użytkownika, jeśli są powiązane z PlayerGui, zwykle poprzez umieszczenie SurfaceGui wewnątrz StarterGui.Właściwość Adornee można wykorzystać do ukierunkowania części w świecie 3D, podczas gdy sama SurfaceGui pozostaje w PlayerGui.

Zobacz Interfejs użytkownika w doświadczeniu dla przewodnika dotyczącego pracy z SurfaceGui.

Zachowanie przechowywania

Aby pomóc poprawić wykonywanie, wygląd SurfaceGui jest przechowywany do czasu, gdy wystąpi jedna z poniższych sytuacji, po których jego wygląd zostanie ponownie obliczony na następnym ramie renderowania.

Podsumowanie

Właściwości

Właściwości odziedziczeni z: SurfaceGuiBaseWłaściwości odziedziczeni z: LayerCollectorWłaściwości odziedziczeni z: GuiBase2d

Zdarzenia

Zdarzenia odziedziczeni z: GuiBase2d

Właściwości

AlwaysOnTop

Odczyt równoległy

Właściwość ta określa, czy SurfaceGui zawsze będzie renderowany nad innymi obiektami 3D.

Gdy ustawiono na false (domyślnie), SurfaceGui renderuje się jak inne treści 3D i jest ukrywany przez inne obiekty 3D.Gdy ustawiono na true , SurfaceGui zawsze renderuje się na górze treści 3D i zmiany wyglądu są znaczne:

  • Kolory pasują do tego, jak wyglądają wewnątrz ScreenGui .
  • Tekst może wyglądać ostrojszy na urządzeniach o wysokiej rozdzielczości DPI.
  • LightInfluence jest traktowany tak, jakby był 0 .
  • Brightness nie ma żadnego wpływu.

Brightness

Odczyt równoległy

Właściwość ta określa czynnik, przy którym światło kontenera SurfaceGui jest skalowane, gdy LightInfluence jest 0.Domyślnie właściwość ta jest 1 i może być ustawiona na dowolną liczbę pomiędzy 0 i 1000.Poprzez zmianę tej właściwości jasność widoczna SurfaceGui może być lepiej dostosowana do jej środowisko.Na instancjabillboard wideo może być rozjaśniony w ciemnym pokoju poprzez zwiększenie Brightness do 10.

Zauważ, że Brightness nie jest dostępne w Studio i nie ma wpływu, gdy LightInfluence jest 1 lub AlwaysOnTop jest true.

CanvasSize

Odczyt równoległy

Rozmiar "wirtualnego ekranu" w "wirtualnych pikselach", który czyni SurfaceGuis piksel na piksel kompatybilnym z ScreenGuis .

ClipsDescendants

Odczyt równoległy

Gdy ustawiono na true (domyślnie), części GuiObjects spadające poza granice płótna SurfaceGui nie zostaną narysowane.

Nawet gdy ta właściwość jest false, GuiObjects które są całkowicie poza płótnem nie zostaną wyrenderowane.

LightInfluence

Odczyt równoległy

Kontroluje, jak dużo SurfaceGui jest wpływanych przez oświetlenie środowiskowe, w przedziale od 0 do 1 .Ustawienie tego na 1 oznacza, że otoczenie oświetlenia ma pełną kontrolę nad wyglądem, podczas gdy ustawienie go na 0 oznacza, że oświetlenie nie ma żadnego wpływu.

MaxDistance

Odczyt równoległy

Właściwość ta kontroluje, jak daleko od kamery będzie wyświetlany SurfaceGui przed zatrzymaniem renderowania.Wartość 0 oznacza, że nie ma ograniczenia i będzie renderować się nieskończenie daleko.Domyślna wartość 1000 działa dobrze w większości przypadków.

Dla SurfaceGuis, które pojawiają się na zewnątrz, zaleca się, aby MaxDistance było wystarczająco wysokie, aby zapewnić, że interfejs użytkownika kontenera jest wystarczająco mały na ekranie, gdy pojawia się lub znika, minimalizując efekt nagłego wyskakiwania/znikania.

PixelsPerStud

Odczyt równoległy

Właściwość ta określa gęstość pikseli używanych do każdej przestrzeni świata, aby renderować zawartość SurfaceGui.Wyższe wartości spowodują, że poszczególne GuiObjects wewnątrz będą mniejsze, jeśli zostaną utrzymane w tej samej wielkości.Odwrotnie, niższe wartości spowodują, że obiekty będą wyglądały większe.Jeśli jednak GuiObjects są skalowane proporcjonalnie za pomocą użycia UIScale , GuiObject.Size , TextLabel.TextSize lub podobnych, ta właściwość pozwala na wykorzystanie wyższej definicji.

Ważne jest, aby wybrać wartość w oparciu o to, jak daleko oczekujesz, że gracz zobaczy SurfaceGui .Pamiętaj również, że duża gęstość pikseli może negatywnie wpłynąć na wydajność, jeśli twarz pokrytej części jest wystarczająco duża.

Odczyt równoległy

Gdy ustawiono na Enum.SurfaceGuiSizingMode.PixelsPerStud (domyślnie), renderuje się SurfaceGui z zmienną wielkością w oparciu o PixelsPerStud i rozmiar powierzchni w szpilkach.

Gdy ustawiono na Enum.SurfaceGuiSizingMode.FixedSize, renderuje się SurfaceGui z ustawionym stałym rozmiarem za pomocą CanvasSize.

ToolPunchThroughDistance

Odczyt równoległy

Ustawia odległość, w której lewe klikanie zaczyna działać na SurfaceGui zamiast na trzymane Tool.Jeśli postać znajduje się w tej odległości od SurfaceGui, Tool nie aktywuje się po klikać.

ZOffset

Odczyt równoległy

Umieszcza to SurfaceGui w stosunku do innych na tej samej twarzy (zmiana tego nie wizualnie "podnosi" lub "opada" SurfaceGui z powierzchni).

Metody

Zdarzenia