Packagelaya.d3.core
Classpublic class Sprite3D
InheritanceSprite3D Inheritance ComponentNode Inheritance Node Inheritance EventDispatcher Inheritance Object
Implements IUpdate, laya.resource.ICreateResource, laya.d3.core.IClone
Subclasses BaseCamera, LightSprite, RenderableSprite3D, Terrain

Sprite3D 类用于实现3D精灵。



Public Properties
 PropertyDefined By
  active : Boolean
获取自身是否激活。
Sprite3D
  activeInHierarchy : Boolean
[read-only] 获取在场景中是否激活。
Sprite3D
  componentsCount : int
[read-only] 获得组件的数量。
Sprite3D
 Inheriteddestroyed : Boolean
[只读]是否已经销毁。对象销毁后不能再使用。
Node
 InheriteddisplayedInStage : Boolean
[read-only] 表示是否在显示列表中显示。
Node
  id : int
[read-only] 获取唯一标识ID。
Sprite3D
  isStatic : Boolean
是否静态,静态包含一系列的静态处理。
Sprite3D
  layer : Layer
获取蒙版。
Sprite3D
  loaded : Boolean
[read-only] 获取是否已加载完成。
Sprite3D
 Inheritedname : String
节点名称。
Node
 InheritednumChildren : int
[read-only] 子对象数量。
Node
 Inheritedparent : Node
父节点。
Node
  scene : Scene
[read-only] 获得所属场景。
Sprite3D
 Inheritedtimer : Timer
时间控制器,默认为Laya.timer。
Node
  transform : Transform3D
[read-only] 获取精灵变换。
Sprite3D
  url : String
获取资源的URL地址。
Sprite3D
Public Methods
 MethodDefined By
  
Sprite3D(name:String = null)
创建一个 Sprite3D 实例。
Sprite3D
  
_getSortID(renderElement:IRenderable, material:BaseMaterial):int
排序函数。
Sprite3D
  
_update(state:RenderState):void
更新
Sprite3D
  
更新
Sprite3D
  
[override] 添加子节点。
Sprite3D
  
addChildAt(node:Node, index:int):Node
[override] 添加子节点到指定的索引位置。
Sprite3D
 Inherited
addChildren(... args):void
批量增加子节点
Node
  
添加指定类型组件。
Sprite3D
 Inherited
clearTimer(caller:*, method:Function):void
清理定时器。功能同Laya.timer.clearTimer()。
Node
  
clone():*
克隆。
Sprite3D
  
cloneTo(destObject:*):void
克隆。
Sprite3D
 Inherited
contains(node:Node):Boolean
当前容器是否包含指定的 Node 节点对象 。
Node
  
destroy(destroyChild:Boolean = true):void
[override] 销毁此对象。destroy对象默认会把自己从父节点移除,并且清理自身引用关系,等待js自动垃圾回收机制回收。destroy后不能再使用。 destroy时会移除自身的事情监听,自身的timer监听,移除子对象及从父节点移除自己。
Sprite3D
 Inherited
销毁所有子对象,不销毁自己本身。
Node
 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
getChildAt(index:int):Node
根据子节点的索引位置,获取子节点对象。
Node
 Inherited
getChildByName(name:String):Node
根据子节点的名字,获取子节点对象。
Node
 Inherited
根据子节点对象,获取子节点的索引位置。
Node
  
通过指定索引获得组件。
Sprite3D
  
getComponentByType(type:*, typeIndex:int = 0):Component3D
通过指定类型和类型索引获得组件。
Sprite3D
  
getComponentsByType(type:*, components:Vector.<Component3D>):void
通过指定类型获得所有组件。
Sprite3D
  
获取投影视图世界矩阵。
Sprite3D
 Inherited
hasListener(type:String):Boolean
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。
EventDispatcher
  
instantiate(original:Sprite3D, parent:Node = null, worldPositionStays:Boolean = true, position:Vector3 = null, rotation:Quaternion = null):Sprite3D
[static] 创建精灵的克隆实例。
Sprite3D
 Inherited
isMouseEvent(type:String):Boolean
检测指定事件类型是否是鼠标事件。
EventDispatcher
  
load(url:String):Sprite3D
[static] 加载网格模板,注意:不缓存。
Sprite3D
  
loadHierarchy(url:String):void
加载层级文件,并作为该节点的子节点。
Sprite3D
 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属性)。
Node
  
onAsynLoaded(url:String, data:*, params:Array):void
private
Sprite3D
 Inherited
