Vixen
dd8b0a81
csharp
public sealed class VulkanDevice

The Vulkan logical device: everything the RHI can do, done.

No guide page documents this yet — the page shows what the code says about itself.

Remarks

Handles index tables this object owns. Nothing here is finalisable and nothing is reference-counted by the collector: a GPU object's lifetime belongs to the renderer, and destruction is deferred by FramesInFlight frames so that a resource released while the GPU is still reading it stays alive until it is not.

Recording is thread-safe; creation and destruction are serialised by a lock. That split is deliberate — command recording is the hot path a renderer parallelises, and resource creation is not.

Fields and properties (11)

  • public IGraphicsAdapter Adapter

    The adapter this device runs on.

  • public GraphicsDeviceFeatures Features

    What it can do.

  • public ICommandSubmitter GraphicsQueue

    The queue that can do everything.

  • public ICommandSubmitter ComputeQueue

    The compute queue, which is GraphicsQueue where the hardware has only one.

  • public ICommandSubmitter TransferQueue

    The transfer queue, which is GraphicsQueue where the hardware has only one.

  • public int FramesInFlight

    How many frames may be recorded before the first has to have finished.

  • public long FrameCount
  • public bool ValidationEnabled

    Whether the validation layers are watching this device.

  • public VulkanNativeHandles NativeHandles

    The raw objects something sharing this device needs.

  • public bool UsesDynamicRendering

    Whether rendering goes through VK_KHR_dynamic_rendering rather than a pass object.

  • public bool IsFrameOpen

Methods (39)

Used by (162, showing 40)

  • TriangleGameHelloTriangle
  • VideoGameVideoPlayback
  • VirtualGeometryGameVirtualGeometry
  • AccelerationStructureDeviceTestsVixen.Graphics.Golden.Tests
  • BakedMaterialImageTestsVixen.Graphics.Golden.Tests
  • BentNormalAmbientImageTestsVixen.Graphics.Golden.Tests
  • BindlessSamplingDeviceTestsVixen.Graphics.Golden.Tests
  • BindlessTableDeviceTestsVixen.Graphics.Golden.Tests
  • BufferTransferDeviceTestsVixen.Graphics.Golden.Tests
  • CapabilityVixen.Graphics.Golden.Tests
  • CascadeCountDeviceTestsVixen.Graphics.Golden.Tests
  • ChainVixen.Graphics.Golden.Tests
  • ClusterCullingDeviceTestsVixen.Graphics.Golden.Tests
  • ClusteredShadingDeviceTestsVixen.Graphics.Golden.Tests
  • CompilerVixen.Graphics.Golden.Tests
  • CompositorImageTestsVixen.Graphics.Golden.Tests
  • DepthResolveImageTestsVixen.Graphics.Golden.Tests
  • DistanceFieldAoImageTestsVixen.Graphics.Golden.Tests
  • DitherImageTestsVixen.Graphics.Golden.Tests
  • EditorGizmoFacingDeviceTestsVixen.Graphics.Golden.Tests
  • FixtureVixen.Graphics.Golden.Tests
  • FixtureTextureViewTestsVixen.Graphics.Golden.Tests
  • FlatVixen.Graphics.Golden.Tests
  • GtaoImageTestsVixen.Graphics.Golden.Tests
  • HudLuminanceDeviceTestsVixen.Graphics.Golden.Tests
  • IndirectDiffuseImageTestsVixen.Graphics.Golden.Tests
  • IrradianceBounceDeviceTestsVixen.Graphics.Golden.Tests
  • IrradianceCaptureDeviceTestsVixen.Graphics.Golden.Tests
  • IrradianceFillDeviceTestsVixen.Graphics.Golden.Tests
  • IrradianceRepairDeviceTestsVixen.Graphics.Golden.Tests
  • IrradianceShadingDeviceTestsVixen.Graphics.Golden.Tests
  • LayeredMaterialImageTestsVixen.Graphics.Golden.Tests
  • LightStreakImageTestsVixen.Graphics.Golden.Tests
  • MaxLightsDeviceTestsVixen.Graphics.Golden.Tests
  • MorphScatterDeviceTestsVixen.Graphics.Golden.Tests
  • MsaaResolveImageTestsVixen.Graphics.Golden.Tests
  • MultiScatterFurnaceImageTestsVixen.Graphics.Golden.Tests
  • OffscreenSwapChainTestsVixen.Graphics.Vulkan.Tests
  • ParallaxMaterialImageTestsVixen.Graphics.Golden.Tests
  • ParticleMeshDeviceTestsVixen.Graphics.Golden.Tests