ViewportFrame
*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.
ViewportFrame é um GuiObject que rendiza objetos 3D dentro de seus limites, oferecendo uma maneira de exibir objetos 3D em um espaço 2D como um ScreenGui .Este objeto tem as seguintes salvaguardas:
Nenhuma sombra ou efetos de pós-processamento são renderizados.
Enum.Material.Neon e Enum.Material.Glass materiais renderizam na qualidade mais baixa.
Nested GuiObjects não são suportados.
Por padrão, a iluminação dentro de um ViewportFrame age como se Lighting.EnvironmentSpecularScale e Lighting.EnvironmentDiffuseScale estejam ambos definidos para 0, portanto, propriedades que dependem desses campos, como SurfaceAppearance.MetalnessMap, podem parecer diferentes.
Este objeto pode usar uma criança Sky filha como um mapa de cubo para reflexões, no qual apenas as seis propriedades Sky do ObjetoSkybox[…] são usadas.Supondo que essas propriedades sejam válidas, a iluminação dentro do ViewportFrame age de forma semelhante se Lighting.EnvironmentSpecularScale e Lighting.EnvironmentDiffuseScale forem ambos definidos para 1.Para detalhes, veja aqui.
Amostras de código
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()
Resumo
Propriedades
A cor de iluminação aplicada à área dentro do ViewportFrame .
Camera que é usado para renderizar objetos filhos.
Determina como a imagem do campo de visão renderizado será colorida.
Determina a transparência da imagem do viewport renderizado.
A cor da luz emitida.
Um Vector3 representando a direção da originalde luz.
Determina se este elemento de UI afunda a entrada.
Determina o ponto de origem de um GuiObject , em relação ao seu tamanho absoluto.
Determina se o redimensionamento ocorre com base no conteúdo da criança.
Determina a cor de fundo GuiObject .
Determina a transparência do plano de fundo e da borda GuiObject.
Determina a cor da borda GuiObject .
Determina de que maneira a borda GuiObject é disposta em relação às suas dimensões.
Determina a largura do pixel da borda GuiObject .
Determina se descendente GuiObjects fora dos limites de um elemento GUI pai deve renderizar.
Determina se o mouse do jogador está sendo pressionado ativamente no GuiObject ou não.
Determina se o GuiButton pode ser interagido ou não, ou se o GuiState do GuiObject está mudando ou não.
Controla a ordem de classificação do GuiObject quando usado com um UIGridStyleLayout .
Define o GuiObject que será selecionado quando o seletor de gamepad for movido para baixo.
Define o GuiObject que será selecionado quando o seletor de gamepad for movido para a esquerda.
Define o GuiObject que será selecionado quando o seletor de gamepad for movido para a direita.
Define o GuiObject que será selecionado quando o seletor de gamepad for movido para cima.
Determina a posição do pixel e escalar da GuiObject .
Determina o número de graus em que o GuiObject é girado.
Determine se o GuiObject pode ser selecionado por um controle / controle de jogo.
Substitui o adorno de seleção padrão usado para gamepads.
A ordem de GuiObjects selecionada pela seleção da interface do gamepad.
Determina o tamanho do pixel e escalar do GuiObject .
Define os eixos Size que o GuiObject será baseado, em relação ao tamanho de seu pai.
Uma propriedade mista de BackgroundTransparency e TextTransparency.
Determina se o GuiObject e seus descendentes serão renderizados.
Determina a ordem em que um GuiObject renderiza em relação aos outros.
Descreve a posição real da tela de um elemento GuiBase2d , em pixels.
Descreve a rotação real da tela de um elemento GuiBase2d em graus.
Descreve o tamanho real da tela de um elemento GuiBase2d , em pixels.
Quando definido para true , a localização será aplicada a este GuiBase2d e seus descendentes.
Uma referência a um LocalizationTable para ser usado para aplicar localização automatizada a este GuiBase2d e seus descendentes.
Personaliza o comportamento de seleção de gamepad na direção de baixo.
Personaliza o comportamento de seleção do gamepad na direção esquerda.
Personaliza o comportamento de seleção do gamepad na direção certa.
Personaliza o comportamento de seleção do gamepad na direção de cima.
Permite a personalização do movimento de seleção do gamepad.
Métodos
Métodos herdados de GuiObject- TweenPosition(endPosition : UDim2,easingDirection : Enum.EasingDirection,easingStyle : Enum.EasingStyle,time : number,override : boolean,callback : function):boolean
Mova suavemente uma GUI para um novo 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
Mova suavemente uma GUI para um novo tamanho e posição.
Eventos
Eventos herdados de GuiObjectDispedido quando um usuário começa a interagir através de um dispositivo de Interface Humano-Computador (botão do mouse para baixo, toque começa, botão do teclado para baixo, etc).
Dispedido quando um usuário muda como está interagindo através de um dispositivo de Interface Humano-Computador (botão do mouse para baixo, toque começa, botão da tecla para baixo, etc).
Dispedido quando um usuário para de interagir através de um dispositivo de Interface Humano-Computador (botão do mouse para baixo, toque começar, botão da tecla para baixo, etc).
Dispara quando um usuário move o mouse para um elemento de GUI.
Dispara quando um usuário move o mouse para fora de um elemento de GUI.
Incêndios sempre que um usuário move o mouse enquanto ele está dentro de um elemento de GUI.
Dispara quando um usuário rola a roda do mouse de volta quando o mouse está sobre um elemento de GUI.
Dispara quando um usuário rola a roda do mouse para a frente quando o mouse está sobre um elemento de GUI.
Disparado quando o GuiObject está sendo focado no seletor Gamepad.
Dispedido quando o seletor de Gamepad para de se concentrar no GuiObject.
Incêndios quando o jogador começa, continua e para de apertar a tecla da interface de usuário por muito tempo.
- TouchPan(touchPositions : Array,totalTranslation : Vector2,velocity : Vector2,state : Enum.UserInputState):RBXScriptSignal
Dispara quando o jogador move o dedo sobre o elemento da interface.
- TouchPinch(touchPositions : Array,scale : number,velocity : number,state : Enum.UserInputState):RBXScriptSignal
Incêndios quando o jogador executa um gesto de pinça ou puxão usando dois dedos no elemento da interface.
- TouchRotate(touchPositions : Array,rotation : number,velocity : number,state : Enum.UserInputState):RBXScriptSignal
Incêndios quando o jogador executa um gesto de rotação usando dois dedos no elemento da interface.
Incêndios quando o jogador executa um gesto de deslize no elemento da interface.
Dispara quando o jogador executa um gesto de toque no elemento da interface.
- SelectionChanged(amISelected : boolean,previousSelection : GuiObject,newSelection : GuiObject):RBXScriptSignal
Incêndios quando a seleção do gamepad se move para, deixa ou muda dentro do conectado GuiBase2d ou qualquer descendente GuiObjects.
Propriedades
Ambient
Essa propriedade determina a cor de iluminação aplicada à área dentro do ViewportFrame . Padrão para
CurrentCamera
Camera instância que é usada para renderizar objetos filhos. Padrão para nil .
O objeto Camera não se replica, então o ViewportFrame.CurrentCamera também não se replicará.Quando você definir essa propriedade, Camera.CFrame e Camera.FieldOfView serão salvos e replicados com o ViewportFrame internamente para que o cliente possa renderizar o quadro sem um ObjetoCamera.
ImageColor3
Essa propriedade determina como a imagem do campo de visão renderizado será colorida, permitindo que você altere a cor sem modificar diretamente o Objetorenderizado.O valor padrão de colorização é
Veja também ImageTransparency que determina a transparência da imagem renderizada.
ImageTransparency
Essa propriedade determina a transparência da imagem do campo de visão renderizado, permitindo que você altere a transparência sem modificar diretamente o Objetorenderizado.Um valor de 0 (padrão) é completamente opaco e um valor de 1 é completamente transparente (invisível).
Veja também ImageColor3 que determina como a imagem renderizada será colorizada.
LightDirection
Um Vector3 representando a direção da fonte de luz a partir da posição