mirror of
https://github.com/SK-la/Ez2Lazer.git
synced 2026-03-13 11:20:28 +00:00
37 lines
1.7 KiB
C#
37 lines
1.7 KiB
C#
// filepath: osu.Game/Screens/Play/IGameplayBackgroundSource.cs
|
|
// Provides a proxy-able composite of gameplay background-related visual content (background + storyboard layers if desired)
|
|
// to allow rulesets (e.g. Mania) to apply localised effects (blur, dim, masking) without re-implementing loading logic
|
|
// or performing full-screen framebuffer captures.
|
|
|
|
using osu.Framework.Graphics;
|
|
|
|
namespace osu.Game.Rulesets.Mania.UI
|
|
{
|
|
public interface IGameplayBackgroundSource
|
|
{
|
|
/// <summary>
|
|
/// Creates a proxy drawable containing the background-related composite (eg. storyboard, background imagery).
|
|
/// Returned drawable is expected to be RelativeSizeAxes = Both (or otherwise scalable by consumer) and safe to proxy repeatedly.
|
|
/// </summary>
|
|
Drawable CreateCompositeProxy();
|
|
|
|
/// <summary>
|
|
/// Creates a proxy drawable containing only the background (without storyboard layers).
|
|
/// Returned drawable is expected to be RelativeSizeAxes = Both (or otherwise scalable by consumer) and safe to proxy repeatedly.
|
|
/// </summary>
|
|
Drawable? CreateBackgroundOnlyProxy();
|
|
|
|
/// <summary>
|
|
/// Creates a proxy drawable containing the background and video (if available).
|
|
/// Returned drawable is expected to be RelativeSizeAxes = Both (or otherwise scalable by consumer) and safe to proxy repeatedly.
|
|
/// </summary>
|
|
Drawable? CreateBackgroundWithVideoProxy();
|
|
|
|
/// <summary>
|
|
/// Creates a standalone drawable containing the background.
|
|
/// Returned drawable is expected to be RelativeSizeAxes = Both (or otherwise scalable by consumer) and safe to proxy repeatedly.
|
|
/// </summary>
|
|
Drawable CreateStandaloneBackground();
|
|
}
|
|
}
|