는 경계 내에서 3D 개체를 렌더링하고, 2D 공간에서 3D 개체를 표시하는 방법을 제공하는 입니다.이 개체에는 다음과 같은 제한 사항이 있습니다:
그림자나 후처리 효과가 렌더링되지 않습니다.
Enum.Material.Neon 및 Enum.Material.Glass 재료는 가장 낮은 품질로 렌더링됩니다.
중첩된 GuiObjects 는 지원되지 않습니다.
기본적으로 내부 조명 은 마치 와 가 둘 다 설정되어 있는 것처럼 작동하므로, 이러한 필드에 의존하는 속성, 예를 들어 은 다르게 보일 수 있습니다.
이 개체는 자식을 반사의 큐브맵으로 사용할 수 있으며, 이 경우에는 오직 개체의 여섯 가지 속성만 사용됩니다.이러한 속성이 유효하다고 가정하면, ViewportFrame 내의 조명은 Lighting.EnvironmentSpecularScale 및 Lighting.EnvironmentDiffuseScale 모두가 1으로 설정된 경우와 유사하게 작동합니다.자세한 내용은 여기에 참조하십시오.
코드 샘플
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()
요약
속성
ViewportFrame 내의 영역에 적용된 조명 색상.
Camera 자식 개체를 렌더링하는 데 사용되는 것.
렌더링된 뷰포트 이미지의 색상을 결정합니다.
렌더링된 뷰포트 이미지의 투명도를 결정합니다.
방출된 조명의 색상.
A Vector3 조명 소스의 방향을 나타내는 것.
이 UI 요소가 입력을 받아들이는지 여부를 결정합니다.
상대적인 크기에 따라 GuiObject 의 원점을 결정하고 절대 크기에 따라 결정합니다.
자식 콘텐츠에 따라 크기 조정이 발생하는지 여부를 결정합니다.
배경색 GuiObject을 결정합니다.
배경과 경계의 투명도를 GuiObject 결정합니다.
GuiObject 경계의 색상을 결정합니다.
GuiObject 경계가 해당 차원에 대해 어떻게 배치되는지 결정합니다.
GuiObject 경계의 픽셀 너비를 결정합니다.
부모 GUI 요소의 범위 외부에서 후손 요소 GuiObjects 가 렌더링되어야 하는지 여부를 결정합니다.
플레이어의 마우스가 GuiObject 활성적으로 누르고 있는지 여부를 결정합니다.
GuiButton 와 상호작용할 수 있는지 또는 GuiState 의 GuiObject 가 변경되는지 여부를 결정합니다.
GuiObject를 사용하여 정렬 순서를 제어하며 UIGridStyleLayout와 함께 사용됩니다.
게임패드 선택기가 아래로 이동되면 선택될 GuiObject 를 설정합니다.
게임패드 선택기가 왼쪽으로 이동되면 선택될 GuiObject 를 설정합니다.
게임패드 선택기가 오른쪽으로 이동되면 선택될 GuiObject 를 설정합니다.
게임패드 선택기가 위쪽으로 이동되면 선택될 GuiObject 를 설정합니다.
GuiObject의 픽셀 및 스칼라 위치를 결정합니다.
GuiObject가 회전된 정도의 수를 결정합니다.
게임패드에서 선택할 수 있는 GuiObject 여부를 결정합니다.
게임패드에 사용되는 기본 선택 장식을 재정의합니다.
게임패드 UI 선택에 의해 선택된 GuiObjects의 순서.
GuiObject의 픽셀 및 스칼라 크기를 결정합니다.
BackgroundTransparency 와 TextTransparency 의 혼합 속성.
GuiObject 및 그 하위 요소가 렌더링될지 여부를 결정합니다.
다른 사람들에 비해 GuiObject가 렌더링되는 순서를 결정합니다.
픽셀로 표시되는 실제 화면 위치의 GuiBase2d 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소 요소
GuiBase2d 요소의 실제 화면 회전을 도 단위로 설명합니다.
픽셀로 표시되는 실제 화면 크기의 GuiBase2d 요소를 설명합니다.
true 로 설정되면 지역화가 이 GuiBase2d 및 그 하위에 적용됩니다.
이 GuiBase2d 및 그 하위에 자동화된 로캘리제이션을 적용하기 위해 사용할 LocalizationTable 참조.
아래쪽 방향으로 게임패드 선택 행동을 사용자 지정합니다.
왼쪽 방향에서 게임패드 선택 동작을 사용자 지정합니다.
오른쪽 방향으로 게임패드 선택 행동을 사용자 지정합니다.
위쪽으로 게임패드 선택 행동을 사용자 지정합니다.
게임패드 선택 이동을 사용자 지정할 수 있습니다.
메서드
메서드가 GuiObject에서 상속되었습니다- TweenPosition(endPosition : UDim2,easingDirection : Enum.EasingDirection,easingStyle : Enum.EasingStyle,time : number,override : boolean,callback : function):boolean
매끄럽게 GUI를 새로운 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
GUI를 새 크기와 위치로 부드럽게 이동합니다.
이벤트
이벤트가 GuiObject에서 상속되었습니다사용자가 인간-컴퓨터 인터페이스 장치(마우스 버튼 아래로, 터치 시작, 키보드 버튼 아래로 등)를 통해 상호 작용을 시작할 때 발생합니다.
사용자가 인간-컴퓨터 인터페이스 장치(마우스 버튼 아래로, 터치 시작, 키보드 버튼 아래로 등)를 통해 상호 작용하는 방식을 변경할 때 발생합니다.
사용자가 인간-컴퓨터 인터페이스 장치(마우스 버튼 아래로, 터치 시작, 키보드 버튼 아래로 등)를 통해 상호 작용을 중지할 때 발생합니다.
사용자가 GUI 요소로 마우스를 이동할 때 발생합니다.
사용자가 GUI 요소에서 마우스를 이동할 때 발생합니다.
사용자가 GUI 요소 내에서 마우스를 이동할 때마다 발생합니다.
사용자가 GUI 요소 위에 마우스를 스크롤할 때 마우스 휠을 뒤로 스크롤하면 발생합니다.
사용자가 GUI 요소 위에 마우스를 스크롤할 때 마우스 휠을 앞으로 스크롤하면 발생합니다.
게임패드 선택기로 GuiObject가 포커스되는 경우 발생합니다.
게임패드 선택기가 GuiObject에 대한 초점을 멈추면 발생합니다.
플레이어가 UI 요소를 길게 누르기 시작하면 발생하고, 계속되고, 중지됩니다.
- TouchPan(touchPositions : Array,totalTranslation : Vector2,velocity : Vector2,state : Enum.UserInputState):RBXScriptSignal
플레이어가 UI 요소에 손가락을 이동할 때 발생합니다.
- TouchPinch(touchPositions : Array,scale : number,velocity : number,state : Enum.UserInputState):RBXScriptSignal
UI 요소에서 두 손가락을 사용하여 핀치 또는 당기기 제스처를 수행할 때 발생합니다.
- TouchRotate(touchPositions : Array,rotation : number,velocity : number,state : Enum.UserInputState):RBXScriptSignal
UI 요소에서 두 손가락을 사용하여 회전 제스처를 수행할 때 발생합니다.
플레이어가 UI 요소에 스와이프 제스처를 수행할 때 발생합니다.
플레이어가 UI 요소에 탭 제스처를 수행할 때 발생합니다.
- SelectionChanged(amISelected : boolean,previousSelection : GuiObject,newSelection : GuiObject):RBXScriptSignal
연결된 게임패드 선택이 이동하거나, 나가거나, 변경되면 발생합니다. GuiBase2d 또는 모든 하위 요소에서 GuiObjects 입니다.
속성
CurrentCamera
Camera 자식 개체를 렌더링하는 데 사용되는 인스턴스. 기본값은 nil 입니다.
Camera 개체는 복제하지 않으므로 ViewportFrame.CurrentCamera도 복제하지 않습니다.이 속성을 설정하면 Camera.CFrame 및 Camera.FieldOfView 가 저장되고 내부적으로 ViewportFrame 로 복제되어 클라이언트가 프레임을 렌더링하지만 개체 Camera 없이 할 수 있습니다.
ImageColor3
이 속성은 렌더링된 뷰포트 이미지가 어떻게 색상이 지정되는지 결정하여 렌더링된 개체를 직접 수정하지 않고도 색상을 변경할 수 있습니다.기본 색상화 값은
또한 렌더링된 이미지의 투명도를 결정하는 ImageTransparency도 참조하십시오.
ImageTransparency
이 속성은 렌더링된 뷰포트 이미지의 투명도를 결정하여 렌더링된 개체를 직접 수정하지 않고도 투명도를 변경할 수 있습니다.기본값인 0 값은 완전히 불투명하고 1 값은 완전히 투명합니다(투명하지 않음).
또한 렌더링된 이미지가 어떻게 색상화될지 결정하는 ImageColor3도 참조하십시오.