ViewportFrame

显示已弃用

*此内容使用人工智能(Beta)翻译,可能包含错误。若要查看英文页面,请点按 此处

ViewportFrame 是一个 GuiObject ,可以渲染其边界内的 3D 对象,提供一个方法来在 2D 空间中显示 3D 对象,如 ScreenGui 。该对象有以下限制:

代码示例

ViewportFrame - Create GUI

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)
ViewportFrame - Control Camera

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()

概要

属性

继承自GuiObject属性继承自GuiBase2d属性

方法

继承自GuiObject方法

活动

继承自GuiObject活动继承自GuiBase2d活动

属性

Ambient

读取并联

该属性决定了应用于 区域内的照明色调。默认值为 (幽灵灰色)。

CurrentCamera

未复制
读取并联

Camera 用于渲染子对象的实例。默认为 nil

Camera 对象不会复制,因此 ViewportFrame.CurrentCamera 也不会复制。当你设置此属性时, 和 将被保存并复制到内部, 以便客户端可以无需 对象渲染框架。

ImageColor3

读取并联

该属性决定渲染视窗图像的颜色化方式,可以让你无需直接修改渲染对象就能改变颜色。默认颜色化值为 Color3.new(1, 1, 1) (白色),在这里没有发生颜色修改。

还看到 ImageTransparency ,这会决定渲染图像的透明度。

ImageTransparency

读取并联

该属性决定渲染视窗图像的透明度,允许您无需直接修改渲染对象就可以更改透明度。一个值为 0 (默认值)是完全不透明的,一个值为 1 是完全透明的(隐形)。

还见 ImageColor3 ,决定渲染图像将如何被着色。

LightColor

读取并联

发射的光的颜色。默认为 Color3.fromRGB(140, 140, 140) (银色)。

LightDirection

读取并联

A Vector3 代表从位置 (0, 0, 0) 的光源方向。默认为 Vector3.new(-1, -1, -1)

方法

活动