ViewportFrame
*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.
ViewportFrame jest to GuiObject, które renderuje obiekty 3D w granicach jego zakresu, oferując sposób wyświetlania obiektów 3D w przestrzeni 2D, tak jak ScreenGui .Ten obiekt ma następujące ostrzeżenia:
Nie renderowane są cienie ani efekty post-processing.
Enum.Material.Neon i Enum.Material.Glass materiały renderują się w najniższej jakości.
Nested GuiObjects nie są wspierane.
Domyślnie oświetlenie wewnątrz ViewportFrame działa tak, jakby Lighting.EnvironmentSpecularScale i Lighting.EnvironmentDiffuseScale oba były ustawione na 0, więc właściwości, które polegają na tych polach, takie jak SurfaceAppearance.MetalnessMap, mogą wyglądać inaczej.
Ten obiekt może używać dziecka jako mapy kostek odzwierciedlających, w którym wykorzystywane są tylko sześć właściwości obiektu .Załóżmy, że te właściwości są ważne, oświetlenie wewnątrz ViewportFrame działa podobnie, jeśli Lighting.EnvironmentSpecularScale i Lighting.EnvironmentDiffuseScale są oba ustawione na 1 .Szczegóły znajdziesz tutaj tutaj.
Przykłady kodu
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")
local screenGui = Instance.new("ScreenGui")
screenGui.Parent = playerGui
local viewportFrame = Instance.new("ViewportFrame")
viewportFrame.Size = UDim2.new(0.3, 0, 0.4, 0)
viewportFrame.Position = UDim2.new(0, 15, 0, 15)
viewportFrame.BackgroundColor3 = Color3.new(0, 0, 0)
viewportFrame.BorderColor3 = Color3.new(0.6, 0.5, 0.4)
viewportFrame.BorderSizePixel = 2
viewportFrame.BackgroundTransparency = 0.25
viewportFrame.Parent = screenGui
local part = Instance.new("Part")
part.Material = Enum.Material.Concrete
part.Color = Color3.new(0.25, 0.75, 1)
part.Position = Vector3.new(0, 0, 0)
part.Parent = viewportFrame
local viewportCamera = Instance.new("Camera")
viewportFrame.CurrentCamera = viewportCamera
viewportCamera.Parent = viewportFrame
viewportCamera.CFrame = CFrame.new(Vector3.new(0, 2, 12), part.Position)
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")
local screenGui = Instance.new("ScreenGui")
screenGui.Parent = playerGui
local TweenService = game:GetService("TweenService")
local viewportFrame = Instance.new("ViewportFrame")
viewportFrame.Size = UDim2.new(0.3, 0, 0.4, 0)
viewportFrame.Position = UDim2.new(0, 15, 0, 15)
viewportFrame.BackgroundColor3 = Color3.new(0, 0, 0)
viewportFrame.BorderColor3 = Color3.new(0.6, 0.5, 0.4)
viewportFrame.BorderSizePixel = 2
viewportFrame.BackgroundTransparency = 0.25
viewportFrame.Parent = screenGui
local part = Instance.new("Part")
part.Material = Enum.Material.Concrete
part.Color = Color3.new(0.25, 0.75, 1)
part.Position = Vector3.new(0, 0, 0)
part.Parent = viewportFrame
local viewportCamera = Instance.new("Camera")
viewportFrame.CurrentCamera = viewportCamera
viewportCamera.Parent = viewportFrame
viewportCamera.CFrame = CFrame.new(Vector3.new(0, 2, 12), part.Position)
task.wait(2)
local cameraGoal = {
CFrame = CFrame.new(Vector3.new(0, 6, 4), part.Position),
}
local tweenInfo = TweenInfo.new(2, Enum.EasingStyle.Quad, Enum.EasingDirection.Out)
local tween = TweenService:Create(viewportCamera, tweenInfo, cameraGoal)
tween:Play()
Podsumowanie
Właściwości
Kolor oświetlenia zastosowany do obszaru w granicach ViewportFrame.
Camera który jest używany do renderowania obiektów dzieci.
Określa, jak zostanie skoloryzowany renderowany obraz widoku.
Określa przejrzystość obrazu renderowanego widoku.
Kolor emitowanego światła.
A Vector3 reprezentujący kierunek kod źródłowyświatła.
Określa, czy ten element interfejsu zanurza wejście.
Określa punkt pochodzenia GuiObject , względem jego absolutnego rozmiaru.
Określa, czy zmiana rozmiaru następuje w oparciu o treść dziecka.
Określa kolor tła GuiObject.
Określa przejrzystość tła i ramki GuiObject.
Określa kolor obramowania GuiObject.
Określa, w jaki sposób granica GuiObject jest rozmieszczona względem jej wymiarów.
Określa szerokość piksela obramowania GuiObject.
Określa, czy potomek GuiObjects poza granicami elementu GUI rodzica powinien się renderować.
Określa, czy mysz gracza jest aktywnie naciśnięta na GuiObject lub nie.
Określa, czy GuiButton można wejść w interakcję, czy nie, lub czy GuiState z GuiObject zmienia się lub nie.
Kontroluje kolejność sortowania GuiObject przy użyciu UIGridStyleLayout .
Ustawia GuiObject, które zostaną wybrane, gdy selektor gamepada zostanie przesunięty w dół.
Ustawia GuiObject, które zostaną wybrane, gdy selektor gamepada zostanie przesunięty w lewo.
Ustawia GuiObject, które zostaną wybrane, gdy selektor gamepada zostanie przesunięty w prawo.
Ustawia GuiObject, które zostaną wybrane, gdy selektor gamepada zostanie przesunięty w górę.
Określa pozycję piksela i skalarną pozycję GuiObject.
Określa liczbę stopni, w jakich GuiObject jest obrócony.
Określ, czy GuiObject może być wybrane przez gamepad.
Zastępuje domyślną ozdobę selekcji używaną do gamepadów.
Kolejność GuiObjects wybrana przez wybór interfejsu gamepada.
Określa rozmiar piksela i skali GuiObject .
Ustawia osie Size, na których GuiObject będzie oparty, w stosunku do rozmiaru jego rodzica.
Mieszana właściwość BackgroundTransparency i TextTransparency.
Określa, czy GuiObject i jego potomkowie zostaną wyrenderowane.
Określa kolejność, w której renderowanie GuiObject względem innych.
Opisuje rzeczywistą pozycję ekranu elementu GuiBase2d w pikselach.
Opisuje rzeczywitą rotację ekranu elementu GuiBase2d w stopniach.
Opisuje rzeczywistą rozdzielczość ekranu elementu GuiBase2d w pikselach.
Gdy ustawiono na true, lokalizacja zostanie zastosowana do tego GuiBase2d i jego potomków.
Odwołanie do LocalizationTable , które ma być użyte do zastosowania automatyzowanej lokalizacji do tego GuiBase2d i jego potomków.
Dostosowuje zachowanie wyboru pada w dół w grze.
Dostosowuje zachowanie wyboru gamepada w lewo.
Dostosowuje zachowanie wyboru gamepada w prawnym kierunku.
Dostosowuje zachowanie wyboru gamepada w kierunku góry.
Umożliwia dostosowanie ruchu wyboru gamepada.
Metody
Metody odziedziczeni z: GuiObject- TweenPosition(endPosition : UDim2,easingDirection : Enum.EasingDirection,easingStyle : Enum.EasingStyle,time : number,override : boolean,callback : function):boolean
Płynnie przenosi interfejs użytkownika do nowego UDim2.
- TweenSize(endSize : UDim2,easingDirection : Enum.EasingDirection,easingStyle : Enum.EasingStyle,time : number,override : boolean,callback : function):boolean
- TweenSizeAndPosition(endSize : UDim2,endPosition : UDim2,easingDirection : Enum.EasingDirection,easingStyle : Enum.EasingStyle,time : number,override : boolean,callback : function):boolean
Płynnie przesuwa interfejs użytkownika do nowego rozmiaru i pozycji.
Zdarzenia
Zdarzenia odziedziczeni z: GuiObjectWystrzeliwany, gdy użytkownik zaczyna interakcję za pomocą urządzenia interfejsu człowiek-komputer (przycisk myszy w dół, dotknięcie rozpoczęcia, przycisk klawiatury w dół itp.).
Wystrzeliwany, gdy użytkownik zmienia sposób interakcji za pomocą urządzenia interfejsu człowiek-komputer (przycisk myszy w dół, dotknięcie początku, przycisk klawiatury w dół itp.).
Wystrzeliwany, gdy użytkownik przestaje interakcjonować za pomocą urządzenia interfejsu człowiek-komputer (przycisk myszy w dół, dotknięcie początku, przycisk klawiatury w dół itp.).
Wystrzeliwuje, gdy użytkownik przesuwa mysz do elementu GUI.
Wystrzeliwuje, gdy użytkownik przesuwa mysz poza element interfejsu graficznego.
Wystrzeliwuje za każdym razem, gdy użytkownik przesuwa mysz, gdy znajduje się w środku elementu GUI.
Wystrzeliwuje, gdy użytkownik przewija koło myszy wstecz, gdy mysz znajduje się nad elementem GUI.
Wystrzeliwuje, gdy użytkownik przewija koło myszy w przód, gdy mysz znajduje się nad elementem GUI.
Wystrzeliwany, gdy GuiObject jest skupiany za pomocą wyboru Gamepad.
Wystrzelony, gdy wybór Gamepada przestaje skupiać się na GuiObject.
Wystrzeliwuje, gdy gracz zaczyna, kontynuuje i zatrzymuje długie naciśnięcie elementu interfejsu.
- TouchPan(touchPositions : Array,totalTranslation : Vector2,velocity : Vector2,state : Enum.UserInputState):RBXScriptSignal
Wystrzeliwuje, gdy gracz przesuwa palec po elementze interfejsu.
- TouchPinch(touchPositions : Array,scale : number,velocity : number,state : Enum.UserInputState):RBXScriptSignal
Wystrzeliwuje, gdy gracz wykonuje gest przesuwania lub ciągnięcia za pomocą dwóch palców na element UI.
- TouchRotate(touchPositions : Array,rotation : number,velocity : number,state : Enum.UserInputState):RBXScriptSignal
Wystrzeliwuje, gdy gracz wykonuje gest rotacji za pomocą dwóch palców na element UI.
Wypala się, gdy gracz wykonuje gest przesuwania na element interfejsu użytkownika.
Wystrzeliwuje, gdy gracz wykonuje gest dotknięcia na element interfejsu.
- SelectionChanged(amISelected : boolean,previousSelection : GuiObject,newSelection : GuiObject):RBXScriptSignal
Wybucha, gdy wybór gamepada przenosi się do, opuszcza lub zmienia w ramach połączonego GuiBase2d lub dowolnego potomka GuiObjects.
Właściwości
Ambient
Właściwość ta określa kolor oświetlenia zastosowany do obszaru w ramach ViewportFrame . Domyślnie jest to
CurrentCamera
Camera instancja, która jest używana do renderowania obiektów dzieci. Domyślnie jest to nil .
Obiekt Camera nie się powiela, więc ViewportFrame.CurrentCamera również nie będzie się powielać.Gdy ustawisz tę właściwość, i zostaną zapisane i powielone wewnętrznie, aby klient mógł wyrenderować ramę bez obiektu .
ImageColor3
Właściwość ta określa, w jaki sposób zostanie skoloryzowany obraz renderowanych punktów widzenia, umożliwiając zmianę koloru bez bezpośredniej modyfikacji renderowanego obiektu.Domyślna wartość koloryzacji wynosi
Zobacz także ImageTransparency, który określa przejrzystość renderowanego obrazu.
ImageTransparency
Właściwość ta określa przejrzystość renderowanego obrazu widoku, umożliwiając zmianę przejrzystości bez bezpośredniej modyfikacji renderowanego obiektu.Wartość 0 (domyślna) jest całkowicie niedostępna, a wartość 1 jest całkowicie przejrzysta (niewidoczna).
Zobacz także ImageColor3, który określa, w jaki sposób renderowany obraz zostanie skoloryzowany.
LightDirection
A Vector3 reprezentujący kierunek źródła światła z pozycji