Jump to content
Sign in to follow this  
Keirtt

PMDG Update [22MAR23]

Recommended Posts

6 minutes ago, Lucky38i said:

Leonardo is entirely in WASM with a JS EFB. FBW is a mix of Rust/C++ compiled to WASM with JS for displays. Save for SimBridge, both of these aircraft are in-process aircrafts.

The "problem" that PMDG has, as their UFT is being done in JS, is the communication done between WASM and JS modules, there's no EventBus like in the Avionics SDK,  it's all constrained to simvars which have a pretty limited set of data types. PMDG's entire aircraft is in WASM whereas the UFT is in JS, if you want to say, import Simbrief routes to the aircraft, it has to all go through Simvars. This is problematic because the routes can be quite large and from what I see the `String` Simvar datatype is constrained to 260 characters. So the next option is to use bit logic and setup some kind of serialiser/deseraliser. It depends on who you ask whether this is difficult to do or not.

Fair enough. I'll leave the more technical explanation to you as that is not my forte. So am I correct in that they are approaching it this way so they can basically low their aircraft to be compatible with an Xbox release?

Share this post


Link to post
Share on other sites
1 hour ago, Kevin_28 said:

Fair enough. I'll leave the more technical explanation to you as that is not my forte. So am I correct in that they are approaching it this way so they can basically low their aircraft to be compatible with an Xbox release?


Absolutely, that is it... PMDG aircraft are based on C++ code honed over the years which they don't want to re-write (understandably), *and* they also want to make their aircraft available for *both* PC and XBox on the marketplace. Given this particular combination of needs, this then requires them to requires to use a very specific methodology and framework in MSFS (i.e. WASM). And then therefore they are exposed to some limitations of the C++ and WASM combination that MS/Asobo have been addressing for a while (and seem to have delivered all or most required support now with SU12 I believe), partly due to PMDG pioneering thru this very specific add-on software development route in MSFS. Some of these limitations revolved around internet communication, etc and that's due to the closed nature of WASM because MS wants things to be controlled/secure in an XBox environment.  Interestingly due to MSFS, MS has put in some new facilities in the XBox platform itself and WASM that now allow for these limitations to be lifted (i.e. the "XBox WASM" support that came in SU12).

This is unlike a Fenix who only want to provide their bird for the PC platform, so they can compile and run their C/C++ codebase directly into executables or DLLs that run external of the sim.. that is for the Prosim systems stuff only I believe, for the rest of the aircraft they have developed it in the "native" way of writing add-ons for MSFS using JS/etc. Unlike PMDG, since Fenix are developing from the ground up (except for the Prosim part), it makes sense for them to develop their add-on for MSFS in the MS/Asobo recommended way and use the recommended software frameworks, etc.

In any case we have been through this time and time again on the forum, but yet every PMDG related thread seems to be triggering the usual moans and groans about the EFB taking too long, and whatever else from certain folks who're rather bitter with PMDG for whatever historic reasons 🙂
 

Edited by lwt1971
  • Like 3
  • Upvote 1

Len
1980s: Sublogic FS II on C64 ---> 1990s: Flight Unlimited I/II, MSFS 95/98 ---> 2000s/2010s: FS/X, P3D, XP ---> 2020+: MSFS
Current system: i9 13900K, RTX 4090, 64GB DDR5 4800 RAM, 4TB NVMe SSD

Share this post


Link to post
Share on other sites
14 minutes ago, Kevin_28 said:

Fair enough. I'll leave the more technical explanation to you as that is not my forte. So am I correct in that they are approaching it this way so they can basically low their aircraft to be compatible with an Xbox release?

They're approaching it this way because up until recently WASM module had no access to the Internet or file in the community (referred to as Virtual File System). So The EFB had to be re-done in JS but maintain communication with the systems. Now WASM modules have internet access but it's restricted to only HTTPS. which may or may not be problematic depending on your needs.

  • Like 1

Share this post


Link to post
Share on other sites

 

Quote

And then therefore they are exposed to some limitations of the the C++ and WASM combination that MS/Asobo have been addressing for a while (and seem to have delivered all required support now with SU12 I believe) partly due to PMDG pioneering thru this very specific add-on software development route in MSFS.

