zoukankan      html  css  js  c++  java
  • pixijs做粒子拖尾效果

    pixijs做粒子拖尾效果

       <script type="text/javascript">
     const app = new PIXI.Application({ backgroundColor: 0x1099bb });
    document.body.appendChild(app.view);
    
    let emitterContainer = new PIXI.Container();
    app.stage.addChild(emitterContainer);
    
    let emitter = new PIXI.particles.Emitter(
    
        // The PIXI.Container to put the emitter in
        // if using blend modes, it's important to put this
        // on top of a bitmap, and not use the root stage Container
        emitterContainer,
    
        // The collection of particle images to use
        [PIXI.Texture.from('https://eia.github.io/ironman/2021/demo/2020_10_10-2/particle.png')],
    
        // Emitter configuration, edit this to change the look
        // of the emitter
        {
            "alpha": {
                "start": 1,
                "end": 0
            },
            "scale": {
                "start": 0.1,
                "end": 0.01,
                "minimumScaleMultiplier": 1
            },
            "color": {
                "start": "#e4f9ff",
                "end": "#3fcbff"
            },
            "speed": {
                "start": 200,
                "end": 50,
                "minimumSpeedMultiplier": 1
            },
            "acceleration": {
                "x": 0,
                "y": 0
            },
            "maxSpeed": 0,
            "startRotation": {
                "min": 0,
                "max": 360
            },
            "noRotation": false,
            "rotationSpeed": {
                "min": 0,
                "max": 0
            },
            "lifetime": {
                "min": 0.2,
                "max": 0.8
            },
            "blendMode": "normal",
            "frequency": 0.001,
            "emitterLifetime": -1,
            "maxParticles": 500,
            "pos": {
                "x": 0,
                "y": 0
            },
            "addAtBack": false,
            "spawnType": "circle",
            "spawnCircle": {
                "x": 0,
                "y": 0,
                "r": 0
            }
        }
    );
    
    // Calculate the current time
    var elapsed = Date.now();
    
    
    // Start emitting
    emitter.emit = true;
    var xssx=0;
    var xssy=0;
    app.ticker.add((delta) => {
        xssx+=6
        xssy+=1
        var now = Date.now();
        // The emitter requires the elapsed
        // number of seconds since the last update
        emitter.update((now - elapsed) * 0.001);
        elapsed = now;
         //这个是设置粒子坐标 达到拖尾效果
          emitter.updateOwnerPos(xssx,xssy)
    
        // Should re-render the PIXI Stage
        // renderer.render(stage);
    });
            </script>

     https://pixijs.io/pixi-particles-editor/ 这个是粒子编辑器

  • 相关阅读:
    如何改变拖动时鼠标悬浮样式
    Nginx的server为0.0.0.0/0.0.0.1的作用?
    redis的lua脚本拓展,返回nil及其判断
    lua异常捕获
    nginx配置及常见问题
    centos安装postgresql-10及操作
    23种设计模式
    php的function() use($args)用法
    lua中self.__index = self是什么意思?
    lor实践
  • 原文地址:https://www.cnblogs.com/newmiracle/p/13859752.html
Copyright © 2011-2022 走看看