• Advertisement
Sign in to follow this  

AMD Open Sources Anvil, a Vulkan Wrapper

Recommended Posts

AMD has open sourced Anvil through their GPUOpen initiative. Anvil is a wrapper for Vulkan 1.0 that AMD has been using internally to develop Vulkan applications and is intended to make it easier for bring-up new Vulkan applications. The MIT licensed C++ wrapper is similar to other open source Vulkan wrappers but adds a few additional features, including:

  • memory allocator
  • automatic object lifetime management
  • helper routines for FP16 to/from FP32
  • automatic generation of descriptor sets
  • integrated validation support
  • runtime GLSL to SPIR-V conversion
  • object tracking
  • page tracker
  • and windowing system integration for XCB and Windows

    From the Github page:

    Anvil was designed with the following goals in mind:

    • Provide object-oriented Vulkan solution.
    • Reduce the amount of code the developer needs to write in order to start using Vulkan, without hiding the API behind thick abstraction layers.
    • Simplify validation layer usage. All you have to do is specify which function you would like to be called if a debug call-back is made, and that's it.
    • Provide a reasonable level of deferred approach to baking objects, in order to emulate mutability of certain Vulkan objects to a certain degree. Note that this is an optional feature - you are free to request baking of any object at any time, in ordre to ensure it will never happen at draw time.
    • Provide a simple cross-platform implementation for areas unrelated to Vulkan (eg. window management)

      Anvil can be thought of as a toolbox. You are free to use any of its parts you like, and write your own code for everything else. Any Anvil wrapper for an actual Vulkan object can be queried to retrieve the raw Vulkan handle.

    View full story

Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this  

  • Advertisement