ViewportFrame

显示已弃用

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

ViewportFrame 是一个 GuiObject ,可以在其边界内渲染3D对象,提供一个方法来在2D空间中显示3D对象。 这个对象有以下缺点:

代码示例

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

读取并联

这个属性确定适用于ViewportFrame内的区域的照明色。默认为Color3.fromRGB(200, 200, 200)(幽灵灰)。

CurrentCamera

未复制
读取并联

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

Class.Camera 对象不会复制,因此 ViewportFrame.CurrentCamera 也不会复制。当您设置此属性时, Camera.CFrame 和 1>Class.Camera.FieldOfView1> 将被保存并重复使用,因此

ImageColor3

读取并联

这个属性决定着一个渲染图像的颜色,允许您改变图像颜色,而不会直接修改渲染对象。默认颜色化值是 Color3.new(1, 1, 1) (白色),在这里没有颜色修改发生。

还请参阅ImageTransparency,这在很大程度上取决于渲染图像的透明度。

ImageTransparency

读取并联

这个属性决定了渲染图像的透明度,允许您改变图像透明度,而不会直接修改渲染对象。一个值为 0 (默认值) 是完全不透明的,一个值为 1 是完全透明的(隐藏)。

还参阅 ImageColor3 ,该参阅决定着画像如何着色。

LightColor

读取并联

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

LightDirection

读取并联

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

方法

活动