+ | holder : object |
pfx所属的对象。
|
+ | isPlaying : bool |
pfx是否在播放。
|
+ | height : number |
粒子播放器距离地表的高度。
|
+ | particleFrameLimit : uint |
粒子播放器帧数限制,根据帧数限制计算粒子的transform。
|
+ | pause : bool |
暂停pfx。
|
+ | scene : _Scene |
粒子播放器作用的场景,多用于草的动态效果和自定义点光特效作用的场景。
|
+ | show : bool |
显示pfx。
|
+ | terrain : _Terrain |
设置播放地表粒子时的地表信息。
|
+ | function _ParticlePlayer() : _ParticlePlayer |
|
+ | function addParam(param : _ParticleParam) |
添加一个播放参数。 |
+ | function clearParams() |
清空所有播放参数。
|
+ | function delParam(name) |
删除名为name的播放参数。
|
+ | function draw2D(x : number, y : number) |
指定绘制粒子播放器的位置。
|
+ | function enumPfx(name : string, callback : function) |
枚举名字复合的pfx
|
+ | function getParam(name:string) : _ParticleParam |
获得名为name的播放参数。
|
+ | function getParams() : _ParticleParam[] |
获得所有播放参数。
|
+ | function move2D(name : string, x : number, y : number) |
移动粒子播放器到指定位置。
|
+ | function onEvent([once: bool], callback : function) |
设置pfx事件的回调。
|
|
+ | function play2D([logicname : string], resname : string, x : number, y : number, scale : number) |
用2D的方式播放粒子。
|
+ | function playParam([logicname : string], resname : string, param : string) |
用名为param的_ParticleParam规则播放resname的Pfx
|
+ | function replace(logicname : string, resname : string) |
用新的pfx替代逻辑名为Logicname的pfx。
|
+ | function reset(logicname : string) |
重放指定Pfx
|
+ | function stop(logicName : string, stopnow : bool) |
停止正在播放的pfx
|
+ | function stopAll(stopnow : bool) |
停止全部正在播放的pfx。
|
_sys:addPath('res')_dofile('cameracontrol.lua')_rd.camera.eye = _Vector3.new(50, 50, 50)m1 = _Matrix3D.new():setTranslation(0, 20, 0)m2 = _Matrix3D.new():setTranslation(-10, -40, 0)m3 = _Matrix3D.new():setTranslation(0, -40, 0)m4 = _Matrix3D.new():setTranslation(10, -40, 0)m2.ignoreWorld, m3.ignoreWorld, m4.ignoreWorld = true, true, trueskl = _Skeleton.new('girl.skl')san = skl:addAnima('skill.san|skill1.tag')san.speed = 0.2san.loop = truesan:play()msh = _Mesh.new('sword.msh')skl = msh:attachSkeleton(skl, 'rw', msh.graData:getMarker('dum_w'))mrw = skl:getBone('rw'):clone()mrw.root = m1ooo = _ParticleParam.new('ooo')ooo:addMarker('source', mrw)ooo:addMarker('target', m3)ooo:addDuration('bind_target', 1000)ooo.transform:setScaling(10, 10, 10)skl.pfxPlayer:addParam(ooo)oom1 = _ParticleParam.new('ooo')oom1:addMarker('source', mrw)oom1:addMarker('target', m2)skl.pfxPlayer:addParam(oom1)oom2 = _ParticleParam.new('ooo')oom2:addMarker('source', mrw)oom2:addMarker('target', m3)skl.pfxPlayer:addParam(oom2)oom3 = _ParticleParam.new('ooo')oom3:addMarker('source', mrw)oom3:addMarker('target', m4)skl.pfxPlayer:addParam(oom3)skl.pfxPlayer:onEvent(function (e) print(e) end)_app:onIdle(function(e) _rd:drawAxis(20) _rd:pushMatrix3D(m1) msh:drawMesh() skl:drawSkeleton() _rd:popMatrix3D() _rd:pushMatrix3D(m2) _rd:drawAxis(5) _rd:popMatrix3D() _rd:pushMatrix3D(m3) _rd:drawAxis(5) _rd:popMatrix3D() _rd:pushMatrix3D(m4) _rd:drawAxis(5) _rd:popMatrix3D()end)