Packagelaya.d3.core.scene
Classpublic class VRScene
InheritanceVRScene Inheritance BaseScene Inheritance Sprite Inheritance Node Inheritance EventDispatcher Inheritance Object

VRScene 类用于实现VR场景。



Public Properties
 PropertyDefined By
 Inheritedalpha : Number
透明度,值为0-1,默认值为1,表示不透明。更改alpha值会影响drawcall。
Sprite
 InheritedautoSize : Boolean = false
指定是否自动计算宽高数据。默认值为 false 。 Sprite宽高默认为0,并且不会随着绘制内容的变化而变化,如果想根据绘制内容获取宽高,可以设置本属性为true,或者通过getBounds方法获取。设置为true,对性能有一定影响。
Sprite
 InheritedblendMode : String
指定要使用的混合模式。目前只支持"lighter"。
Sprite
 InheritedcacheAs : String
指定显示对象是否缓存为静态图像,cacheAs时,子对象发生变化,会自动重新缓存,同时也可以手动调用reCache方法更新缓存。 建议把不经常变化的“复杂内容”缓存为静态图像,能极大提高渲染性能。cacheAs有"none","normal"和"bitmap"三个值可选。 默认为"none",不做任何缓存。 当值为"normal"时,canvas模式下进行画布缓存,webgl模式下进行命令缓存。 当值为"bitmap"时,canvas模式下进行依然是画布缓存,webgl模式下使用renderTarget缓存。 webgl下renderTarget缓存模式有最大2048大小限制,会额外增加内存开销,不断重绘时开销比较大,但是会减少drawcall,渲染性能最高。 webgl下命令缓存模式只会减少节点遍历及命令组织,不会减少drawcall,性能中等。
Sprite
 InheritedcacheAsBitmap : Boolean
指定显示对象是否缓存为静态图像。功能同cacheAs的normal模式。
Sprite
 InheritedcustomRenderEnable : Boolean
[write-only] 设置是否开启自定义渲染,只有开启自定义渲染,才能使用customRender函数渲染。
Sprite
 Inheriteddestroyed : Boolean
是否已经销毁。对象销毁后不能再使用。
Node
 InheriteddisplayedInStage : Boolean
[read-only] 表示是否在显示列表中显示。
Node
 InheritedenableDepthFog : Boolean
BaseScene
 InheritedenableFog : Boolean
获取是否允许雾化。
BaseScene
 InheritedenableLight : Boolean = true
是否启用灯光。
BaseScene
 Inheritedfilters : Array
滤镜集合。可以设置多个滤镜组合。
Sprite
 InheritedfogColor : Vector3
获取雾化颜色。
BaseScene
 InheritedfogRange : Number
获取雾化范围。
BaseScene
 InheritedfogStart : Number
获取雾化起始位置。
BaseScene
 InheritedglobalScaleX : Number
[read-only] 获得相对于stage的全局X轴缩放值(会叠加父亲节点的缩放值)。
Sprite
 InheritedglobalScaleY : Number
[read-only] 获得相对于stage的全局Y轴缩放值(会叠加父亲节点的缩放值)。
Sprite
 Inheritedgraphics : Graphics
绘图对象。封装了绘制位图和矢量图的接口,Sprite所有的绘图操作都通过Graphics来实现的。
Sprite
 Inheritedheight : Number
表示显示对象的高度,以像素为单位。 高度默认为0,可以手动设置,或者通过getbounds获取实际宽度。设置此高度只用来做鼠标碰撞使用,改变后并不影响显示对象大小。
Sprite
 InheritedhitArea : *
可以设置一个Rectangle区域作为点击区域,或者设置一个HitArea实例作为点击区域,HitArea内可以设置可点击和不可点击区域。 如果不设置hitArea,则根据宽高形成的区域进行碰撞。
Sprite
 InheritedhitTestPrior : Boolean = false
