3D广告牌容器
- 类型:BillBoardGui
简介
3D广告牌容器可将存储的UI对象呈3D形式显示在游戏场景中。为了确保向玩家显示容器控件下的UI对象,3D广告牌容器必须作为实体对象的子级,如零件
。
3D广告牌始终面向摄像机
,其相对于屏幕的大小可以通过设置AlwaysOnTop
属性保持不变也可以随距离变化。可以通过设置MaxDistance
属性来控制3D广告牌容器
的最大可视距离,当超过这个距离时,不可见,通过摄象机与界面的距离来计算。
当在游戏里需要加载一些明显的,可以从任何角度看到的UI控件时可以使用3D广告牌容器
,如加载其他角色的名字。
3D表面容器
与3D广告牌容器
和2D容器界面
的区别是3D表面容器
是加载于零件
或者其他实体对象的表面,而3D广告牌容器
存储的UI界面呈3D的样子展示,而且始终面向摄像机。2D容器界面
是加载在玩家界面
.
特点和注意事项
3D广告牌容器开启永远在最上层的属性后,会变为2D,但是优先级仍没有玩家界面的优先级高。
当作为下拉框控件的父级,下拉框控件不起作用。
属性
AlwaysOnTop 永远在最上层 bool
是否出现在最高层级,若参数为True,则会一直在屏幕上,且相对于摄象机距离大小不变。
ClipChild 被父控件裁切 bool
超出广告牌容器边界的子控件是否还会显示,勾选为显示,反之为不显示。
Size 大小 Vector2
设置此控件大小,单位为像素。
Offset 屏幕坐标位置 Vector3
相对屏幕坐标偏移的距离。
WorldSpaceOffset 世界坐标位置 Vector3
相对世界坐标偏移的距离。
MaxDistance 显示距离 float
玩家可以看到广告牌的最大距离。通过摄象机与界面的距离来计算,0表示无距离限制。
继承自RWObject:
Name 名称 string
该对象的自定义名称。
ClassName 类型 string
该对象对应的对象类型名称。
Parent 父级 RWObject
该对象的父级对象。
函数
继承自RWObject:
DelAllChild()
删除所有子对象
Available()
检查对象是否可用
Clone(parent)
复制自身,若有参数则以参数为父级
Destroy()
删除自身
GetAncestorByName(Name)
通过对象名字寻找父级对象
GetAncestorByClassName(className)
通过对象类型寻找父级对象
GetChildByName(Name,recursive)
通过对象名字寻找子级对象
GetChildByClassName(className,recursive)
通过对象类型寻找子级对象
GetAllChild()
寻找自身所有子级对象,并作为一个列表返回
GetAllDescendant()
递归寻找自身所有后代,并作为一个列表返回
IsAncestor(TarObj)
判断自身是否为目标对象的祖先
IsDescendant(TarObj)
判断自身是否为目标对象的后代
WaitForChild(childName,timeout)
寻找自身的子对象。如果没有子对象,在没有填写timeout参数时,会暂停进程直到找到子对象;如果填写了timeout参数,会根据参数时间暂停进程,超出参数时间后,进程照常进行
Child(childName)
根据给定的名字寻找自身的子对象
Equals(TarObj)
判断自身是否为目标对象,结果为真返回True,结果为假返回False;注意克隆、新建同类型、同名对象,equal结果均为假
IsClass(className)
判断自身是否为给定的对象类型
事件
继承自RWObject:
Destroyed()
删除自身时触发
ChildAdded(childobject)
添加子对象时触发
ChildRemoved(childobject)
移除子对象时触发
DescendantAdded(descendantobject)
添加后代时触发
DescendantRemoved(descendantobject)
移除后代时触发
AncestryChanged(AncestryChanged)
祖先变更时触发