Building cockpit MFD for a fighter? Use Panel XMLs? Or C++ and SimConnect?

gopage
Posts: 3
Joined: Sat Jan 17, 2015 10:55 pm

Postby gopage » Wed Jan 21, 2015 11:55 am

Hi,

I'm starting a project to build a fighter for Prepar3D. I'm trying to scope the problem. My fist challenge is to model the cockpit and an MFD in the cockpit.

As I understand Prepar3D, there are two general approaches to building an MFD. (a) Use the panel functionality in Prepar3D with XMLs or (b) Use SimConnect/C++ to build the panel.

Do I have the breakdown of the approaches correct? Any input or feedback about the plus and minuses of each approach would be tremendously helpful.

For example, I'm assuming that with (b) SimConnnet/C++ approach that I would have more flexibility in what I can achieve, but that I wouldn't have the MFD appear in the Virtual Cockpit renderings via Prepar3D, correct?

Any help s greatly appreciated!

User avatar
jimcooper1
Posts: 715
Joined: Fri Jan 21, 2011 3:37 pm

Postby jimcooper1 » Fri Jan 23, 2015 5:49 am

As I understand Prepar3D, there are two general approaches to building an MFD. (a) Use the panel functionality in Prepar3D with XMLs or (b) Use SimConnect/C++ to build the panel.

There is a third approach which is to build the MFD using the C/C++ macros in the SDK and compile as a DLL. You can be as flexible as your imagination and programming skills will allow. This can then be referenced in the Panel.cfg file and appear in the VC.

Jim

zamirk
Posts: 103
Joined: Mon Jul 21, 2014 8:39 am

Postby zamirk » Wed May 27, 2015 9:44 am

Hi,

I want to build an application outside the Prepar3D which will handle the radar and gauges and this could be run on any other system. My question is that if I connect P3D via simconnect, then is it possible to integrate weapons via simconnect?

Regards,

zeus67
Posts: 23
Joined: Thu Jan 13, 2011 3:04 am

Postby zeus67 » Fri Jul 10, 2015 12:02 am

I usually do a mix approach. I create the basic display using XML. For me it is faster, specially if I use the ACES tool. Any highly specific functionality that I need, I create it in a dll using simconnect taking care that such functionality is only available to the aircraft in question. Then I access that functionality by using (C:dll_call:simmconnect_var, var_type) in the XML. It is not different if you are using (c:fs9gps:WaypointAirportICAO, String) for example.

User avatar
Beau Hollis
Lockheed Martin
Posts: 2094
Joined: Wed Oct 06, 2010 3:25 pm

Postby Beau Hollis » Fri Jul 10, 2015 8:47 pm

Other option if your MFD is very complex, would be to make a texture plugin using DirectX11 via a PDK plugin. The texture could be referenced in an XML gauge. We did this with the our air to ground radar, which is implemented as an SDK plugin even though it ships as part of the core application. For certain use cases, such as paning and zooming around custom image based maps, the DirectX approach would perform much better. There are a few PDK examples in the SDK in the utilities sections. We also have another option for gauge/panel development coming in v3, but I can't be more specific until the feature is announced.
Beau Hollis
Prepar3D Software Architect


Return to “SimConnect Interface Questions”

Who is online

Users browsing this forum: No registered users and 7 guests