指定鼠标碰撞检测是否优先检测自己。默认为false 鼠标碰撞检测是优先检测子对象,然后冒泡到父对象,如果hitTestPrior=true 鼠标碰撞优先检测本对象,本对象被击中后,才进一步检测子对象。 对于已知大小的容器(特别是根容器),设置此值为true,能减少节点碰撞,提高性能。默认为false。UI的View组建默认为true。
Sprite
 Inheritedmask : Sprite
遮罩,可以设置一个对象(支持位图和矢量图),根据对象形状进行遮罩显示。 注意】遮罩对象坐标系是相对遮罩对象本身的,和Flash机制不同
Sprite
 InheritedmouseEnabled : Boolean
是否接受鼠标事件。 默认为false,如果监听鼠标事件,则会自动设置本对象及父节点的属性 mouseEnable 的值都为 true(如果父节点手动设置为false,则不会更改)。
Sprite
 InheritedmouseThrough : Boolean = false
指定当mouseEnabled=true时,是否可穿透。默认值为false,如果设置为true,则点击空白区域可以穿透过去,只针对自身有效。
Sprite
 InheritedmouseX : Number
[read-only] 返回鼠标在此对象坐标系上的 X 轴坐标信息。
Sprite
 InheritedmouseY : Number
[read-only] 返回鼠标在此对象坐标系上的 Y 轴坐标信息。
Sprite
 Inheritedname : String
节点名称。
Node
 InheritednumChildren : int
[read-only] 子对象数量。
Node
 InheritedoptimizeScrollRect : Boolean
指定是否对使用了 scrollRect 的显示对象进行优化处理。默认为false(不优化)。 当值为ture时:将对此对象使用了scrollRect 设定的显示区域以外的显示内容不进行渲染,以提高性能(如果子对象有旋转缩放或者中心点偏移,则显示筛选会不精确)。
Sprite
 InheritedparallelSplitShadowMaps : Vector.<ParallelSplitShadowMap>
BaseScene
 Inheritedparent : Node
[override]
Sprite
 InheritedpivotX : Number
X轴 轴心点的位置,单位为像素,默认为0。轴心点会影响对象位置,缩放中心,旋转中心。
Sprite
 InheritedpivotY : Number
Y轴 轴心点的位置,单位为像素,默认为0。轴心点会影响对象位置,缩放中心,旋转中心。
Sprite
 Inheritedrotation : Number
旋转角度,默认值为0。以角度为单位。
Sprite
 InheritedscaleX : Number
X轴缩放值,默认值为1。设置为负数,可以实现水平反转效果,比如scaleX=-1。
Sprite
 InheritedscaleY : Number
Y轴缩放值,默认值为1。设置为负数,可以实现垂直反转效果,比如scaleX=-1。
Sprite
 Inheritedscene : BaseScene
[read-only] 获取当前场景。
BaseScene
 InheritedscrollRect : Rectangle
显示对象的滚动矩形范围,具有裁剪效果(如果只想限制子对象渲染区域,请使用viewport),设置optimizeScrollRect=true,可以优化裁剪区域外的内容不进行渲染。 srollRect和viewport的区别: 1.srollRect自带裁剪效果,viewport只影响子对象渲染是否渲染,不具有裁剪效果(性能更高)。 2.设置rect的x,y属性均能实现区域滚动效果,但scrollRect会保持0,0点位置不变。
Sprite
 InheritedskewX : Number
水平倾斜角度,默认值为0。以角度为单位。
Sprite
 InheritedskewY : Number
垂直倾斜角度,默认值为0。以角度为单位。
Sprite
 Inheritedstage : Stage
[read-only] 对舞台 stage 的引用。
Sprite
 InheritedstaticCache : Boolean
设置cacheAs为非空时此值才有效,staticCache=true时,子对象变化时不会自动更新缓存,只能通过调用reCache方法手动刷新。
Sprite
 Inheritedtexture : Texture
