Table of Contents

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

Format

Gets or sets the swapchain texture format used by acquired frames.

public WebGPUTextureFormat Format { get; set; }

Property Value

WebGPUTextureFormat

FramesPerSecond

Gets or sets the requested upper bound for render callbacks per second.

public double FramesPerSecond { get; set; }

Property Value

double

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.

IsEventDriven

Gets or sets a value indicating whether the window should use event-driven scheduling.

public bool IsEventDriven { get; set; }

Property Value

bool

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

bool

IsVisible

Gets or sets a value indicating whether the window should be visible immediately after creation.

public bool IsVisible { get; set; }

Property Value

bool

Position

Gets or sets the initial requested window position in screen coordinates.

public Point Position { get; set; }

Property Value

Point

PresentMode

Gets or sets how completed frames are queued for presentation to the display.

public WebGPUPresentMode PresentMode { get; set; }

Property Value

WebGPUPresentMode

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.

Size

Gets or sets the initial client-area size in window coordinates.

public Size Size { get; set; }

Property Value

Size

Title

Gets or sets the initial window title shown in the title bar.

public string Title { get; set; }

Property Value

string

UpdatesPerSecond

Gets or sets the requested upper bound for update callbacks per second.

public double UpdatesPerSecond { get; set; }

Property Value

double

Remarks

Use this when you want simulation or input updates to run at a different cadence from rendering.

WindowBorder

Gets or sets the initial window border mode.

public WebGPUWindowBorder WindowBorder { get; set; }

Property Value

WebGPUWindowBorder

WindowState

Gets or sets the initial window state such as normal, maximized, or fullscreen.

public WebGPUWindowState WindowState { get; set; }

Property Value

WebGPUWindowState