protected override void Draw(DrawingHandle handle) { if (_parallaxTexture == null) { return; } var(sizeX, sizeY) = _parallaxTexture.Size; var(posX, posY) = _eyeManager.ScreenToWorld(Vector2.Zero).ToWorld().Position; var(ox, oy) = (Vector2i) new Vector2(-posX / Slowness, posY / Slowness); ox = MathHelper.Mod(ox, sizeX); oy = MathHelper.Mod(oy, sizeY); handle.DrawTexture(_parallaxTexture, new Vector2(ox, oy)); handle.DrawTexture(_parallaxTexture, new Vector2(ox - sizeX, oy)); handle.DrawTexture(_parallaxTexture, new Vector2(ox, oy - sizeY)); handle.DrawTexture(_parallaxTexture, new Vector2(ox - sizeX, oy - sizeY)); }