Announcement

Collapse
No announcement yet.

Mono Is Bringing Vulkan To C# / .NET

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Mono Is Bringing Vulkan To C# / .NET

    Phoronix: Mono Is Bringing Vulkan To C# / .NET

    For C# developers wishing to take advantage of The Khronos Group's new Vulkan high-performance graphics API, bindings are forthcoming via the Mono crew...

    Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite

  • #2
    This is pretty sweet!

    I wonder we will see bindings for Python, Ruby, Java, Rust, JavaScript and other languages soon.

    Comment


    • #3
      Originally posted by uid313 View Post
      This is pretty sweet!

      I wonder we will see bindings for Python, Ruby, Java, Rust, JavaScript and other languages soon.
      For Java there will be support from LWJGL.

      Comment


      • #4
        What are bindings exactly? What are shortcomings\possibilities against the native Vulkan c?

        Comment


        • #5
          Originally posted by tomtomme View Post
          What are bindings exactly? What are shortcomings\possibilities against the native Vulkan c?
          Generally, bindings are ways for non-C languages to call the native C functions. Many languages have mechanisms for defining "this function here actually calls a native C function over here in this library". Vulkan (like many native libs) has a lot of functions, so someone has to do all the work of writing all those definitions. From there, the author of the bindings has to deal with subtle data variations between languages: an "int" in one language may mean something different (or not even exist) in another language. So, someone has to figure out how to map one language's data/types to C's data/types.

          The downsides range from performance hits (non-native languages just being slower than C in general) to those data mismatches (difficulty wrangling handles/values).

          Comment


          • #6
            Vulkan bindings for C#/.NET is OK if some application need a Vulkan viewport for something, but it's not a big deal in terms of games and heavy applications. The purpose of a low overhead API is kind of wasted if you choose to use C#.

            Comment


            • #7
              Originally posted by efikkan View Post
              Vulkan bindings for C#/.NET is OK if some application need a Vulkan viewport for something, but it's not a big deal in terms of games and heavy applications. The purpose of a low overhead API is kind of wasted if you choose to use C#.
              Direct bindings aren't that useful, but what I can see happening eventually is someone creating an engine in C# and using Vulkan in a way that makes sense for that engine rather than having to bind to GL and do everything the way GL expects.

              Comment

              Working...
              X