设置一个Texture实例,并显示此图片(如果之前有其他绘制,则会被清除掉)。等同于graphics.clear();graphics.drawTexture()
Sprite
 Inheritedtimer : Timer
时间控制器,默认为Laya.timer。
Node
 Inheritedtransform : Matrix
对象的矩阵信息。通过设置矩阵可以实现节点旋转,缩放,位移效果。 矩阵更多信息请参考 Matrix
Sprite
 InheritedtreeLevel : int
四/八叉树的层数。
BaseScene
 InheritedtreeRoot : ITreeNode
四/八叉树的根节点。
BaseScene
 InheritedtreeSize : Vector3
四/八叉树的尺寸。
BaseScene
 Inheritedviewport : Rectangle = null
视口大小,视口外的子对象,将不被渲染(如果想实现裁剪效果,请使用srollRect),合理使用能提高渲染性能。比如由一个个小图片拼成的地图块,viewport外面的小图片将不渲染 srollRect和viewport的区别: 1.srollRect自带裁剪效果,viewport只影响子对象渲染是否渲染,不具有裁剪效果(性能更高)。 2.设置rect的x,y属性均能实现区域滚动效果,但scrollRect会保持0,0点位置不变。
Sprite
 Inheritedvisible : Boolean
表示是否可见,默认为true。如果设置不可见,节点将不被渲染。
Sprite
 Inheritedwidth : Number
表示显示对象的宽度,以像素为单位。 宽度默认为0,可以手动设置,或者通过getbounds获取实际宽度。设置此宽度只用来做鼠标碰撞使用,改变后并不影响显示对象大小。
Sprite
 Inheritedx : Number
表示显示对象相对于父容器的水平方向坐标值。
Sprite
 Inheritedy : Number
表示显示对象相对于父容器的垂直方向坐标值。
Sprite
 InheritedzOrder : Number
z排序,更改此值,则会按照值的大小对同一容器的所有对象重新排序。值越大,越靠上。默认为0,则根据添加顺序排序。
Sprite
Protected Properties
 PropertyDefined By
 Inherited_enableDepthFog : Boolean
BaseScene
Public Methods
 MethodDefined By
  
创建一个 VRScene 实例。
VRScene
 Inherited
[override] 添加子节点。
BaseScene
 Inherited
addChildAt(node:Node, index:int):Node
[override] 添加子节点到指定的索引位置。
BaseScene
 Inherited
addChildren(... args):void
批量增加子节点
Node
 Inherited
BaseScene
 Inherited
添加渲染队列。
BaseScene
 Inherited
addShaderDefine(define:int):void
增加shader宏定义。
BaseScene
 Inherited
渲染前处理,可重写此函数。
BaseScene
 Inherited
更新前处理,可重写此函数。
BaseScene
 Inherited
clearTimer(caller:*, method:Function):void
清理定时器。功能同Laya.timer.clearTimer()。
Node
 Inherited
contains(node:Node):Boolean
当前容器是否包含 node 节点。
Node
 Inherited
customRender(context:RenderContext, x:Number, y:Number):void
自定义更新、呈现显示对象。一般用来扩展渲染模式,请合理使用,可能会导致在加速器上无法渲染。 注意不要在此函数内增加或删除树节点,否则会对树节点遍历造成影响。
Sprite
 Inherited
destroy(destroyChild:Boolean = true):void
[override] 销毁此对象。destroy对象默认会把自己从父节点移除,并且清理自身引用关系,等待js自动垃圾回收机制回收。destroy后不能再使用。 destroy时会移除自身的事情监听,自身的timer监听,移除子对象及从父节点移除自己。
Sprite
 Inherited
销毁所有子对象,不销毁自己本身。
Node
 Inherited
