public readonly record struct SurfaceHandleThe native handles a graphics backend needs to present to a window.
No guide page documents this yet — the page shows what the code says about itself.
Remarks
Two IntPtrs and a discriminant covers every windowing system Vixen targets, which is why the RHI can take a swapchain target without knowing what a window is. The alternative — a Vulkan-shaped type here — would put a Silk.NET type in the platform layer's public surface and break the rule in ADR-001 §3 that keeps the RHI mappable to a second backend.
Nothing here is owned. The window owns its native resources and these stop being valid when it is disposed, or, on Android, when the process is suspended.
Fields and properties (5)
public SurfaceKind KindWhich windowing system produced the handles.
public nint DisplayThe connection or instance handle, where the platform has one.
public nint HandleThe window, surface or layer handle.
public static SurfaceHandle NoneThe handle a headless platform reports: nothing to present to.
public bool CanPresentWhether this handle can back a swapchain.
Methods (1)
public SurfaceHandle(SurfaceKind Kind, nint Display, nint Handle)The native handles a graphics backend needs to present to a window.
Used by (27)
- PbrShowcaseGamePbrShowcase
- TriangleGameHelloTriangle
- UiHostHelloUi
- VideoGameVideoPlayback
- VirtualGeometryGameVirtualGeometry
- AppGraphicsVixen.App.Hosting
- DesktopPlatformTestsVixen.Platform.Desktop.Tests
- DesktopSurfaceVixen.Platform.Desktop
- HeadlessPlatformTestsVixen.Platform.Headless.Tests
- HeadlessSurfaceVixen.Platform.Headless
- ISurfaceVixen.Platform
- NativeWebGpuBindingVixen.Graphics.WebGPU
- NativeWebGpuOptionsVixen.Graphics.WebGPU
- NativeWebGpuSurfacesVixen.Graphics.WebGPU
- NullDeviceTestsVixen.Graphics.Null.Tests
- SwapChainDescriptionVixen.Graphics
- VulkanDeviceVixen.Graphics.Vulkan
- VulkanDeviceOptionsVixen.Graphics.Vulkan
- VulkanSurfaceVixen.Graphics.Vulkan
- VulkanSwapChainVixen.Graphics.Vulkan
- VulkanSwapChainTestsVixen.Graphics.Vulkan.Tests
- WebGpuDeviceTestsVixen.Graphics.WebGPU.Tests
- WebGpuRequirementVixen.Graphics.WebGPU.Tests
- WindowsDialogsVixen.Platform.Windows
- EditorHostVixen.Editor.Host
- EditorPaneVixen.Editor.Host
- GraphicsHostVixen.App