Web开发

注册

 

发新话题 回复该主题

Pixijs超快HTML5的2Dweb [复制链接]

1#
治白癜风医院 https://jbk.familydoctor.com.cn/bjbdfyy_ks4606/

Pixi.js是一款超快的开源HTML5D渲染引擎,使用带有Canvas回调功能的WebGL。作为JavaScript的D渲染器,Pixi的目标是,可以提供一个快速且轻量级的D库,并能兼容所有设备。此外让开发者无需了解WebGL,就可以感受到硬件加速的力量。

Pixi.js作为一款开源的HTML5D渲染引擎,旨在为开发者提供一个快速且轻量级的D库,并能兼容所有设备。能够兼容所有设备,简单得说也就是跨平台了,其实说到跨平台的开发工具,为数已经不少了,就小编知道的DevSto平台就已经收录很多了。

主要特性

真正的跨平台:在今天,开发工具跨平台已经不是什么稀奇的事了。不过Pixi.js则是一个可以兼容所有设备的超快HTML5D渲染引擎,并且拥有Canvas回调功能的WebGL,实现真正的跨平台。交互式多点触控:Pixi不仅支持移动和平板设备,还具有完整的多点触控输入识别,让开发者可以发挥自己的能力去挖掘出它所有的潜力。WebGL过滤器:当使用WebGL时,Pixi允许你使用自己熟悉且现有的过滤器。当然,你也可以使用自己创建的独一无二的过滤器,比如自定位移和半色调效果。着色和混合模式:对设计师来说,会很喜欢这个,Pixi.js允许用户着色和使用混合模式就像其他常见的视觉包比如Photoshop或Flash。渲染器自动检测:这个算是Pixi的一大特色,虽然Pixi是主要作为WebGLD渲染器而创建的,但仍支持非WebGL平台。其解决方案就是创建一个Canvas回调系统,只需一次编码,Pixi就可无缝管理回调。简易API:设计直观,易于上手。资源加载:精灵表单、图形、字体和动画数据等都可通过Pixi.js来加载和处理。支持精灵表单(Spritesheet)。

Pixi.js在跨平台特性上有什么过人之处呢?

它的独特之处在于其拥有了canvas回调功能的WebGL,使之可以兼容所有设备,并且速度会更快。

当使用WebGL时,Pixi允许你使用自己熟悉且现有的过滤器。当然,你也可以使用自己创建的独一无二的过滤器,比如自定位移和半色调效果。

Pixi不仅支持移动和平板设备,还具有完整的多点触控输入识别,让开发者可以自由发挥自己的能力去挖掘出它所有的潜力。除此之外,Pixi.js还允许用户着色和使用混合模式。

但是Pixi最大的一个特色要属渲染器自动检测了。虽然Pixi是主要作为WebGLD渲染器而创建的,但依然支持非WebGL平台。其解决方案就是创建一个Canvas回调系统,只需一次编码,Pixi就可无缝管理回调了。

一款产品界面的美观与否,渲染引擎的选择真真是极重要的。

部分示例页面

WebGLFilters!RunpixierunFightforEveryoneFlashvsHTMLBunnyDemoStormBwingFiltersDemoRenderTextuDemoPrimitivesDemoMaskingDemoInteractionDemophotonstormsBallsDemophotonstormsMorphDemo

快速使用

//创建pixi的stagevarstage=newPIXI.Stage(0x);//创建一个渲染varnder=PIXI.autoDetectRender(,);//添加到页面document.body.appendChild(nder.view);questAnimFrame(animate);

以上生成了最简单的pixi,下面创建游戏元素:

//创建添加一个素材vartextu=PIXI.Textu.fromImage("img/fist.png");//使用素材创建一个动画元素varbunny=newPIXI.Sprite(textu);//居中bunny.anchor.x=.5;bunny.anchor.y=.5;//移动到游戏屏幕中央bunny.position.x=00;bunny.position.y=;stage.addChild(bunny);

最后是动画效果代码:

functionanimate(){questAnimFrame(animate);//添加旋转效果bunny.rotation+=0.1;//添加缩放效果if(bunny.scale.x=1){scaleflag=1;}elseif(bunny.scale.x=0.5){scaleflag=0;}scaleflag?bunny.scale.x-=0.05:bunny.scale.x+=0.05;scaleflag?bunny.scale.y-=0.05:bunny.scale.y+=0.05;nder.nder(stage);}

相关链接

项目

分享 转发
TOP
发新话题 回复该主题