Ahwoo.BRUTAL.Vulkan.Abstractions
2026.10.3
Prefix Reserved
dotnet add package Ahwoo.BRUTAL.Vulkan.Abstractions --version 2026.10.3
NuGet\Install-Package Ahwoo.BRUTAL.Vulkan.Abstractions -Version 2026.10.3
<PackageReference Include="Ahwoo.BRUTAL.Vulkan.Abstractions" Version="2026.10.3" />
<PackageVersion Include="Ahwoo.BRUTAL.Vulkan.Abstractions" Version="2026.10.3" />
<PackageReference Include="Ahwoo.BRUTAL.Vulkan.Abstractions" />
paket add Ahwoo.BRUTAL.Vulkan.Abstractions --version 2026.10.3
#r "nuget: Ahwoo.BRUTAL.Vulkan.Abstractions, 2026.10.3"
#:package Ahwoo.BRUTAL.Vulkan.Abstractions@2026.10.3
#addin nuget:?package=Ahwoo.BRUTAL.Vulkan.Abstractions&version=2026.10.3
#tool nuget:?package=Ahwoo.BRUTAL.Vulkan.Abstractions&version=2026.10.3
Ahwoo.BRUTAL.Vulkan.Abstractions
Hand-written helpers built on top of the raw Ahwoo.BRUTAL.Vulkan bindings: allocation, staging, partitioning, pipeline presets and extension methods that cut down Vulkan boilerplate.
Abstractions
| Name | Description |
|---|---|
IAllocator, IBufferAllocator, IImageAllocator, IGlobalAllocator |
Allocator interfaces for buffers, images, or both |
AllocationInfo, MemoryPreference |
Memory allocation details and GPU/CPU memory preference, modelled on VMA's |
DeviceEx |
An allocator that allocates images and buffers directly from a Vulkan device |
BufferEx |
Wraps VkBuffer with extra functionality |
ImageEx |
Lightweight handle to an image allocation |
ImageViewEx |
Wrapper for a Vulkan image view |
DescriptorPoolEx, DescriptorSetLayoutEx |
Descriptor pool and descriptor set layout wrappers with create info |
IDescriptorSetWrapper, IDescriptorSetLayoutWrapper |
Anything that owns a descriptor set or layout, so command recording can bind it uniformly |
IImageView, IImageSubresourceRange |
Anything that exposes an image view, or an image with a subresource range and extent |
IBindBuffer |
A buffer that can be bound to a command buffer |
IMappable, MapInfo, MappedMemory |
Mapping memory allocations to pointers |
StagingPool |
Loads and submits staging data to the GPU |
ImageStagingRange |
A sub-image region used for staging |
LinearBufferPartitioner |
Simple linear buffer partitioner (no freeing) |
BinaryTreeBufferPartitioner |
Power-of-two (buddy) buffer partitioner |
Atlas2DPartitioner |
Row-based 2D texture atlas allocator |
QuadTreePartitioner |
Power-of-two quad-tree texture atlas allocator |
TextureArrayPartitioner |
Hands out slots from a managed image array |
Presets |
Ready-made pipeline state: blend, depth/stencil, rasterization, multisample, input assembly, samplers |
VertexInput |
Builds VkPipelineVertexInputStateCreateInfo from a vertex struct |
ShaderStages |
Builds a pipeline's shader stage list |
FrameResources, SyncObjects |
Per-frame resources and synchronisation objects for a renderer |
VulkanDeviceInfo |
Formats physical device properties as readable strings for logs and device pickers |
VulkanHelpers |
Mip level counts, platform-required extensions and validation helpers |
CommandBufferExtensions, QueueExtensions, DeviceExtensions, InstanceExtensions, PhysicalDeviceExtensions |
Extension methods for recording commands, submitting work and creating devices |
FormatExtensions, Subresources, SubresourceExtensions, ByteSizeExtensions |
Format classification, subresource range factories/conversions and alignment helpers |
DebugNameExtensions |
Sets debug names on Vulkan handles |
Links
Prerequisites
- .NET SDK (version 10.0 or later)
Installation
To install the package via NuGet, run the following command in your project directory:
dotnet add package Ahwoo.BRUTAL.Vulkan.Abstractions
Contributing
If you find a bug, please open an issue on GitHub. If you'd like to contribute code, feel free to fork the repository and submit a pull request.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Ahwoo.BRUTAL.Collections (>= 2026.10.2)
- Ahwoo.BRUTAL.Logging (>= 2026.10.3)
- Ahwoo.BRUTAL.Memory (>= 2026.10.2)
- Ahwoo.BRUTAL.Numerics (>= 2026.10.2)
- Ahwoo.BRUTAL.Strings (>= 2026.10.2)
- Ahwoo.BRUTAL.Vulkan (>= 2026.10.3)
NuGet packages (6)
Showing the top 5 NuGet packages that depend on Ahwoo.BRUTAL.Vulkan.Abstractions:
| Package | Downloads |
|---|---|
|
Ahwoo.BRUTAL.ImGui.Backends
Off-the-shelf platform and renderer backends for Dear ImGui. |
|
|
Ahwoo.BRUTAL.Vulkan.Vma
Modern C# bindings for the Vulkan Memory Allocator (VMA), a memory management library for Vulkan. |
|
|
SteelFlower.Engine.Player
Steel Flower, a game engine in C#: its runtime assemblies, built for Player. A game references them through the SteelFlower.Sdk MSBuild SDK, which picks the build. |
|
|
SteelFlower.Engine.Debug
Steel Flower, a game engine in C#: its runtime assemblies, built for Debug. A game references them through the SteelFlower.Sdk MSBuild SDK, which picks the build. |
|
|
SteelFlower.Engine.Release
Steel Flower, a game engine in C#: its runtime assemblies, built for Release. A game references them through the SteelFlower.Sdk MSBuild SDK, which picks the build. |
GitHub repositories
This package is not used by any popular GitHub repositories.