ViewportFrame
*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.
ViewportFrame è un GuiObject che rende oggetti 3D all'interno dei suoi confini, offrendo un modo per visualizzare oggetti 3D in uno spazio 2D come un ScreenGui .Questo oggetto ha le seguenti avvertenze:
Non vengono visualizzate ombre o effetti post-elaborazione .
Enum.Material.Neon e Enum.Material.Glass materiali si rendono alla qualità più bassa.
I nidati GuiObjects non sono supportati.
Per impostazione predefinita, l'illuminazione all'interno di un ViewportFrame agisce come se Lighting.EnvironmentSpecularScale e Lighting.EnvironmentDiffuseScale siano entrambi impostati su 0 , quindi le proprietà che dipendono da questi campi, come SurfaceAppearance.MetalnessMap , possono sembrare diverse.
Questo oggetto può utilizzare un figlio Sky come mappa a cubo per riflessi, in cui vengono utilizzate solo le sei proprietà Sky dell'oggetto Skybox[…].Presumendo che queste proprietà siano valide, l'illuminazione all'interno del ViewportFrame agisce in modo simile se Lighting.EnvironmentSpecularScale e Lighting.EnvironmentDiffuseScale sono entrambi impostati su 1 .Per i dettagli, vedi qui .
Campioni di codice
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()
Sommario
Proprietà
Il colore di illuminazione applicato all'area all'interno del ViewportFrame .
Camera che viene utilizzato per rendere oggetti figli.
Determina come verrà colorata l'immagine del viewport rendere.
Determina la trasparenza dell'immagine del viewport rendere.
Il colore della luce emessa.
Un Vector3 che rappresenta la direzione della Sorgentedi luce.
Determina se questo elemento UI riceve l'input.
Determina il punto di origine di un GuiObject , rispetto alla sua dimensione assoluta.
Determina se la ridimensionamento avvenga in base al contenuto del figlio.
Determina il colore di sfondo GuiObject .
Determina la trasparenza del GuiObject.
Determina il colore del bordo GuiObject .
Determina in che modo il bordo GuiObject viene disposto rispetto alle sue dimensioni.
Determina la larghezza dei pixel del bordo GuiObject .
Determina se il discendente GuiObjects al di fuori dei confini di un elemento GUI padre deve Renderizzare.
Determina se il mouse del Giocatoreviene attivamente premuto su GuiObject o no.
Determina se il GuiButton può essere interagito o meno, o se il GuiState del GuiObject sta cambiando o meno.
Controlla l'ordine di selezione del GuiObject quando viene utilizzato con un UIGridStyleLayout .
Imposta il GuiObject che verrà selezionato quando il selettore del gamepad viene spostato verso il basso.
Imposta il GuiObject che verrà selezionato quando il selettore del gamepad viene spostato a sinistra.
Imposta il GuiObject che verrà selezionato quando il selettore del gamepad viene spostato a destra.
Imposta il GuiObject che verrà selezionato quando il selettore del gamepad viene spostato verso l'alto.
Determina la posizione pixelare e scalare del GuiObject .
Determina il numero di gradi con cui il GuiObject viene ruotato.
Determina se il GuiObject può essere selezionato da un gamepad.
Sovrascrive l'abbellimento di selezione predefinito utilizzato per i gamepad.
L'ordine di GuiObjects selezionato dall'interfaccia utente del gamepad.
Determina la dimensione pixelare e scalare del GuiObject .
Imposta gli assi Size su cui si baserà il GuiObject , rispetto alla dimensione del suo parent.
Una proprietà mista di BackgroundTransparency e TextTransparency.
Determina se verranno resi i GuiObject e i suoi discendenti.
Determina l'ordine in cui un GuiObject rende relativamente agli altri.
Descrive la posizione effettiva dello schermo di un elemento GuiBase2d in pixel.
Descrive la rotazione effettiva dello schermo di un elemento GuiBase2d in gradi.
Descrive la dimensione effettiva dello schermo di un elemento GuiBase2d , in pixel.
Quando è impostato su true , la localizzazione verrà applicata a questo GuiBase2d e ai suoi discendenti.
Un riferimento a un LocalizationTable da utilizzare per applicare la localizzazione automatizzata a questo GuiBase2d e ai suoi discendenti.
Personalizza il comportamento di selezione del gamepad nella direzione down.
Personalizza il comportamento di selezione del gamepad nella direzione sinistra.
Personalizza il comportamento di selezione del gamepad nella direzione giusta.
Personalizza il comportamento di selezione del gamepad nella direzione up.
Consente la personalizzazione del movimento di selezione del gamepad.
Metodi
Metodi provenienti da GuiObject- TweenPosition(endPosition : UDim2,easingDirection : Enum.EasingDirection,easingStyle : Enum.EasingStyle,time : number,override : boolean,callback : function):boolean
Sposta lisciamente una GUI a una nuova 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
Sposta senza problemi una GUI a una nuova dimensione e posizione.
Eventi
Eventi provenienti da GuiObjectSpedito quando un utente inizia a interagire tramite un dispositivo Interfaccia Uomo-Computer (tasto del mouse giù, tocco di inizio, pulsante della tastiera giù, ecc.).
Spedito quando un utente cambia il modo in cui interagisce tramite un dispositivo Interfaccia Uomo-Computer (tasto del mouse verso il basso, tocco di inizio, pulsante della tastiera verso il basso, ecc.).
Spedito quando un utente smette di interagire tramite un dispositivo Interfaccia Uomo-Computer (tasto del mouse giù, tocco di inizio, pulsante della tastiera giù, ecc.).
Si attiva quando un utente muove il mouse su un elemento GUI.
Si attiva quando un utente muove il mouse fuori da un elemento GUI.
Si attiva ogni volta che un utente muove il mouse mentre è all'interno di un elemento GUI.
Si accende quando un utente fa scorrere la ruota del mouse indietro quando il mouse è sopra un elemento GUI.
Si accende quando un utente scorre la ruota del mouse in avanti quando il mouse è sopra un elemento GUI.
Spedito quando l'oggetto Gui viene focalizzato con il selettore Gamepad.
Spedito quando il selettore del Gamepad smette di concentrarsi sull'GuiObject.
Si accende quando il giocatore inizia, continua e smette di premere a lungo l'elemento UI.
- TouchPan(touchPositions : Array,totalTranslation : Vector2,velocity : Vector2,state : Enum.UserInputState):RBXScriptSignal
Si accende quando il giocatore muove il dito sull'elemento UI.
- TouchPinch(touchPositions : Array,scale : number,velocity : number,state : Enum.UserInputState):RBXScriptSignal
Si accende quando il giocatore esegue una pinza o una trazione utilizzando due dita sull'elemento UI.
- TouchRotate(touchPositions : Array,rotation : number,velocity : number,state : Enum.UserInputState):RBXScriptSignal
Si accende quando il giocatore esegue un gesto di rotazione utilizzando due dita sull'elemento UI.
Si attiva quando il giocatore esegue una gesture di scorrimento sull'elemento UI.
Si attiva quando il giocatore esegue una gesture tap sull'elemento UI.
- SelectionChanged(amISelected : boolean,previousSelection : GuiObject,newSelection : GuiObject):RBXScriptSignal
Si accende quando la selezione del gamepad si sposta, lascia o cambia all'interno del connesso GuiBase2d o di qualsiasi discendente GuiObjects .
Proprietà
Ambient
Questa proprietà determina il colore di illuminazione applicato all'area all'interno del ViewportFrame . Predefinito a
CurrentCamera
Camera istanza che viene utilizzata per rendere oggetti figli. Predefinito a nil .
L'oggetto Camera non si duplica quindi neanche il ViewportFrame.CurrentCamera non si duplica.Quando impostate questa Proprietà, Camera.CFrame e Camera.FieldOfView verranno salvati e replicati con il ViewportFrame internamente in modo che il client possa rendere il frame senza un oggetto Camera.
ImageColor3
Questa proprietà determina come verrà colorata l'immagine del viewport rendere, consentendoti di cambiare il colore senza modificare direttamente l'oggetto rendere.Il valore di colorazione predefinito è
Vedi anche ImageTransparency che determina la trasparenza dell'immagine renderta.
ImageTransparency
Questa proprietà determina la trasparenza dell'immagine del viewport rendere, consentendoti di modificare la trasparenza senza modificare direttamente l'oggetto rendere.Un valore di 0 (predefinito) è completamente opaco e un valore di 1 è completamente trasparente (invisibile).
Vedi anche ImageColor3 che determina come verrà colorata l'immagine renderta.
LightDirection
Un Vector3 che rappresenta la direzione della fonte di luce dalla posizione