Class WebGPUWindowOptions
- Namespace
- SixLabors.ImageSharp.Drawing.Processing.Backends
- Assembly
- SixLabors.ImageSharp.Drawing.WebGPU.dll
Options for creating a WebGPUWindow.
public sealed class WebGPUWindowOptions
- Inheritance
-
WebGPUWindowOptions
- Inherited Members
Remarks
These values describe the initial window and scheduling configuration used during construction. Most callers only need to set Title, Size, and PresentMode.
Properties
AlphaMode
Gets or sets how the native compositor interprets the window surface alpha channel.
public WebGPUCompositeAlphaMode AlphaMode { get; set; }
Property Value
Remarks
The requested mode is used when available. Otherwise, a compatible mode is selected automatically.
Format
Gets or sets the swapchain texture format used by acquired frames.
public WebGPUTextureFormat Format { get; set; }
Property Value
Remarks
The requested format is used when available. Otherwise, a compatible format is selected automatically.
FramesPerSecond
Gets or sets the requested upper bound for render callbacks per second.
public double FramesPerSecond { get; set; }
Property Value
Remarks
This is a scheduling hint for the underlying window loop rather than a guarantee of presented frame rate. The chosen PresentMode and the platform's display timing still influence what the user sees. Negative or non-finite values use the default unrestricted rate.
IsEventDriven
Gets or sets a value indicating whether the window should use event-driven scheduling.
public bool IsEventDriven { get; set; }
Property Value
Remarks
Event-driven mode is useful for UI-style apps that should sleep while idle instead of continuously driving a tight loop. Continuous rendering scenarios often leave this disabled.
IsTopMost
Gets or sets a value indicating whether the window should stay above normal windows.
public bool IsTopMost { get; set; }
Property Value
IsVisible
Gets or sets a value indicating whether the window should be visible immediately after creation.
public bool IsVisible { get; set; }
Property Value
Position
Gets or sets the initial requested window position in screen coordinates.
public Point Position { get; set; }
Property Value
PresentMode
Gets or sets how completed frames are queued for presentation to the display.
public WebGPUPresentMode PresentMode { get; set; }
Property Value
Remarks
Choose Fifo for the usual v-synced behavior, Immediate for the lowest latency with possible tearing, or Mailbox when you want newer-frame-wins behavior and the backend supports it. When the requested mode is unavailable, Fifo is used.
Size
Gets or sets the initial client-area size in window coordinates.
public Size Size { get; set; }
Property Value
Remarks
A size with a non-positive dimension uses the default initial size.
Title
Gets or sets the initial window title shown in the title bar.
public string Title { get; set; }
Property Value
UpdatesPerSecond
Gets or sets the requested upper bound for update callbacks per second.
public double UpdatesPerSecond { get; set; }
Property Value
Remarks
Use this when you want simulation or input updates to run at a different cadence from rendering. Negative or non-finite values use the default unrestricted rate.
WindowBorder
Gets or sets the initial window border mode.
public WebGPUWindowBorder WindowBorder { get; set; }
Property Value
Remarks
Unrecognized values use Resizable.
WindowState
Gets or sets the initial window state such as normal, maximized, or fullscreen.
public WebGPUWindowState WindowState { get; set; }
Property Value
Remarks
Unrecognized values use Normal.