public override void Update(SAMTime gameTime, InputState istate)
        {
            base.Update(gameTime, istate);

#if (DEBUG && __DESKTOP__)
            if (istate.IsKeyExclusiveJustDown(SKeys.R))
            {
                var xcfg = XConfigFile.LoadFromString(System.IO.File.ReadAllText(@"F:\Symlinks\GridDominance\Data\presets\generic.xconf"));
                var pcfg = ParticleEmitterConfig.ParticleEmitterConfigBuilder.LoadFromXConfig(xcfg);
                _emitter.Alive = false;


                var scrn = HUD.Screen;

                var path = VectorPathBuilder
                           .Start()
                           .MoveTo(scrn.TranslateHUDToGameCoordinates(-WIDTH / 2f, -HEIGHT / 2f))
                           .LineTo(scrn.TranslateHUDToGameCoordinates(-WIDTH / 2f, +HEIGHT / 2f))
                           .LineTo(scrn.TranslateHUDToGameCoordinates(+WIDTH / 2f, +HEIGHT / 2f))
                           .LineTo(scrn.TranslateHUDToGameCoordinates(+WIDTH / 2f, -HEIGHT / 2f))
                           .LineTo(scrn.TranslateHUDToGameCoordinates(-WIDTH / 2f, -HEIGHT / 2f))
                           .Build();

                var cfg = pcfg.Build(Textures.TexParticle, 2f, 3f);

                _emitter = new PathGPUParticleEmitter(scrn, scrn.MapViewportCenter, path, cfg, GDConstants.ORDER_WORLD_SUPEREFFECTS);

                HUD.Screen.Entities.AddEntity(_emitter);
            }
#endif
        }
        private void AddParticles()
        {
            var scrn = HUD.Screen;

            var path = VectorPathBuilder
                       .Start()
                       .MoveTo(scrn.TranslateHUDToGameCoordinates(-WIDTH / 2f, -HEIGHT / 2f))
                       .LineTo(scrn.TranslateHUDToGameCoordinates(-WIDTH / 2f, +HEIGHT / 2f))
                       .LineTo(scrn.TranslateHUDToGameCoordinates(+WIDTH / 2f, +HEIGHT / 2f))
                       .LineTo(scrn.TranslateHUDToGameCoordinates(+WIDTH / 2f, -HEIGHT / 2f))
                       .LineTo(scrn.TranslateHUDToGameCoordinates(-WIDTH / 2f, -HEIGHT / 2f))
                       .Build();

#if !GD_SHADERLESS
            var cfg = ParticlePresets.GetConfigBubbleHighlight().Build(Textures.TexParticle, 2f, 3f);

            _emitter = new PathGPUParticleEmitter(scrn, scrn.MapViewportCenter, path, cfg, GDConstants.ORDER_WORLD_SUPEREFFECTS);
            _emitter.AlphaAppearTime = 5f;
            _emitter.FastForward();

            HUD.Screen.Entities.AddEntity(_emitter);
#endif
        }