drawToCanvas(canvasWidth:Number, canvasHeight:Number, offsetX:Number, offsetY:Number):HTMLCanvas
绘制 当前Sprite 到 Canvas 上,并返回一个HtmlCanvas 绘制的结果可以当作图片源,再次绘制到其他Sprite里面,示例: var htmlCanvas:HTMLCanvas = sprite.drawToCanvas(100, 100, 0, 0);//把精灵绘制到canvas上面 var texture:Texture = new Texture(htmlCanvas);//使用htmlCanvas创建Texture var sp:Sprite = new Sprite().pos(0, 200);//创建精灵并把它放倒200位置 sp.graphics.drawTexture(texture);//把截图绘制到精灵上 Laya.stage.addChild(sp);//把精灵显示到舞台 也可以获取原始图片数据,分享到网上,从而实现截图效果,示例: var htmlCanvas:HTMLCanvas = sprite.drawToCanvas(100, 100, 0, 0);//把精灵绘制到canvas上面 var canvas:= htmlCanvas.getCanvas();//获取原生的canvas对象 trace(canvas.toDataURL("image/png"));//打印图片base64信息,可以发给服务器或者保存为图片
Sprite
 Inherited
event(type:String, data:* = null):Boolean
派发事件。
EventDispatcher
 Inherited
frameLoop(delay:int, caller:*, method:Function, args:Array = null, coverBefore:Boolean = true):void
定时重复执行某函数(基于帧率)。功能同Laya.timer.frameLoop()。
Node
 Inherited
frameOnce(delay:int, caller:*, method:Function, args:Array = null, coverBefore:Boolean = true):void
定时执行一次某函数(基于帧率)。功能同Laya.timer.frameOnce()。
Node
 Inherited
fromImage(url:String):Sprite
[static] 根据图片地址创建一个新的 Sprite 对象用于加载并显示此图片。
Sprite
 Inherited
将父容器坐标系坐标转换到本地坐标系。
Sprite
 Inherited
获取本对象在父容器坐标系的矩形显示区域。 注意:计算量较大,尽量少用。
Sprite
 Inherited
getChildAt(index:int):Node
根据子节点的索引位置,获取子节点对象。
Node
 Inherited
getChildByName(name:String):Node
根据子节点的名字,获取子节点对象。
Node
 Inherited
根据子节点对象,获取子节点的索引位置。
Node
 Inherited
getGraphicBounds(realSize:Boolean = false):Rectangle
返回此实例中的绘图对象( Graphics )的显示区域,不包括子对象。
Sprite
 Inherited
获得相对于本对象上的鼠标坐标信息。
Sprite
 Inherited
getRenderQueue(index:int):RenderQueue
获得某个渲染队列。
BaseScene
 Inherited
获取本对象在自己坐标系的矩形显示区域。 注意:计算量较大,尽量少用。
Sprite
 Inherited
globalToLocal(point:Point, createNewPoint:Boolean = false):Point
把stage的全局坐标转换为本地坐标。
Sprite
 Inherited
hasListener(type:String):Boolean
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。
EventDispatcher
 Inherited
hitTestPoint(x:Number, y:Number):Boolean
检测某个点是否在此对象内。
Sprite
 Inherited
initOctree(width:int, height:int, depth:int, center:Vector3, level:int = 6):void
初始化八叉树。
BaseScene
 Inherited
isMouseEvent(type:String):Boolean
检测指定事件类型是否是鼠标事件。
EventDispatcher
 Inherited
渲染后处理,可重写此函数。
BaseScene
 Inherited
更新后处理,可重写此函数。
BaseScene
 Inherited
loadImage(url:String, x:Number = 0, y:Number = 0, width:Number = 0, height:Number = 0, complete:Handler = null):Sprite
加载并显示一个图片。功能等同于graphics.loadImage方法。支持异步加载。 注意:多次调用loadImage绘制不同的图片,会同时显示。
Sprite
 Inherited
localToGlobal(point:Point, createNewPoint:Boolean = false):Point
把本地坐标转换为相对stage的全局坐标。
Sprite
 Inherited
