Comments on: Cloud Add-Ons and Vulkan Episode IV: A New Hope https:/2020/02/cloud-add-ons-and-vulkan-episode-iv-a-new-hope/ Developer resources for the X-Plane flight simulator Mon, 24 Feb 2020 15:34:56 +0000 hourly 1 https://wordpress.org/?v=6.6.1 By: Pasi https:/2020/02/cloud-add-ons-and-vulkan-episode-iv-a-new-hope/#comment-35257 Mon, 24 Feb 2020 15:34:56 +0000 http://developer.x-plane.com/?p=39789#comment-35257 Waiting Vulkan so badly! I just upgraded my CPU and GPU to AMD without knowing how hard it would hit my performance with X-Plane. My 5 years old configuration is able to do 30-40 FPS. With my new AMD config I’m getting only 5-9 FPS with same graphic setting even though my new configuration much powerful than my old :S

]]>
By: Michael https:/2020/02/cloud-add-ons-and-vulkan-episode-iv-a-new-hope/#comment-35256 Mon, 24 Feb 2020 15:21:08 +0000 http://developer.x-plane.com/?p=39789#comment-35256 In reply to Elios.

Thank you for your advice…got G.Skill Trident Z Neo…latencies nice and low with CAS @16. Hope it works with my rig.

]]>
By: Benjamin Orlowski https:/2020/02/cloud-add-ons-and-vulkan-episode-iv-a-new-hope/#comment-35255 Mon, 24 Feb 2020 07:25:44 +0000 http://developer.x-plane.com/?p=39789#comment-35255 With Vulkan how effective will having more CPU cores help performance? in VR? My current rig is i7 7700k. It seems like x2 or x3 the cores is fairly easy now days.

]]>
By: Elios https:/2020/02/cloud-add-ons-and-vulkan-episode-iv-a-new-hope/#comment-35254 Sun, 23 Feb 2020 23:01:41 +0000 http://developer.x-plane.com/?p=39789#comment-35254 In reply to Michael.

MY GOD YES going 32GB of ram is worth it more so if your running orthos

and not just XP11 DCS and even on the desktop >16GB fixes everything

]]>
By: Bakr Mustafa https:/2020/02/cloud-add-ons-and-vulkan-episode-iv-a-new-hope/#comment-35253 Sun, 23 Feb 2020 20:25:16 +0000 http://developer.x-plane.com/?p=39789#comment-35253 In reply to Ben Supnik.

Thanks Ben,

This explanation is vivid enough – that even non-developers grasp by now a
very deep insight beyond a hypothetical generic developer.
I enjoy much this type of elaboration. As 20 years ago, I was much fond of OpenGL on SGI, and had some wild hobby to master coding that API as being perceived the future of 3D graphics.
Its amazing how far things has developed.

Based on the recent progressions; is there any emerging estimation today about release date for xp 11.50 ?

]]>
By: Ben Supnik https:/2020/02/cloud-add-ons-and-vulkan-episode-iv-a-new-hope/#comment-35252 Sun, 23 Feb 2020 18:05:30 +0000 http://developer.x-plane.com/?p=39789#comment-35252 In reply to Florian.

First, to be clear, the presence of other apps rendering on Metal and Vulkan doesn’t have any implication on whether _plugins_ should render directly in Metal and Vulkan to X-Plane’s windows. It may imply that it’s not crazy to have the sim itself render in Metal and Vulkan, but that’s not surprising – the whole point of 11.50 is that X-Plane uses these modern APIs and we’ve been saying they’re a great fit for a simulator for years now.

The question at hand is whether an add-on running as a guest inside X-Plane’s process can use these APIs to render to X-Plane’s windows, effectively sharing the Vulkan and Metal resources.

The answer is: it is not (yet) supported because we need to solve every problem of resource sharing and coordination for every shared resource to make this work, and we haven’t done that yet.