once(type:String, caller:*, listener:Function, args:Array = null):EventDispatcher
[override] 增加事件侦听器,以使侦听器能够接收事件通知,此侦听事件响应一次后则自动移除侦听。 如果侦听鼠标事件,则会自动设置自己和父亲节点的属性 mouseEnabled 的值为 true(如果父节点mouseEnabled=false,则停止设置父节点mouseEnabled属性)。
Node
  
移除全部组件。
Sprite3D
 Inherited
删除子节点。
Node
  
removeChildAt(index:int):Node
[override] 根据子节点索引位置,删除对应的子节点对象。
Sprite3D
 Inherited
removeChildByName(name:String):Node
根据子节点名字删除对应的子节点对象,如果找不到不会抛出异常。
Node
  
removeChildren(beginIndex:int = 0, endIndex:int = 0x7fffffff):Node
[override] 删除指定索引区间的所有子对象。
Sprite3D
  
removeComponentByType(type:*, typeIndex:int = 0):void
通过指定类型和类型索引移除组件。
Sprite3D
  
通过指定类型移除所有组件。
Sprite3D
 Inherited
从父容器删除自己,如已经被删除不会抛出异常。
Node
 Inherited
replaceChild(newNode:Node, oldNode:Node):Node
替换子节点。
Node
 Inherited
setChildIndex(node:Node, index:int):Node
设置子节点的索引位置。
Node
 Inherited
timerLoop(delay:int, caller:*, method:Function, args:Array = null, coverBefore:Boolean = true, jumpFrame:Boolean = false):void
定时重复执行某函数。功能同Laya.timer.timerLoop()。
Node
 Inherited
timerOnce(delay:int, caller:*, method:Function, args:Array = null, coverBefore:Boolean = true):void
定时执行某函数一次。功能同Laya.timer.timerOnce()。
Node
Protected Methods
 MethodDefined By
  
添加自身渲染物体,请重载此函数。
Sprite3D
  
清理自身渲染物体,请重载此函数。
Sprite3D
  
_parseCustomProps(rootNode:ComponentNode, innerResouMap:Object, customProps:Object, nodeData:Object):void
private
Sprite3D
  
更新子节点。
Sprite3D
  
更新子节点。
Sprite3D
Events
 Event Summary Defined By
 Inherited添加到父对象后调度。Node
 Inherited加入节点树时调度。Node
 Inherited被父对象移除后调度。Node
 Inherited从节点树移除时调度。Node
Property Detail
activeproperty
active:Boolean

获取自身是否激活。


Implementation
    public function get active():Boolean
    public function set active(value:Boolean):void
activeInHierarchyproperty 
activeInHierarchy:Boolean  [read-only]

获取在场景中是否激活。


Implementation
    public function get activeInHierarchy():Boolean
componentsCountproperty 
componentsCount:int  [read-only]

获得组件的数量。


Implementation
    public function get componentsCount():int
idproperty 
id:int  [read-only]

获取唯一标识ID。


Implementation
    public function get id():int
isStaticproperty 
public var isStatic:Boolean

是否静态,静态包含一系列的静态处理。

layerproperty 
layer:Layer

获取蒙版。


Implementation
    public function get layer():Layer
    public function set layer(value:Layer):void
loadedproperty 
loaded:Boolean  [read-only]

获取是否已加载完成。


Implementation
    public function get loaded():Boolean
sceneproperty 
scene:Scene  [read-only]

获得所属场景。


Implementation
    public function get scene():Scene
transformproperty 
transform:Transform3D  [read-only]

获取精灵变换。


Implementation
    public function get transform():Transform3D
urlproperty 
url:String

获取资源的URL地址。


Implementation
    public function get url():String
    public function set url(value:String):void
Constructor Detail
Sprite3D()Constructor
public function Sprite3D(name:String = null)

创建一个 Sprite3D 实例。

Parameters
name:String (default = null)
Method Detail
_addSelfRenderObjects()method
protected function _addSelfRenderObjects():void

添加自身渲染物体,请重载此函数。

_clearSelfRenderObjects()method 
protected function _clearSelfRenderObjects():void

清理自身渲染物体,请重载此函数。

_getSortID()method 
public function _getSortID(renderElement:IRenderable, material:BaseMaterial):int

排序函数。

Parameters

renderElement:IRenderable — 渲染相关状态。
 
material:BaseMaterial

Returns
int
_parseCustomProps()method 
protected function _parseCustomProps(rootNode:ComponentNode, innerResouMap:Object, customProps:Object, nodeData:Object):void

private

Parameters

rootNode:ComponentNode
 
innerResouMap:Object
 
customProps:Object
 
nodeData:Object

_update()method 
public function _update(state:RenderState):void

更新

Parameters

state:RenderState — 渲染相关状态

_updateChilds()method 
protected function _updateChilds(state:RenderState):void

更新子节点。

Parameters