off(type:String, caller:*, listener:Function, onceOnly:Boolean = false):EventDispatcher
从 EventDispatcher 对象中删除侦听器。
EventDispatcher
 Inherited
offAll(type:String = null):EventDispatcher
从 EventDispatcher 对象中删除指定事件类型的所有侦听器。
EventDispatcher
 Inherited
on(type:String, caller:*, listener:Function, args:Array = null):EventDispatcher
[override] 增加事件侦听器,以使侦听器能够接收事件通知。 如果侦听鼠标事件,则会自动设置自己和父亲节点的属性 mouseEnabled 的值为 true(如果父节点mouseEnabled=false,则停止设置父节点mouseEnabled属性)。
Sprite
 Inherited
once(type:String, caller:*, listener:Function, args:Array = null):EventDispatcher
[override] 增加事件侦听器,以使侦听器能够接收事件通知,此侦听事件响应一次后则自动移除侦听。 如果侦听鼠标事件,则会自动设置自己和父亲节点的属性 mouseEnabled 的值为 true(如果父节点mouseEnabled=false,则停止设置父节点mouseEnabled属性)。
Sprite
 Inherited
cacheAs时,设置所有父对象缓存失效。
Sprite
 Inherited
pivot(x:Number, y:Number):Sprite
设置轴心点。相当于分别设置pivotX和pivotY属性。
Sprite
 Inherited
pos(x:Number, y:Number, speedMode:Boolean = false):Sprite
设置坐标位置。相当于分别设置x和y属性。
Sprite
 Inherited
reCache():void
在设置cacheAs的情况下,调用此方法会重新刷新缓存。
Sprite
 Inherited
删除子节点。
Node
 Inherited
removeChildAt(index:int):Node
[override] 根据子节点索引位置,删除对应的子节点对象。
BaseScene
 Inherited
removeChildByName(name:String):Node
根据子节点名字删除对应的子节点对象,如果找不到不会抛出异常。
Node
 Inherited
removeChildren(beginIndex:int = 0, endIndex:int = 0x7fffffff):Node
[override] 删除指定索引区间的所有子对象。
BaseScene
 Inherited
从父容器删除自己,如已经被删除不会抛出异常。
Node
 Inherited
removeShaderDefine(define:int):void
移除shader宏定义。
BaseScene
 Inherited
render(context:RenderContext, x:Number, y:Number):void
[override] 更新、呈现显示对象。由系统调用。
BaseScene
 Inherited
repaint():void
cacheAs后,设置自己和父对象缓存失效。
Sprite
 Inherited
replaceChild(newNode:Node, oldNode:Node):Node
替换子节点。
Node
 Inherited
scale(scaleX:Number, scaleY:Number, speedMode:Boolean = false):Sprite
设置缩放。相当于分别设置scaleX和scaleY属性。
Sprite
 Inherited
setBounds(bound:Rectangle):void
设置bounds大小,如果有设置,则不再通过getBounds计算,合理使用能提高性能。
Sprite
 Inherited
setChildIndex(node:Node, index:int):Node
设置子节点的索引位置。
Node
 Inherited
size(width:Number, height:Number):Sprite
设置宽高。相当于分别设置width和height属性。
Sprite
 Inherited
skew(skewX:Number, skewY:Number):Sprite
设置倾斜角度。相当于分别设置skewX和skewY属性。
Sprite
 Inherited
startDrag(area:Rectangle = null, hasInertia:Boolean = false, elasticDistance:Number = 0, elasticBackTime:int = 300, data:* = null, disableMouseEvent:Boolean = false, ratio:Number = 0.92):void
开始拖动此对象。
Sprite
 Inherited
stopDrag():void
停止拖动此对象。
Sprite
 Inherited
timerLoop(delay:int, caller:*, method:Function, args:Array = null, coverBefore:Boolean = true):void
定时重复执行某函数。功能同Laya.timer.timerLoop()。
Node
 Inherited
