论坛首页 移动开发技术论坛

Cocos2d-JS自定义粒子系统

浏览 1445 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2015-04-07  

除了使用Cocos2d-JS的11种内置粒子系统外,我们还可以通过创建ParticleSystem对象,并设置属性实现自定义粒子系统,通过这种方式完全可以实现我们说需要的各种效果的粒子系统。使用ParticleSystem自定义粒子系统至少有两种方式可以实现:代码创建和plist文件创建。
代码创建粒子系统需要手工设置这些属性,维护起来非常困难,我们推荐使用Particle Designer等粒子设计工具进行所见即所得的设计,这些工具一般会生成一个描述粒子的属性类表文件plist,然后通过类似下面的语句加载:
var particleSystem = new cc.ParticleSystem("res/snow.plist");
snow.plist是描述运动的属性文件,plist文件是一种XML文件,参考代码如下:

[html] view plaincopy
 
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">  
  3. <plist version="1.0">  
  4. <dict>  
  5.     <key>angle</key>  
  6.     <real>270</real>      
  7.     <key>angleVariance</key>  
  8.     <real>5</real>  
  9.     <key>blendFuncDestination</key>  
  10.     <integer>771</integer>  
  11.     <key>blendFuncSource</key>  
  12.     <integer>1</integer>  
  13.     <key>duration</key>  
  14.     <real>-1</real>  
  15.     <key>emitterType</key>  
  16.     <real>0.0</real>  
  17.     <key>finishColorAlpha</key>  
  18.     <real>1</real>  
  19.     <key>finishColorBlue</key>  
  20.     <real>1</real>  
  21.     <key>finishColorGreen</key>  
  22.     <real>1</real>  
  23.     <key>finishColorRed</key>  
  24.     <real>1</real>  
  25.     <key>finishColorVarianceAlpha</key>  
  26.     <real>0.0</real>  
  27.     <key>finishColorVarianceBlue</key>  
  28.     <real>0.0</real>  
  29.     <key>finishColorVarianceGreen</key>  
  30.     <real>0.0</real>  
  31.     <key>finishColorVarianceRed</key>  
  32.     <real>0.0</real>  
  33.     <key>finishParticleSize</key>  
  34.     <real>-1</real>  
  35.     <key>finishParticleSizeVariance</key>  
  36.     <real>0.0</real>  
  37.     <key>gravityx</key>  
  38.     <real>0.0</real>  
  39.     <key>gravityy</key>  
  40.     <real>-10</real>  
  41.     <key>maxParticles</key>  
  42.     <real>700</real>  
  43.     <key>maxRadius</key>  
  44.     <real>0.0</real>  
  45.     <key>maxRadiusVariance</key>  
  46. border-style: none none none solid; border-left-width: 3px; border-left-color: #6ce26c; line-height: 18px; margin-bottom: 0px !important; margin-left: 0px !important; padding-right: 3px !important; padd
论坛首页 移动开发技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics