视频框渲染一个长方形,与 Frame 类似,带有移动的视频图像。视频必须来自上传到 Roblox 网站的文件。
视频被缩放以适合整个矩形,但在其原始分辨率显示时看起来最好。
2D和3D声音
放置在 下方的视频框将从该部分的 发出声音。
视频框展示了杜比效果,即其频率和倾斜与附加到它的任何部分的相对运动有关。
视频框的音量将由客户端的音频收听器(默认位置为 Camera 位置)与视频框的部分位置之间的距离决定。
视频框被视为 “全球” ,如果它不放置在基础零件上的 SurfaceGui 下。在这种情况下,音效将在整个场景方的同一音量播放。
代码示例
The code sample below demonstrates how to create and play a VideoFrame with SomeValidAssetID once the video has loaded.
local screenPart = Instance.new("Part")
screenPart.Parent = workspace
local surfaceGui = Instance.new("SurfaceGui")
surfaceGui.Parent = screenPart
local videoFrame = Instance.new("VideoFrame")
videoFrame.Parent = surfaceGui
videoFrame.Looped = true
videoFrame.Video = "rbxassetid://" -- add an asset ID to this
while not videoFrame.IsLoaded do
task.wait()
end
videoFrame:Play()
概要
属性
指示当 VideoFrame.Video 从 Roblox 服务器加载完毕并准备播游玩时。
设置是否重复 VideoFrame.Video 一旦播放完成后是否重复。
指示是否播放 VideoFrame.Video 。它可以设置为开始或暂停播放。
获取 VideoFrame.Video 文件的原始解析度。
指示 VideoFrame.Video 在秒内的长度。
指示 VideoFrame.Video 的秒进度。
与视频文件关联的 VideoFrame 对象的内容ID。
指示 VideoFrame.Video 目前播返回的音量。
决定这个 UI 元素是否沉没输入。
确定 GuiObject 的起始点,相对于其绝对尺寸。
决定是否基于子内容进行缩放。
决定 GuiObject 背景颜色。
决定 GuiObject 背景和边界的透明度。
决定 GuiObject 边框的颜色。
决定边界 GuiObject 是如何相对于其尺寸布置。
决定 GuiObject 边框的像素宽度。
决定是否描渲染父级 GUI 元素边界外的子元素 GuiObjects。
决定玩家的鼠标是否在 GuiObject 上被主动按下。
控制使用 GuiObject 与 UIGridStyleLayout 时的排序顺序。
设置当游戏手柄选择器向下移动时将选择的 GuiObject 。
设置当游戏手柄选择器移至左侧时将选择的 GuiObject 。
设置当游戏手柄选择器移至右侧时将选择的 GuiObject 。
设置当游戏手柄选择器向上移动时将选择的 GuiObject 。
确定 GuiObject 的像素和坐标位置。
决定旋转 GuiObject 的角度数。
确定是否可以由游戏手柄选择 GuiObject 。
覆盖用于游戏手柄的默认选择装饰。
游戏手柄 UI 选择选择的 GuiObjects 顺序。
决定 GuiObject 的像素和积分尺寸。
混合属性 BackgroundTransparency 和 TextTransparency 。
决定是否渲染 GuiObject 和其子孙。
决定 GuiObject 对其他人的相对渲染顺序。
方法
将 VideoFrame.Playing 设置为 false,如果 VideoFrame.Video 正在播放,则暂停播放。
将 VideoFrame.Playing 设置为真,播放当前 VideoFrame.Video 的 VideoFrame.TimePosition 。
- TweenPosition(endPosition : UDim2,easingDirection : Enum.EasingDirection,easingStyle : Enum.EasingStyle,time : number,override : boolean,callback : function):boolean
平滑地将图形用户界面移至新的 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
平滑地将图形用户界面移至新的尺寸和位置。
活动
每当循环 VideoFrame.Video 发生火焰。
当 VideoFrame.Video 播放完成并停止时发生火灾
当 VideoFrame.Video 加载时发生火灾。
这个事件会在 VideoFrame.Video 使用 VideoFrame:Pause() 暂停或将 VideoFrame.Playing 设置为 false 时触发。
随时发射,当 VideoFrame.Video 使用 VideoFrame:Play() 函数播放或设置 VideoFrame.Playing 为真时。
当用户开始通过人机界面设备(鼠标按钮向下、触摸开始、键盘按钮向下等)进行交互时,发射。
当用户通过人机界面设备(鼠标按钮向下、触摸开始、键盘按钮向下等)更改他们的互动方式时,发射。
当用户停止通过人机界面设备(鼠标按钮向下、触摸开始、键盘按钮向下等)进行交互时,发射。
当用户将鼠标移至图形用户界面元素时发生火焰。
当用户将鼠标移出 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
当玩家使用界面元素上的两个手指执行捏或拉动动作时,发生火焰。
- TouchRotate(touchPositions : Array,rotation : number,velocity : number,state : Enum.UserInputState):RBXScriptSignal
当玩家使用界面元素上的两个手指执行旋转动作时,发生火焰。
当玩家在 UI 元素上执行滑动动作时发生火焰。
当玩家在 UI 元素上执行了点击动作时发生火焰。
- SelectionChanged(amISelected : boolean,previousSelection : GuiObject,newSelection : GuiObject):RBXScriptSignal
当游戏手柄选择移动到、离开或在连接的 或任何子手柄中更改时,发生火焰。
属性
Playing
该属性表示 whether VideoFrame.Video 目前正在播放。它可以设置为开始或暂停播放,作为 VideoFrame:Play() 和 VideoFrame:Pause() 函数的替代。
Video
与视频文件关联的 VideoFrame 对象的内容ID。
代码示例
The code sample below demonstrates how to create and play a VideoFrame with SomeValidAssetID once the video has loaded.
local screenPart = Instance.new("Part")
screenPart.Parent = workspace
local surfaceGui = Instance.new("SurfaceGui")
surfaceGui.Parent = screenPart
local videoFrame = Instance.new("VideoFrame")
videoFrame.Parent = surfaceGui
videoFrame.Looped = true
videoFrame.Video = "rbxassetid://" -- add an asset ID to this
while not videoFrame.IsLoaded do
task.wait()
end
videoFrame:Play()
方法
Pause
将 VideoFrame.Playing 设置为 false,如果 VideoFrame.Video 正在播放,则暂停播放。
由于 VideoFrame.TimePosition 未重置,当视频重新启动时,它将从以前的位置继续。
返回
Play
将 VideoFrame.Playing 设置为真,这将播放 VideoFrame.Video,从当前 VideoFrame.TimePosition 继续。
返回
代码示例
The code sample below demonstrates how to create and play a VideoFrame with SomeValidAssetID once the video has loaded.
local screenPart = Instance.new("Part")
screenPart.Parent = workspace
local surfaceGui = Instance.new("SurfaceGui")
surfaceGui.Parent = screenPart
local videoFrame = Instance.new("VideoFrame")
videoFrame.Parent = surfaceGui
videoFrame.Looped = true
videoFrame.Video = "rbxassetid://" -- add an asset ID to this
while not videoFrame.IsLoaded do
task.wait()
end
videoFrame:Play()
活动
Paused
这个事件会在 VideoFrame.Video 使用 VideoFrame:Pause() 暂停或将 VideoFrame.Playing 设置为 false 时触发。
参数
暂停视频的内容 ID。