Skip to content

LiteFX::Rendering::Backends::VulkanDevice::create

Initializes the device instance.

Synopses

Declared in <litefx/backends/vulkan.hpp>

Initializes the device instance.

[[dllimport, dllexport]] static SharedPtr<VulkanDevice> create(
    VulkanBackend const& backend,
    VulkanGraphicsAdapter const& adapter,
    UniquePtr<VulkanSurface>&& surface,
    GraphicsDeviceFeatures features = { },
    Span<String> extensions = { },
    void* deviceExtensionObjects = nullptr,
    size_t globalDescriptorHeapSize = DEFAULT_DESCRIPTOR_HEAP_SIZE);

» more...

Initializes the device instance.

[[dllimport, dllexport]] static SharedPtr<VulkanDevice> create(
    VulkanBackend const& backend,
    VulkanGraphicsAdapter const& adapter,
    UniquePtr<VulkanSurface>&& surface,
    Format format,
    Size2d const& renderArea,
    UInt32 backBuffers,
    bool enableVsync = false,
    GraphicsDeviceFeatures features = { },
    Span<String> extensions = { },
    void* deviceExtensionObjects = nullptr,
    size_t globalDescriptorHeapSize = DEFAULT_DESCRIPTOR_HEAP_SIZE);

» more...

Return Value

A shared pointer to the new device instance.

Parameters

NameDescription
backendThe backend from which the device is created.
adapterThe adapter the device uses for drawing.
surfaceThe surface, the device should draw to.
featuresThe features that should be supported by this device.
extensionsThe required extensions the device gets initialized with.
deviceExtensionObjectsA pointer to additional extension objects (such as device features) that are stored in the devices's pNext chain during device creation.
globalDescriptorHeapSizeThe size of the global descriptor heap in bytes.
formatThe initial surface format, device uses for drawing.
renderAreaThe initial size of the render area.
backBuffersThe initial number of back buffers.
enableVsyncThe initial setting for vertical synchronization.