timerOnce(delay:int, caller:*, method:Function, args:Array = null, coverBefore:Boolean = true):void
定时执行某函数一次。功能同Laya.timer.timerOnce()。
Node
 Inherited
将本地坐标系坐标转转换到父容器坐标系。
Sprite
 Inherited
根据zOrder进行重新排序。
Sprite
Protected Methods
 MethodDefined By
  
_renderCamera(gl:WebGLContext, state:RenderState, baseCamera:BaseCamera):void
[override]
VRScene
 Inherited
BaseScene
Events
 Event Summary Defined By
 Inherited添加到父对象后调度。Node
 Inherited鼠标点击对象后调度。Sprite
 Inherited加入节点树时调度。Node
 Inherited拖动结束后调度。Sprite
 Inherited拖动中调度。Sprite
 Inherited开始拖动后调度。Sprite
 Inherited在显示对象上按下后调度。Sprite
 Inherited鼠标在对象身上进行移动后调度Sprite
 Inherited鼠标离开对象后调度。Sprite
 Inherited鼠标经过对象后调度。Sprite
 Inherited在显示对象抬起后调度。Sprite
 Inherited被父对象移除后调度。Node
 Inherited从节点树移除时调度。Node
Public Constants
 ConstantDefined By
 InheritedFOGCOLOR : int = 0
[static]
BaseScene
 InheritedFOGRANGE : int = 2
[static]
BaseScene
 InheritedFOGSTART : int = 1
[static]
BaseScene
 InheritedLIGHTDIRAMBIENT : int = 5
[static]
BaseScene
 InheritedLIGHTDIRDIFFUSE : int = 4
[static]
BaseScene
 InheritedLIGHTDIRECTION : int = 3
[static]
BaseScene
 InheritedLIGHTDIRSPECULAR : int = 6
[static]
BaseScene
 InheritedPOINTLIGHTAMBIENT : int = 11
[static]
BaseScene
 InheritedPOINTLIGHTATTENUATION : int = 9
[static]
BaseScene
 InheritedPOINTLIGHTDIFFUSE : int = 10
[static]
BaseScene
 InheritedPOINTLIGHTPOS : int = 7
[static]
BaseScene
 InheritedPOINTLIGHTRANGE : int = 8
[static]
BaseScene
 InheritedPOINTLIGHTSPECULAR : int = 12
[static]
BaseScene
 InheritedSHADOWDISTANCE : int = 21
[static]
BaseScene
 InheritedSHADOWLIGHTVIEWPROJECT : int = 22
[static]
BaseScene
 InheritedSHADOWMAPPCFOFFSET : int = 23
[static]
BaseScene
 InheritedSHADOWMAPTEXTURE1 : int = 24
[static]
BaseScene
 InheritedSHADOWMAPTEXTURE2 : int = 25
[static]
BaseScene
 InheritedSHADOWMAPTEXTURE3 : int = 26
[static]
BaseScene
 InheritedSPOTLIGHTAMBIENT : int = 19
[static]
BaseScene
 InheritedSPOTLIGHTATTENUATION : int = 17
[static]
BaseScene
 InheritedSPOTLIGHTDIFFUSE : int = 18
[static]
BaseScene
 InheritedSPOTLIGHTDIRECTION : int = 14
[static]
BaseScene
 InheritedSPOTLIGHTPOS : int = 13
[static]
BaseScene
 InheritedSPOTLIGHTRANGE : int = 16
[static]
BaseScene
 InheritedSPOTLIGHTSPECULAR : int = 20
[static]
BaseScene
 InheritedSPOTLIGHTSPOT : int = 15
[static]
BaseScene
Constructor Detail
VRScene()Constructor
public function VRScene()

创建一个 VRScene 实例。

Method Detail
_renderCamera()method
override protected function _renderCamera(gl:WebGLContext, state:RenderState, baseCamera:BaseCamera):void

Parameters

gl:WebGLContext
 
state:RenderState
 
baseCamera:BaseCamera