A particle system is a technique in computer graphics that uses a large number of very small sprites, which we call "particles", to simulate natural phenomena like fire, smoke, water, and explosions.Contrary to other game objects, particles aren't individually controlled. Instead, they are emitted from a source and then left to move and behave according to a set of rules. These rules can include things like speed, direction, size, color, and their lifespan. The emitter is responsible for creating and managing the particles, and it can be set up to emit them in a variety of ways, like in a continuous stream, in bursts, or in a specific pattern. It acts as a "fountain" of sorts.
Particle systems are used extensively in video games to create a wide range of visual effects, from smoke and sparks to magical spells, speed trails, or explosions. They are a powerful tool for adding visual flair and dynamism to a game world, and they can be used to enhance the atmosphere, convey information, or simply make things look cool.In Godot, there are two main particle systems: CPUParticles2D and GPUParticles2D (and their 3D equivalents, CPUParticles and GPUParticles). The former is a CPU-based system, while the latter is a GPU-based system that is more efficient but requires players to have a graphical card. Both systems are almost identical in terms of functionality, but it is expected that the GPU-based system will receive more updates and features, while the CPU one is considered a fallback.