public override void Render() { if (_shaderHolders.Count > 0) { ShaderHolder shaderHolder = _shaderHolders.First(); if (RenderTo == RenderTo.Window) { window.Draw(_rectangleShape, shaderHolder.RenderStates); } else { RenderTexture.Draw(_rectangleShape, shaderHolder.RenderStates); } } }
public override void Update() { if (_shaderHolders.Count > 0) { ShaderHolder shaderHolder = _shaderHolders.First(); shaderHolder.Shader.SetParameter("time", _time); _time += 0.5f / FrameRateLimit; shaderHolder.LivedTime--; if (shaderHolder.LivedTime <= 0) { _shaderHolders.Remove(shaderHolder); _time = 0; } } }