Package | laya.d3.core |
Class | public class Camera |
Inheritance | Camera BaseCamera Sprite3D ComponentNode Node EventDispatcher Object |
Camera
类用于创建摄像机。
Property | Defined By | ||
---|---|---|---|
active : Boolean
获取自身是否激活。
| Sprite3D | ||
activeInHierarchy : Boolean [read-only]
获取在场景中是否激活。
| Sprite3D | ||
aspectRatio : Number
获取横纵比。
| Camera | ||
boundFrustum : BoundFrustum [read-only]
获取摄像机视锥。
| Camera | ||
clearColor : Vector4 摄像机的清除颜色。 | BaseCamera | ||
clearFlag : int 清楚标记。 | BaseCamera | ||
componentsCount : int [read-only]
获得组件的数量。
| Sprite3D | ||
cullingMask : int 可视遮罩图层。 | BaseCamera | ||
destroyed : Boolean [只读]是否已经销毁。对象销毁后不能再使用。 | Node | ||
displayedInStage : Boolean [read-only] 表示是否在显示列表中显示。 | Node | ||
farPlane : Number
获取远裁面。
| BaseCamera | ||
fieldOfView : Number
获取视野。
| BaseCamera | ||
forward : Vector3 [read-only]
获取前向量。
| BaseCamera | ||
id : int [read-only]
获取唯一标识ID。
| Sprite3D | ||
isStatic : Boolean 是否静态,静态包含一系列的静态处理。 | Sprite3D | ||
layer : Layer
获取蒙版。
| Sprite3D | ||
loaded : Boolean [read-only]
获取是否已加载完成。
| Sprite3D | ||
name : String 节点名称。 | Node | ||
nearPlane : Number
获取近裁面。
| BaseCamera | ||
needViewport : Boolean [read-only] | Camera | ||
normalizedViewport : Viewport
获取裁剪空间的视口。
| Camera | ||
numChildren : int [read-only]
子对象数量。
| Node | ||
orthographic : Boolean
获取是否正交投影矩阵。
| BaseCamera | ||
orthographicVerticalSize : Number
获取正交投影垂直矩阵尺寸。
| BaseCamera | ||
parent : Node 父节点。 | Node | ||
position : Vector3 [read-only] 获取位置。 | BaseCamera | ||
projectionMatrix : Matrix4x4 获取投影矩阵。 | Camera | ||
projectionViewMatrix : Matrix4x4 [read-only]
获取视图投影矩阵。
| Camera | ||
renderingOrder : int | BaseCamera | ||
renderTarget : RenderTexture
获取渲染场景的渲染目标。
| BaseCamera | ||
renderTargetSize : Size
获取渲染目标的尺寸
| BaseCamera | ||
right : Vector3 [read-only]
获取右向量。
| BaseCamera | ||
scene : Scene [read-only]
获得所属场景。
| Sprite3D | ||
sky : Sky 获取天空。 | BaseCamera | ||
timer : Timer 时间控制器,默认为Laya.timer。 | Node | ||
transform : Transform3D [read-only]
获取精灵变换。
| Sprite3D | ||
up : Vector3 [read-only]
获取上向量。
| BaseCamera | ||
url : String
获取资源的URL地址。
| Sprite3D | ||
useOcclusionCulling : Boolean 渲染时是否用遮挡剔除。 | BaseCamera | ||
viewMatrix : Matrix4x4 [read-only]
获取视图矩阵。
| Camera | ||
viewport : Viewport
获取屏幕空间的视口。
| Camera |
Method | Defined By | ||
---|---|---|---|
Camera(aspectRatio:Number = 0, nearPlane:Number = 0.3, farPlane:Number = 1000)
创建一个 Camera 实例。
| Camera | ||
排序函数。
| Sprite3D | ||
[override]
| Camera | ||
_sortCamerasByRenderingOrder():void
通过RenderingOrder属性对摄像机机型排序。
| BaseCamera | ||
_update(state:RenderState):void [override]
更新
| Camera | ||
_updateConch(state:RenderState):void
更新
| Sprite3D | ||
addAllLayers():void
增加所有图层。
| BaseCamera | ||
[override]
添加子节点。
| Sprite3D | ||
[override]
添加子节点到指定的索引位置。
| Sprite3D | ||
addChildren(... args):void
批量增加子节点
| Node | ||
addComponent(type:*):Component3D
添加指定类型组件。
| Sprite3D | ||
增加可视图层。
| BaseCamera | ||
clearTimer(caller:*, method:Function):void
清理定时器。功能同Laya.timer.clearTimer()。
| Node | ||
clone():*
克隆。
| Sprite3D | ||
cloneTo(destObject:*):void
克隆。
| Sprite3D | ||
当前容器是否包含指定的 Node 节点对象 。
| Node | ||
转换2D屏幕坐标系统到3D正交投影下的坐标系统,注:只有正交模型下有效。
| Camera | ||
createConchModel():* [override] | BaseCamera | ||
destroy(destroyChild:Boolean = true):void [override] | BaseCamera | ||
destroyChildren():void
销毁所有子对象,不销毁自己本身。
| Node | ||
event(type:String, data:* = null):Boolean
派发事件。
| EventDispatcher | ||
frameLoop(delay:int, caller:*, method:Function, args:Array = null, coverBefore:Boolean = true):void
定时重复执行某函数(基于帧率)。功能同Laya.timer.frameLoop()。
| Node | ||
frameOnce(delay:int, caller:*, method:Function, args:Array = null, coverBefore:Boolean = true):void
定时执行一次某函数(基于帧率)。功能同Laya.timer.frameOnce()。
| Node | ||
getChildAt(index:int):Node
根据子节点的索引位置,获取子节点对象。
| Node | ||
getChildByName(name:String):Node
根据子节点的名字,获取子节点对象。
| Node | ||
getChildIndex(node:Node):int
根据子节点对象,获取子节点的索引位置。
| Node | ||
getComponentByIndex(index:int):Component3D
通过指定索引获得组件。
| Sprite3D | ||
getComponentByType(type:*, typeIndex:int = 0):Component3D
通过指定类型和类型索引获得组件。
| Sprite3D | ||
getComponentsByType(type:*, components:Vector.<Component3D>):void
通过指定类型获得所有组件。
| Sprite3D | ||
获取投影视图世界矩阵。
| Sprite3D | ||
hasListener(type:String):Boolean
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。
| EventDispatcher | ||
instantiate(original:Sprite3D, parent:Node = null, worldPositionStays:Boolean = true, position:Vector3 = null, rotation:Quaternion = null):Sprite3D [static]
创建精灵的克隆实例。
| Sprite3D | ||
isMouseEvent(type:String):Boolean
检测指定事件类型是否是鼠标事件。
| EventDispatcher | ||
[static]
加载网格模板,注意:不缓存。
| Sprite3D | ||
loadHierarchy(url:String):void
加载层级文件,并作为该节点的子节点。
| Sprite3D | ||
moveForward(distance:Number):void
向前移动。
| BaseCamera | ||
moveRight(distance:Number):void
向右移动。
| BaseCamera | ||
moveVertical(distance:Number):void
向上移动。
| BaseCamera | ||
计算从裁切空间生成的射线。
| Camera | ||
off(type:String, caller:*, listener:Function, onceOnly:Boolean = false):EventDispatcher
从 EventDispatcher 对象中删除侦听器。
| EventDispatcher | ||
offAll(type:String = null):EventDispatcher
从 EventDispatcher 对象中删除指定事件类型的所有侦听器。
| EventDispatcher | ||
on(type:String, caller:*, listener:Function, args:Array = null):EventDispatcher [override]
增加事件侦听器,以使侦听器能够接收事件通知。
如果侦听鼠标事件,则会自动设置自己和父亲节点的属性 mouseEnabled 的值为 true(如果父节点mouseEnabled=false,则停止设置父节点mouseEnabled属性)。
| Node | ||
onAsynLoaded(url:String, data:*, params:Array):void
private
| Sprite3D | ||
once(type:String, caller:*, listener:Function, args:Array = null):EventDispatcher [override]
增加事件侦听器,以使侦听器能够接收事件通知,此侦听事件响应一次后则自动移除侦听。
如果侦听鼠标事件,则会自动设置自己和父亲节点的属性 mouseEnabled 的值为 true(如果父节点mouseEnabled=false,则停止设置父节点mouseEnabled属性)。
| Node | ||
removeAllComponent():void
移除全部组件。
| Sprite3D | ||
removeAllLayers():void
移除所有图层。
| BaseCamera | ||
删除子节点。
| Node | ||
removeChildAt(index:int):Node [override]
根据子节点索引位置,删除对应的子节点对象。
| Sprite3D | ||
removeChildByName(name:String):Node
根据子节点名字删除对应的子节点对象,如果找不到不会抛出异常。
| Node | ||
removeChildren(beginIndex:int = 0, endIndex:int = 0x7fffffff):Node [override]
删除指定索引区间的所有子对象。
| Sprite3D | ||
removeComponentByType(type:*, typeIndex:int = 0):void
通过指定类型和类型索引移除组件。
| Sprite3D | ||
removeComponentsByType(type:*):void
通过指定类型移除所有组件。
| Sprite3D | ||
removeLayer(layer:Layer):void
移除可视图层。
| BaseCamera | ||
从父容器删除自己,如已经被删除不会抛出异常。
| Node | ||
替换子节点。
| Node | ||
ResetProjectionMatrix():void | BaseCamera | ||
设置子节点的索引位置。
| Node | ||
timerLoop(delay:int, caller:*, method:Function, args:Array = null, coverBefore:Boolean = true, jumpFrame:Boolean = false):void
定时重复执行某函数。功能同Laya.timer.timerLoop()。
| Node | ||
timerOnce(delay:int, caller:*, method:Function, args:Array = null, coverBefore:Boolean = true):void
定时执行某函数一次。功能同Laya.timer.timerOnce()。
| Node | ||
计算从屏幕空间生成的射线。
| Camera | ||
计算从世界空间准换三维坐标到裁切空间。
| Camera | ||
计算从世界空间准换三维坐标到屏幕空间。
| Camera |
Method | Defined By | ||
---|---|---|---|
_addSelfRenderObjects():void [override] | BaseCamera | ||
_calculateProjectionMatrix():void [override]
| Camera | ||
_clearSelfRenderObjects():void [override] | BaseCamera | ||
_parseCustomProps(rootNode:ComponentNode, innerResouMap:Object, customProps:Object, json:Object):void [override]
private
| Camera | ||
_updateChilds(state:RenderState):void
更新子节点。
| Sprite3D | ||
_updateChildsConch(state:RenderState):void
更新子节点。
| Sprite3D |
aspectRatio | property |
aspectRatio:Number
获取横纵比。
public function get aspectRatio():Number
public function set aspectRatio(value:Number):void
boundFrustum | property |
boundFrustum:BoundFrustum
[read-only] 获取摄像机视锥。
public function get boundFrustum():BoundFrustum
needViewport | property |
needViewport:Boolean
[read-only] public function get needViewport():Boolean
normalizedViewport | property |
normalizedViewport:Viewport
获取裁剪空间的视口。
public function get normalizedViewport():Viewport
public function set normalizedViewport(value:Viewport):void
projectionMatrix | property |
projectionMatrix:Matrix4x4
获取投影矩阵。
public function get projectionMatrix():Matrix4x4
public function set projectionMatrix(value:Matrix4x4):void
projectionViewMatrix | property |
projectionViewMatrix:Matrix4x4
[read-only] 获取视图投影矩阵。
public function get projectionViewMatrix():Matrix4x4
viewMatrix | property |
viewport | property |
viewport:Viewport
获取屏幕空间的视口。
public function get viewport():Viewport
public function set viewport(value:Viewport):void
Camera | () | Constructor |
public function Camera(aspectRatio:Number = 0, nearPlane:Number = 0.3, farPlane:Number = 1000)
创建一个 Camera
实例。
aspectRatio:Number (default = 0 ) — 横纵比。
| |
nearPlane:Number (default = 0.3 ) — 近裁面。
| |
farPlane:Number (default = 1000 ) — 远裁面。
|
_calculateProjectionMatrix | () | method |
override protected function _calculateProjectionMatrix():void
_parseCustomProps | () | method |
override protected function _parseCustomProps(rootNode:ComponentNode, innerResouMap:Object, customProps:Object, json:Object):void
private
Parameters
rootNode:ComponentNode | |
innerResouMap:Object | |
customProps:Object | |
json:Object |
_renderCamera | () | method |
override public function _renderCamera(gl:WebGLContext, state:RenderState, scene:Scene):void
Parameters
gl:WebGLContext | |
state:RenderState | |
scene:Scene |
_update | () | method |
convertScreenCoordToOrthographicCoord | () | method |
public function convertScreenCoordToOrthographicCoord(source:Vector3, out:Vector3):Boolean
转换2D屏幕坐标系统到3D正交投影下的坐标系统,注:只有正交模型下有效。
Parameters
source:Vector3 — 源坐标。
| |
out:Vector3 — 输出坐标。
|
Boolean — 是否转换成功。
|
normalizedViewportPointToRay | () | method |
public function normalizedViewportPointToRay(point:Vector2, out:Ray):void
计算从裁切空间生成的射线。
Parameters
point:Vector2 — 裁切空间的位置。。
| |
out:Ray |
viewportPointToRay | () | method |
public function viewportPointToRay(point:Vector2, out:Ray):void
计算从屏幕空间生成的射线。
Parameters
point:Vector2 — 屏幕空间的位置位置。
| |
out:Ray |
worldToNormalizedViewportPoint | () | method |
public function worldToNormalizedViewportPoint(position:Vector3, out:Vector3):void
计算从世界空间准换三维坐标到裁切空间。
Parameters
position:Vector3 — 世界空间的位置。
| |
out:Vector3 |
worldToViewportPoint | () | method |
public function worldToViewportPoint(position:Vector3, out:Vector3):void
计算从世界空间准换三维坐标到屏幕空间。
Parameters
position:Vector3 — 世界空间的位置。
| |
out:Vector3 |