state:RenderState — 渲染相关状态。

_updateChildsConch()method 
protected function _updateChildsConch(state:RenderState):void

更新子节点。

Parameters

state:RenderState — 渲染相关状态。

_updateConch()method 
public function _updateConch(state:RenderState):void

更新

Parameters

state:RenderState — 渲染相关状态

addChild()method 
override public function addChild(node:Node):Node

添加子节点。

Parameters

node:Node — 节点对象

Returns
Node — 返回添加的节点
addChildAt()method 
override public function addChildAt(node:Node, index:int):Node

添加子节点到指定的索引位置。

Parameters

node:Node — 节点对象。
 
index:int — 索引位置。

Returns
Node — 返回添加的节点。
addComponent()method 
public function addComponent(type:*):Component3D

添加指定类型组件。

Parameters

type:* — 组件类型。

Returns
Component3D — 组件。
clone()method 
public function clone():*

克隆。

Returns
* — 克隆副本。
cloneTo()method 
public function cloneTo(destObject:*):void

克隆。

Parameters

destObject:* — 克隆源。

destroy()method 
override public function destroy(destroyChild:Boolean = true):void

销毁此对象。destroy对象默认会把自己从父节点移除,并且清理自身引用关系,等待js自动垃圾回收机制回收。destroy后不能再使用。

destroy时会移除自身的事情监听,自身的timer监听,移除子对象及从父节点移除自己。

Parameters

destroyChild:Boolean (default = true) — (可选)是否同时销毁子节点,若值为true,则销毁子节点,否则不销毁子节点。

getComponentByIndex()method 
public function getComponentByIndex(index:int):Component3D

通过指定索引获得组件。

Parameters

index:int — 索引。

Returns
Component3D — 组件。
getComponentByType()method 
public function getComponentByType(type:*, typeIndex:int = 0):Component3D

通过指定类型和类型索引获得组件。

Parameters

type:* — 组件类型。
 
typeIndex:int (default = 0) — 类型索引。

Returns
Component3D — 组件。
getComponentsByType()method 
public function getComponentsByType(type:*, components:Vector.<Component3D>):void

通过指定类型获得所有组件。

Parameters

type:* — 组件类型。
 
components:Vector.<Component3D> — 组件输出队列。

getProjectionViewWorldMatrix()method 
public function getProjectionViewWorldMatrix(projectionViewMatrix:Matrix4x4):Matrix4x4

获取投影视图世界矩阵。

Parameters

projectionViewMatrix:Matrix4x4 — 投影视图矩阵。

Returns
Matrix4x4 — 投影视图世界矩阵。
instantiate()method 
public static function instantiate(original:Sprite3D, parent:Node = null, worldPositionStays:Boolean = true, position:Vector3 = null, rotation:Quaternion = null):Sprite3D

创建精灵的克隆实例。

Parameters

original:Sprite3D — 原始精灵。
 
parent:Node (default = null) — 父节点。
 
worldPositionStays:Boolean (default = true) — 是否保持自身世界变换。
 
position:Vector3 (default = null) — 世界位置,worldPositionStays为false时生效。
 
rotation:Quaternion (default = null) — 世界旋转,worldPositionStays为false时生效。

Returns
Sprite3D — 克隆实例。
load()method 
public static function load(url:String):Sprite3D

加载网格模板,注意:不缓存。

Parameters

url:String — 模板地址。

Returns
Sprite3D
loadHierarchy()method 
public function loadHierarchy(url:String):void

加载层级文件,并作为该节点的子节点。

Parameters

url:String

onAsynLoaded()method 
public function onAsynLoaded(url:String, data:*, params:Array):void

private

Parameters

url:String
 
data:*
 
params:Array

removeAllComponent()method 
public function removeAllComponent():void

移除全部组件。

removeChildAt()method 
override public function removeChildAt(index:int):Node

根据子节点索引位置,删除对应的子节点对象。

Parameters

index:int — 节点索引位置。

Returns
Node — 被删除的节点。
removeChildren()method 
override public function removeChildren(beginIndex:int = 0, endIndex:int = 0x7fffffff):Node

删除指定索引区间的所有子对象。

Parameters

beginIndex:int (default = 0) — 开始索引。
 
endIndex:int (default = 0x7fffffff) — 结束索引。

Returns
Node — 当前节点对象。
removeComponentByType()method 
public function removeComponentByType(type:*, typeIndex:int = 0):void

通过指定类型和类型索引移除组件。

Parameters

type:* — 组件类型。
 
typeIndex:int (default = 0) — 类型索引。

removeComponentsByType()method 
public function removeComponentsByType(type:*):void

通过指定类型移除所有组件。

Parameters

type:* — 组件类型。