Results 1 to 10 of 17

Thread: Vulkan 1.0 released

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    The current state of my vkxml2pas translator tool including output vulkan.pas: https://github.com/BeRo1985/pasvulkan/tree/master/src

    It's so far complete, except the Vulkan library loading part, where I'm working still on it in a vk.xml future-proof compliant way, due to the extensions and so on.

    Edit: Now it generates real enums.
    Last edited by BeRo; 22-02-2016 at 11:49 PM.

  2. #2
    My vkxml2pas-generated header has the followed load interface now:

    Code:
    function LoadVulkanLibrary(const LibraryName:string=VK_DEFAULT_LIB_NAME):boolean;
    function LoadVulkanGlobalCommands:boolean;
    function LoadVulkanInstanceCommands(const GetInstanceProcAddr:TvkGetInstanceProcAddr;const Instance:TVkInstance;out InstanceCommands:TVulkanCommands):boolean;
    function LoadVulkanDeviceCommands(const GetDeviceProcAddr:TvkGetDeviceProcAddr;const Device:TVkDevice;out DeviceCommands:TVulkanCommands):boolean;
    where LoadVulkanLibrary loads only vkGetInstanceProcAddr, and LoadVulkanGlobalCommands loads then the remaining functions with help of vkGetInstanceProcAddr(nil,*) (what the Vulkan spec recommend it also), and what LoadVulkanInstanceCommands and LoadVulkanDeviceCommands does, should be clear, when you've read the Vulkan specs.

    And now. i must buy a Vulkan-ready Android device zu legen, i.e. at best the NVidia Shield TV (which've already a Vulkan-ready Stock AndroidTV ROM), so that I can make the vkxml2pas-generated Vulkan header also Android/armv7a ready and so that I can test it also.

    And a TVulkan class does exist now also, which do also the for-Android/armv7a-target-needed calling-convention-proxying stuff then, because the specs says:

    On Android/ARMv7a, Vulkan functions use the armeabi-v7a-hard calling convention, even if the application's native code is compiled with the armeabi-v7a calling convention.
    And a default-global TVulkan instance with the name vk does exist now also, so that you can use for example instead vkCreateInstance also vk.CreateInstance (with automatic calling-convention-proxing then).
    Last edited by BeRo; 24-02-2016 at 02:20 AM.

  3. #3
    Very good job!
    It turned out that my GTX 850M supports Vulkan after all, so I'll be able to try it out soon.

    Quote Originally Posted by SilverWarrior
    Where can I find information about which graphics cards do support Vulkan?
    Here is another place where you can check - http://vulkan.gpuinfo.org/listreports.php
    Last edited by Anton; 29-02-2016 at 06:55 PM.

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •