1、有交互的页面元素一定要设interactive属性为true,否则监听的事件都将无反应。对于有事件的精灵,通常需要设置sprite.interactive = true , 对于作按钮用的精灵,需要设置sprite.buttonMode = true;
2、空的container无法捕捉到mousedown,mouseup事件。
3、使用对象的event.data.global可以转换当前位置为全局位置。
4、movieclip.textures = arr,arr为保存texture的数组。
5、为container加displaygroup属性可以为元素分层,需要引进pixi_display.js文件,有些手机不兼容,还可以利用锚点相同的多个container以添加顺序,后来者在上的方法来实现分层。因为游戏的加载顺序是分层加载,底层的加载完后再加载上层的。
6、pixi元素的移动有两种实现方法:
a:在主循环方法中持续改变位置:
box.x += speedx;
box.y += speedy;
b:PIXI.ticker.shared.add(fun,this);在fun中完成移动,使用此方法结构较清晰。
7、异步加载文件不应设定多个入口,应统一加载,在加载完的回调中进行下一步操作。
8、如果背景图与游戏元素位置无关,则可以将此sprite加到stage或是任意填充页面的container都可,如果相关,则需考虑相对位置和锚点。
9、判断精灵、动画是否已有texture:
sprite.texture.valid
movieclip.textures[0].valid
10、为避免重名,继承引擎中的类应该避免start、stop、update等函数名,避免覆盖。
11、PIXI 中对注册事件的相应规律:后注册的先响应。
12、PIXI中元素的.width .height是一个方法计算后返回的值,根据当前父元素的scale以及强制给的宽高得出的值,元素可能被拉伸或者压缩,可用元素._texture.height获得图片宽高。
container 无大小。当congtainer有子元素时,子元素所占大小即为其大小。为container设置大小时系统会为其设定scale来达到所要求的大小,之后往该container上加的子元素都会受到这个scale的约束,即使为子元素写宽高,也不能正确显示。