I wouldn't give them that much credit if I'm honest. There was alot of developers, from various communities, on the dev forums requesting various things for WASM modules.

Quote

Some of these limitations revolved around internet communication, etc and that's due to the closed nature of WASM because MS wants it things to be controlled/secure in an XBox environment.

WASM was chosen because MSFS runs systems on CoherentGT which is a web UI framework. To execute C++ code or anything there really (that's not JS), you need a WASM(assuming your language can target WASM and a simconnect SDK exists for it) module. the WASM modules being sandboxed was a security decision compared the nefarious abilities of compiled .DLLs from previous sims. WASM Modules now have internet access but that's restricted to HTTPs and they're still restricted to the working directory. It's just a lot safer in general, not really related to Xbox.

Quote

This is unlike a Fenix who only want to provide their bird for the PC platform, so they can compile and run their C/C++ codebase directly into executubles or DLLs that run external of the sim.. that is for the Prosim systems stuff only I believe, for the rest of the aircraft they have developed it in the "native" and "first class" way of writing add-ons for MSFS using JS/etc.

Sort of, the Fenix Bootstrapper uses WASM to instantiate a simconnect connection between the sim and Fenix. Their EFB is in JS but pretty much everything else is done in the Fenix bootstrapper which is then communicated through simconnect. Aamir can correct me if I'm wrong though.

Quote

Unlike PMDG since they are developing from the ground up (except for the Prosim part), it makes sense for them to develop their add-on for MSFS in the MS/Asobo recommended way and use the recommended software frameworks, etc.

I wouldn't say from the ground up, it's pretty apparent things have been transferred over from P3D. I would say it makes sense for them to not re-invent the wheel, they're using their old codebase which is smart if it works.

Quote

In any case we have been through this time and time again on the forum, but yet every PMDG related thread seems to be triggering the usual moans and groans about the EFB taking too long, and whatever else from certain folks who're rather bitter with PMDG for whatever historic reasons 🙂

Yeah there was a lot of interesting stuff in this PMDG update, but it always steers towards the EFB lol, ignoring everything else.

Edited by Lucky38i
  • Like 1
  • Upvote 1

Share this post


Link to post
Share on other sites
3 minutes ago, Lucky38i said:

I wouldn't give them that much credit if I'm honest. There was alot of developers, from various communities, on the dev forums requesting various things for WASM modules.

....

I wouldn't say from the ground up, it's pretty apparent things have been transferred over from P3D. I would say it makes sense for them to not re-invent the wheel, they're using their old codebase which is smart if it works.


Ya fair about your first point, I had edited to say "most" rather than "all" which I believe is a fair statement? Not sure what major blockers are remaining in WASM.  And I meant Fenix developed their bird effectively from the ground up outside of Prosim, so fixed up my ambiguous wording there to change "they" to "Fenix" 🙂
 

  • Like 1

Len
1980s: Sublogic FS II on C64 ---> 1990s: Flight Unlimited I/II, MSFS 95/98 ---> 2000s/2010s: FS/X, P3D, XP ---> 2020+: MSFS
Current system: i9 13900K, RTX 4090, 64GB DDR5 4800 RAM, 4TB NVMe SSD

Share this post


Link to post
Share on other sites
1 hour ago, BrammyH said:

I really need to try the BBJ out more. As an aside, where do you usually spawn it? At a gate or a large GA spot?

You'll not regret it. 

I usually spawn at either large GA Sport or Hardstands without Jetbridge. Usually use the built in airstairs.

I highly recommend using FS2 Crew with it. Best combination at the moment for me.

Best regards!


Intel i9-13900K | Gigabyte Z790 Aorus Master | RTX4090 | 2x16GB Corsair Vengeance DDR5-6000 | Be quiet! Pure Loop 2 FX AiO | Win 11

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  

  • Tom Allensworth,
    Founder of AVSIM Online


  • Flight Simulation's Premier Resource!

    AVSIM is a free service to the flight simulation community. AVSIM is staffed completely by volunteers and all funds donated to AVSIM go directly back to supporting the community. Your donation here helps to pay our bandwidth costs, emergency funding, and other general costs that crop up from time to time. Thank you for your support!

    Click here for more information and to see all donations year to date.
×
×
  • Create New...