Stephen Posted April 7, 2020 Report Share Posted April 7, 2020 Laminar Research : v11.50 Beta - Vulkan/Metal API by Laminar Research This is a first impression of the new X-Plane version v11.50, it is the update with the new Application Programming Interface (API) and the API replaces the decades old OpenGL API that was part of X-Plane since the first simulator was released in 1995. So it is a big deal. So why is the API a big deal? Mostly because it goes right to the heart of the core of simulator, but not on the aerodynamic side, but the visual screen rendering side of what you see and in the way you interact with your computer and the way that the simulator creates all those visual movements and objects that you see, and mostly in the past these aspects it came with all those stutters and blips that took all the fun out of it. The core detail here is in the way your computer or it's processors interact with the rendering and the creation of the X-Plane world, in the past and with OpenGL then most of this graphic processing was done on or via the Video Graphic cards, so the bigger and the more powerful graphic card engine you had, then the more better X-Plane ran. But this way of processing was certainly not very efficient by any means, in fact it was probably the worse way you could run a simulator, as in reality it was like pushing all the data just down one long tight pipe to be processed by your graphic card, so if the graphic card stumbled or became overwhelmed then so did the simulator. The powerful gaming industry demanded a better solution to processing graphics. We already had the powerful processors, but they were still extremely constrained by the slow coding pathways to actually process the growing multitude of the graphic elements required for today's graphic heavy gaming. Hence Vulkan and Metal in being new API's that do the core processing far better and with multitasking thrown in, it's main advantages are higher performance and a far more better balanced CPU/GPU usage. Basically OpenGL is a "One single global state machine" were as Vulkan is "Object-based with no global state". Vulkan is for Windows (mostly 10, but anything above Win 7 will run), Metal is for Apple and Linux (both Linux code based), they basically both APIs do exactly the same processing, but for the sake of this article I will note both the API's as in Vulkan. v11.50 Beta The beta release is activated via your X-Plane Installer, just make sure your "beta" box is ticked. It is very important to use a second copy of X-Plane for the new APIs (Again this can be done from the installer, and note don't load in your Global Scenery in the second copy, but when installed then transfer your current Global Scenery folder to the new installation). This way your current X-Plane v11.40 (OpenGL) version will still be available. Important! Update your graphic drivers before installing or running the v11.50b1 Beta. Current Nvidia GeForce version is v445.75, and YES you do need to update to this driver! On startup the v11.50b1 beta will still be in OpenGL mode. you have to then tick the "Use Vulkan for faster rendering" tickbox and then do a restart... ... when restarting the new API will then take a fair while to recompile your shaders into a new format, so you will have to wait while the system does this, every time you restart the system will do this until it has covered all the shaders, but as it processes each startup the loading times will get significantly shorter, finished loading times are still not going to be faster as in fact they are now going to be taking a little bit longer. Shader Loading The aspect of shader loading in reality explains the differences between the old (OpenGL) and the new (Vulkan). In OpenGL your shader files loaded actually on the fly, or as you flew and for when the simulation required the new shaders. These shaders were originally called to graphic cards only when they were required for processing, so hence the stopping of the simulator to process the required shader files, yes the processing was quick, but still it showed up in the simulation as a stutter or a slight stop in movement. Do these processing actions a lot and you get a lot of stutters and a multitude of stop and starts interfering into your lovely clean simulation. In Vulkan the processing is now done BEFORE you start the simulation, noticeable here in the start up as "Preparing World" during your now extended startup sequence. As the shaders have already been processed earlier and are ready to go, then anytime the simulator wants to change it's shaders in the simulation they are ready and waiting to go, hence no more stutter and a cleaner simulation. Another thing the new API's are good at is assigning certain aspects of the processing to different areas in either to the GPU (Graphic Processing Unit) or the CPU (Computer Processing Units). We already know that the Graphic cards had to do all the heavy lifting in OpenGL, but in Vulkan those processing tasks can now be not only differently assigned, but can be now also assigned to specific areas for better processing efficiency. The trick is also that X-Plane or Laminar Research can now assign certain processing tasks to different processing areas (in either the GPU or the CPU), and in again also separating the background tasks from the more on the fly required tasks, and so not requiring OpenGL to do everything in one huge processing task. It is yes a form of multitasking, but X-Plane is currently still only a one threaded processor simulator in it's construction, Laminar notes that further developments once the basic Vulkan installation is stable is that they will be then be able to explore the more interesting aspects of processor multi-threading that the Vulkan API allows, but the simulator is really at this point even with these new APIs is being developed as just a simple "one step at a time" process. Benefits v11.50 There is a lot of comparisons (mostly video) out there on the gains of framerate through the more efficient API processing and the gains are quite significant, but let us make it quite clear that really in reality in that no two computer systems are actually the same, so the results are GOING to be quite different for everyone of us. If you do want to take a general view then basically AMD-Radeon processors can have up to a 50% gain in framerate, but they are also coming from a very low threshold in the first place. For RTX and Nvidia processors then the framerate gain is around 20%, but again they will be coming from an already quite refined higher threshold, older cards like the RX5700 can though actually suffer badly if you want to use a very high end monitor, say a 4K But not all of this is the story in just all about the aspect of the actual framerate gain from Vulkan. Remember Vulkan readjusts completely the way that X-Plane processes it's core graphic data and although you may only get say relative gains in framerate in many instances, but there is also a major redefining of what you can actually gain overall in the different aspects of the way Vulkan changes the way your computer processes the data. First of all hare are my computer specifications: Intel Core i7 6700K CPU 4.00GHz / 64bit - 32 Gb single 1067 Mhz DDR4 2133 / ASUS GeForce GTX 1080 8Gb As you can see I am not what you would call a high-end grinder, but I am not right down on the bottom rung either, so I see my setup as in the middle ground and the set up that most users should currently aim for (I will note my processors are in need of an upgrade, as is my main motherboard for better bus speeds) On the left (above) was my v11.41graphic settings, on the right (above) are my new current v11.50 graphic settings. And all through the v11.30 and v11.40 era versions my graphic setups rarely changed, and so my graphic settings have always mostly been set as per that left side panel. My output was basically 30fr - 35fr, yes I could get around the 45fr marker if I wasn't too greedy with my "Object" numbers, but I just couldn't run the simulator in anything less than the Maximum object setting. My most changeable aspect for framerate was the "Texture Quality", If I was running a light loading, say the default Boeing 737-800 and a light airport scenery, then I could go to the "Max" setting to keep above the high numbers, but if I was running say a very high textured aircraft, say the Rotate MD88 and a large airport scenery, then I would have to drop a slider a notch down to the "High" setting. So mostly this was the best way to keep my graphic card from breaking out from over its 8K limit and thus ruining my frame rate was with this adjustment... in most cases I was willing to accept the "High" selection setting for the most framerate count as possible and live with some blurry textures. Vulkan's settings are actually quite different and even very exciting! Visual Effects : I was rarely set above High (HDR) in my Visual Effect setting, but now in Vulkan I can easily set the maximum setting of "Maximum (HDR+SSAO)". HDR is minimum anyway, but the +SSAO setting is a nice addition. In reality the differences between HDR and + SSAO are negligible, but as we shall see it now becomes more important in the use with other settings. Texture Quality : First to note that the actual slider settings have changed... v11.40 the texture slider was labeled as: v11.40 Minimal - Low - Medium - High - Maximum - Maximum (No Compression) v11.50 Minimal - Low - Medium - High - Maximum So in v11.50 the "Maximum (No Compression)" setting has been taken away and the top setting is now just the "Maximum" setting... but something far bigger has also changed to the processing of the textures behind the scenes? Here at Barcelona (LEBL) looking inland there are a lot of city objects to process, and note the texture count of 3385mb... ... but reduce the object count by looking towards the sea, and texture count changes down to 2190mb! So the texture count is actually now being processed to adjust to your requirements now on the fly. In reality before you had to fit the slider to stay within (or below) the texture count, but now in v11.50 the texture count simply adjusts to you, this is a huge jump in efficiency and that aspect is reflected in your framerate.... but that does not mean you can now overload your systems with a lot of heavy textures, the 4K or 8K (or higher) limits still count as do texture heavy aircraft or scenery, but it does mean like in my case I can now leave my texture setting in Maximum and really forget about it as the rendering will now adjust to it's own requirements. Texture paging (this aspect actually caused a lot of why v11.50 is so late in being released) is the difficult area of rendering. In Texture Paging then the textures are moved between the memory on your graphics card (VRAM) and the memory in your computer (“system memory”). At any given time, X-Plane may have more textures loaded than you can fit on your card, but it doesn’t need them all at once. As you fly, different textures are needed, and the textures have to be moved around. As Laminar noted... "If it looks like it’s getting too close to full, then shrink the textures to a smaller size and prefer to shrink the textures you’re not looking at. Do the shrinking in the background or if it looks like VRAM has empty space free, grow textures, preferring ones you are looking at now and do the growing in the background". What we are doing here in v11.50 and Vulkan is managing the biggest user of your processing capability or space for textures, as we have seen the processing can now adjust to fit your current needs, but if you still have a limited graphic card and slow (old) processors then you are still going to come up against limitations of quality visuals and poorly rendered screens. Laminar will refine the texture paging process even more as time goes on, but currently the benefits are there to be seen already. Antialiasing : In reality nothing has changed here and it is still in the 4x SSAA_FXAA setting. Moving it to the 8x SSAA+FXAA used to cause issues in v11.40, it still does the same weirdness in v11.50, so why mess with it? A fix may come when v11.50 is stable. Draw Shadows on Scenery : In OpenGL there was a few areas that where essentially no go selections, and one was to "Draw Shadows on Scenery". Many users used their sheer grunt power to overcome the limitations of drawing shadows on objects. But in reality it is a very inefficient way to create shadows. And don't get it wrong here as the object shadow option still has a huge impact on your framerate, because it still has a lot of processing to do, Laminar also has a short shadow limit as well, so if you pull back from the scenery then the shadows will quickly disappear. The shadows do however give you scenery a major boost in realism. With the shadows selected off (above left), then your visual scene is far more blander than with the effects switched on, as the shadow reflections then work in creating a big fill in effect that is far more realistic. Noted above is the reflection of the lighting mast on the terminal, Airbridge reflections and the excellent ground equipment reflections. Also give plaudits to Vulkan in that the far better processing efficiency it creates in allowing the shadow effects that can now be used without THAT huge framerate penalty, the actual loss in framerate is now minimal compared to the huge draw that the shadows created before. We noted in the Visual Effects slider that to put the "Maximum (HDR+SSAO)" and into this selection will give you benefits, those benefits are now noted with the "Draw Shadows" selection turned on. What the Visual effects does in this +SSAO setting is fill in the smaller details of the shadows, again you can go a selection lower to save frame rate, but the differences in the framerate saving in my case are very and if minimal anyway. A note: Turning off the Draw Shadow option while you are running a simulation or in the simulator will currently cause a computer hang or crash, Vulkan certainly does not like you disabling this option while it is currently running. So set via the "Settings Panel' and then restart from desktop to avoid ruining your simulation and do this BEFORE starting your sim. (A Beta refinement may come). Number of World Objects : In reality this selection is not really changed, you certainly feel the far better refinement of object processing in Vulkan, but really the same rules apply as the number of Objects you select does have a processing effect on your computer, like noted I will keep far more of the other effects switched off (i.e. shadows) to keep my objects running at the Maximum setting. Reflection Detail : First the reflection detail option is nothing to do with the shadows, it is the reflection of mirrored surfaces, mostly water or building glass. In the past the Reflection Detail feature was not a usable option, it was a flawed feature that simply nuclear attacked your framerate if you were brave enough to ever turn it on. Most never did use use the reflection feature unless you could simply grunt your way through the overwhelming processing tsunami. In Vulkan and with it's more highly refined processing abilities then reflections are now actually an option... yes you can now actually turn on or adjust the Reflection slider in X-Plane. Yes reflections still has an effect on your frame rate, but to note I can run easily in Vulkan with not only the shadow option on, but also the reflection option on as well! Reflections switched off (below left) and reflections switched on (below right) creates a huge difference in your quality detailing. Water in v11.50 has also been (finally) been redone and the twin effects working together are simply mesmerising. Now the water has movement again and looks... well like water, benefits are far better coastlines that are now far better defined. Barcelona's port comes alive with reflections, the cranes are now reflected into the water, and the night lighting is simply glorious. Buildings will also nicely reflect, as do mountains to create a lovely scene of a higher realism. "Yes but X-Plane has had all this reflection do-da feature for years" you may ask, and yes I agree with that sentiment... but not with a 50 fr headroom and at the same time of having the shadows switched on as well... this is a new X-Plane nirvana for about 60% of X-Plane users and one of the main advantages of using Vulkan. Reflection Detail comes in five step selections: Minimal - Low - Medium - Medium - High - Maximum The twin medium settings could be called "Medium Low" and "Medium High", and there is a significant difference between these two settings. In reality everything below "Medium High" is too low with not much reflection detail, and everything above "Medium High" comes with too much blurriness, and there is not much change either which way you go, so the "Medium High" selection is the only one to really use to get the best effective sharp detail you see here. Laminar may refine the selection choices later to make them more different from each selection choice, but the "Medium High" setting is absolutely perfect for the best compromise between superior detail and framerate efficiency. Both Shadows and Reflections are limited by the LOD or loading distance, but so is all of the object loading. In v11.50 object loading LOD is far more refined and in my guess is that once X-Plane12 is released the restrictions of object loading range (and night lighting) should be extended as now the processing can now be expended outward to cover over far larger areas. Like with OpenGL, if your frame rate is suffering then it is still the Shadow and Reflection options that will still go off first and even in Vulkan, as they still are heavy processor users.. as they are still really a "nice to have" more than a "need to have", but they are a very nice to have if you look at the cloud reflections on the water. Currently I have found I can actually leave both Shadow and Reflections on features on permanently with no outward crashing of my framerate, and absorbing a loss of around 5 fr. Plugins If you are smart you would have started the Vulkan v11.50 with virtually no plugins installed (called a vanilla install). No matter what the packaging says that the plugin is now "Vulkan Ready" it is that most will have to still be very tried and well tested before letting them loose in your lovely new application. Plugins are crashing Vulkan, it is that simple, worse is that even a so called tested plugin will still actually conflict with something else and still black screen you out. The list will be long, the fixes will be slow but we will get there eventually. Myself I am putting them back in very (very) slowly, and basically one at a time and testing each one as they go into the plugin folder, chuck a load of plugins there together and I will guarantee you they will crash your system, I know because Vulkan has done it to me several times, and it is a long road back from the black screen to get Vulkan running smoothly (It is a beta) again. Plugin Menu To help you with plugins, then the drop down "Plugin" menu has been completely redone and finally in the current X-Plane11 window design. Oddly the old version is also still visible, my guess is for access to the Hotkey menu. There are now three selections on the new "Plugin Admin" pop-up: Overview, Performance and Information. Overview: In Overview it shows you all your current running or available plugins and a tickbox (enabled) to switch them off, so you can disable any plugins that you don't want to run (It is not advisable to disconnect any aircraft running plugin (i.e. SASL and it's current version)). The "Cost" column will show you the impact of the relative framerate gain you would get if you turned the offending plugin off, it is used mainly for users that have limited GPU power, but it is also a useful tool to search out very inefficient plugins (The nasties) and remove them, or send (nasty) notes to the developer. Performance: A new feature is the Performance tab. This graph shows you the performances of your current running plugins, again it is useful tool in searching out inefficient running plugins, or seeing which aircraft or scenery is doing the most damage to your framerate, as noted Rotate's MD88 is highly efficient. Information: the third tab Information shows you the details of the plugin with details covering: Description (What the plugin is), Signature (Who made the plugin) and Path (where the plugin is installed). _______________________________ Flying in Vulkan (for the first time) That said the basic running of Vulkan is absolutely superb. Yes it is still buggy, as this is also a very early 1b beta version... Even in my very first flight you are really overwhelmed on how very smooth it all is, nothing, I mean nothing, stops, stutters or hesitates... it is all as smooth as silk from the point of moving for the first time to putting the park brakes back on after the flight.... perfect! Rotate (no pun intended) the view and there is no hesitation, no thinking at all on the computer's part.... the simulation just does and moves smoothly to what you want it to do. I will admit I have none of my toys running in this simulation like WorldTraffic or xEnviro or the few do-da's that I use during a heavy simulation or in a review, so the framerate is screaming as it is free, but even now I am very excited in how X-Plane is so much more and better, and Laminar has not even refined the Vulkan package yet... Internal views are crisp (I can use a texture setting far higher) and shadows are perfect and sharp... move the camera or view around and it is as smooth as you could dream about, extremely impressive. If there is one thing I really hate is being distracted by the simulator, you know the things... like when you want X-Plane to do something and it doesn't do it, as it jerks, waits or hesitates, it takes your attention away from the flying and controlling the aircraft to manage the issue or just really annoy you. Point is in v11.50 X-Plane didn't do ANYTHING untold during the whole full circuit I did around LEBL, yes this was a simple flight and all the flying is manual... but what a simple perfect circuit it was. Beautiful reflections abound, it is a new world... .... you know it is coming... it is that boundary between the nothing (sea) and huge texture and object count of the airport.... .... X-Plane always, always stuttered as it vainly tried process the huge differences in data volume, but now here in Vulkan there is nothing, but just a smooth glide between the two worlds... yes Vulkan is seriously impressive. Problems... I will note my only real problem was if I tried to insert an aircraft (authorise) twice? the second (or every loading after) would give me the black screen of death unless I removed the offending aircraft. This was fixed by throwing away the new v11.50 X-Plane preferences and restarting it all again with a new clean aircraft file, then the offending aircraft would load... and a lot of plugin conflicts, so I keep them currently as few as possible. And no, there will certainly not be a Windows 7 version of Vulkan and Metal based simulation, that bird has flown... really flown, so you will have get over it. Changing the coding to match Windows 7 is to difficult, and for just say 2% of users, it is simply not going to happen. Overall for the new v11.50 Vulkan/Metal API is... Highly impressive, but it is only early days yet. As writing this article the v11.50b2 has been released and fixes a lot of bugs. ______________________________________________________________________ Analysis Review by Stephen Dutton 8th April 2020 Copyright©2020: X-Plane Reviews (Disclaimer. All images and text in this review are the work and property of X-PlaneReviews, no sharing or copy of the content is allowed without consent from the author as per copyright conditions) Quote Link to comment Share on other sites More sharing options...
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.