With OpenGL, most of the resources for rendering are hidden inside the GL driver, so if I give you a function call and our GL context is bound, you can just go glBegin() and boom – you’re rendering. Behind this seemingly simple mechanism is a huge amount of complexity inside the driver.

With Metal and Vulkan, most resource management is up to the app.

So there is nothing stopping a plugin from starting its own Vulkan or Metal instance, rendering to a texture, reading that texture back, and then using those bits. That can be done now. It’s not useful (because it would be very slow) but it’s possible.

But to render to our window you have to share our allocator, our render pass, our command buffer, your pipelines have to be render-pass compatible, we have to have scheduling rules for command buffers, any texture you want to use hast o be spec’d, etc. In other words, there’s a ton of internals that would need to be specified into a very complex XPLM API.

At that point if we change ANY internals, that API becomes completely broken. So at a minimum, we’re going to wait until we damn sure like our Vulkan/Metal back-ends before even thinking about how to build an API on top of them. Doing so now would be like building a house while the foundation cement hasn’t cured.

Finally, as I’ve said before, I don’t believe that Vulkan and Metal are particularly good APIs for what plugins want to do. If you have a use case where you truly believe you’re being held back by using GL and not Vulkan, ping me, and we’ll talk. But it’s worth noting that the requirements to write high performance OpenGL code (which most add-ons _do not do_) are a subset of the requirements to write _any_ Vulkan and Metal code. So a true perf problem would be one where, even after writing the high perf OpenGL, the code still isn’t fast enough.

]]>
By: Michael https:/2020/02/cloud-add-ons-and-vulkan-episode-iv-a-new-hope/#comment-35251 Sun, 23 Feb 2020 17:56:53 +0000 http://developer.x-plane.com/?p=39789#comment-35251 In reply to Michael.

Ben…many thanks for your reply, fingers crossed. I am thinking but holding back for some add-ons atm as I need the frames for VR. Can I trouble you with one more question please ? Will it be beneficial under Vulkan to go from 16GB ram to 32 ? I am not on budget but like most of us don’t like wasting money on hardware I do not need. My spec is I7700 oc @ 5 GHz, 2080Ti. XP is on a M.2 EVO drive. I hope you can celebrate with a drink your success next week ! 🙂 Cheers, Michael

]]>
By: Florian https:/2020/02/cloud-add-ons-and-vulkan-episode-iv-a-new-hope/#comment-35250 Sun, 23 Feb 2020 17:21:26 +0000 http://developer.x-plane.com/?p=39789#comment-35250 This is maybe a stupid question, but why is rendering in Metal not supported for 3rd party plugins, there are 3d games running on Metal and X-Plane is going to running on metal and I would consider it a 3d simulator.

]]>
By: Ben Supnik https:/2020/02/cloud-add-ons-and-vulkan-episode-iv-a-new-hope/#comment-35247 Sun, 23 Feb 2020 15:18:35 +0000 http://developer.x-plane.com/?p=39789#comment-35247 In reply to saar.

The intent here is: if you need to draw na object, use XPLMInstance. If you need to do something non-drawing, use another dataref. Etc. In other words, don’t use 3-d drawing CBs in the SDK unless you have your own proprietary 3-d drawing code.

]]>
By: saar https:/2020/02/cloud-add-ons-and-vulkan-episode-iv-a-new-hope/#comment-35246 Sun, 23 Feb 2020 13:15:57 +0000 http://developer.x-plane.com/?p=39789#comment-35246 Quote:
“The new 3-d drawing callbacks are really only meant for custom drawing like clouds. Other techniques like adding objects to the sim and drawing markings are better handled with other APIs.”

I wonder what does it mean: “other APIs”, the only 3D drawing APis/Framework I’m aware of are: OpenGL, Direct-X, Vulkan and Metal.
In some cases I use the XPSDK instancing, but now it won’t be supported by Vulkan (I wonder why if the OpenGL bridge looks promising ?)

Could someone in Laminar elaborate on the “other APIs” ?

Thanks
Thanks

]]>