How to use the three-nebula.RandomDrift function in three-nebula

To help you get started, we’ve selected a few three-nebula examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github creativelifeform / three-nebula / website / components / Examples / MeshZone / init.js View on Github external
const createEmitter = async mesh => {
  const emitter = new Emitter();

  return emitter
    .setRate(new Rate(new Span(11, 15), new Span(0.02)))
    .addInitializers([
      new Position(new MeshZone(mesh, 200, THREE.Geometry)),
      new Mass(1),
      new Radius(1, 3),
      new Life(1.5),
      new Body(createSprite()),
    ])
    .addBehaviours([
      new RandomDrift(2, 2, 2),
      new Gravity(0),
      new Color(['#00aeff', '#0fa954', '#54396e', '#e61d5f']),
      new Color('random'),
    ])
    .setPosition({ x: 0, y: 0 })
    .emit();
};
github creativelifeform / three-nebula / website / components / Examples / SpriteRendererGravity / init.js View on Github external
const createEmitter = () => {
  const emitter = new Emitter();

  return emitter
    .setRate(new Rate(new Span(10, 15), new Span(0.05, 0.1)))
    .addInitializers([
      new Body(createSprite()),
      new Mass(1),
      new Life(1, 3),
      new Position(new SphereZone(20)),
      new RadialVelocity(new Span(500, 800), new Vector3D(0, 1, 0), 30),
    ])
    .addBehaviours([
      new RandomDrift(10, 10, 10, 0.05),
      new Scale(new Span(2, 3.5), 0),
      new Gravity(6),
      new Color('#FF0026', ['#ffff00', '#ffff11'], Infinity, ease.easeOutSine),
    ])
    .setPosition({ x: 0, y: -150 })
    .emit();
};
github creativelifeform / three-nebula / website / components / Examples / SpriteRendererSnow / init.js View on Github external
const position = new Position();

  position.addZone(new BoxZone(2500, 10, 2500));

  return emitter
    .setRate(new Rate(new Span(34, 48), new Span(0.2, 0.5)))
    .addInitializers([
      new Mass(1),
      new Radius(new Span(10, 20)),
      position,
      new Life(5, 10),
      new Body(createSnow()),
      new RadialVelocity(0, new Vector3D(0, -1, 0), 90),
    ])
    .addBehaviours([
      new RandomDrift(10, 1, 10, 0.05),
      new Rotate('random', 'random'),
      new Gravity(2),
      new CrossZone(new ScreenZone(camera, renderer, 20, '234'), 'dead'),
    ])
    .setPosition({ y: 800 })
    .emit();
};