Install the Prepar3D v5 SDK, match the correct build, choose the right P3D SDK tools, compile a sample and fix common build or loading errors.
Download the Prepar3D v5 SDK separately from the official Prepar3D download portal, choosing the SDK whose complete build matches your installed Prepar3D v5 client. Install its prerequisites, copy a supplied sample to a writable workspace, build it unchanged, then package only the compiled output as an external add-on for testing.
SDK means Software Development Kit. The P3D SDK is not a single editor and does not unlock a developer mode inside Prepar3D. It supplies documentation, samples, command-line compilers, headers, libraries, modelling exporters and tools for several different development tasks.
Prepar3D v5 download or P3D SDK: which one do I need?
The Prepar3D v5 client and Prepar3D v5 SDK are separate downloads with different purposes.
| You want to… | You need… | What it provides |
|---|---|---|
| Run Prepar3D v5 | The licensed Prepar3D v5 client installer | The simulator and its standard content |
| Create scenery, aircraft, utilities or modules | The SDK matching your client’s complete build | Development tools, interfaces, documentation and samples |
| Install an existing aircraft or scenery add-on | The add-on package | Ready-built content; the SDK is normally unnecessary |
If you need the simulator rather than development tools, follow our client download and PC installation walkthrough. Installing the SDK alone will not let you start Prepar3D or fly.
Is the Prepar3D v5 download free?
Prepar3D v5 itself is not freeware. A result labelled Prepar3D v5 download free may refer to the SDK, documentation or a freeware add-on rather than the simulator client.
The SDK is distributed separately under the terms displayed for its release, but it does not include or grant a licence for Prepar3D v5. Obtain the client installer through the official download area tied to a legitimate licence, and avoid repacked installers or unofficial mirrors.
How do I install the Prepar3D v5 SDK?
Install the SDK release whose full version and build number match the Prepar3D v5 client you will use for testing.
- Record the complete client version. Open Prepar3D’s About dialogue and note the whole version string, not merely “v5”. Point releases can change interfaces, schemas and sample projects.
- Download the matching SDK package. Select the SDK for that exact v5 release in the official Prepar3D download portal. A v4, v6 or FSX SDK is not a substitute.
- Read the release prerequisites. Check which Visual Studio workloads, Windows development components and modelling applications that SDK build supports. Do this before installing exporters or opening samples.
- Run the SDK installer. Accept the Windows permission prompt if it appears. A complete installation is the safest choice unless you know that your project needs only a specific component.
- Leave the installed SDK directory intact. Do not move it manually after installation. Samples and project files may refer to paths written by the installer.
- Create a writable development folder. Copy the sample you intend to use out of
Program Files. Build and edit the copy rather than altering the SDK’s reference files. - Confirm the toolchain. Open the installed SDK documentation and verify the compiler platform, include directories, libraries and any host-application exporter requirements before changing a sample.
Visual Studio is required for C++, PDK and many SimConnect projects, but not for every scenery job. Tools such as BGLComp and Resample are command-line programs and can be used without creating a Visual Studio project.
Matching the exact build matters most for PDK modules and other code coupled directly to Prepar3D. Offline scenery tools may appear to work across point releases, but using the matching SDK avoids subtle schema, compiler and output differences.
Which P3D SDK tool should I use?
Choose the SDK component according to the type of source data and the output Prepar3D must load.
| Project | SDK component | Typical result |
|---|---|---|
| Airport data and XML scenery objects | BGLComp and its scenery schemas | Compiled .bgl scenery |
| Aerial imagery, terrain and elevation | Resample | Imagery or terrain .bgl files |
| Vector scenery | Shp2Vec | Compiled vector data |
| External utilities, displays or hardware interfaces | SimConnect | An application communicating with Prepar3D locally or over a network |
| Code loaded inside Prepar3D | Prepar3D Development Kit (PDK) | An in-process 64-bit DLL |
| Aircraft and other SimObjects | Supported modelling exporters, model tools and SimObject documentation | Models, animations, configuration files and supporting assets |
Use SimConnect when the application can run outside the simulator; it is easier to isolate and a crash is less likely to take Prepar3D down with it. Choose the PDK only when you need an in-process interface or capability unavailable through SimConnect, accepting its tighter build compatibility and greater debugging burden.
For airport, imagery or terrain work, our scenery compiler and package workflow explains how source files, BGLComp, Resample and scenery registration fit together. Developers connecting an external application should use our local and network SimConnect configuration guide.
Prepar3D v5 is a 64-bit simulator. Any DLL loaded inside its process must target x64 and use compatible dependencies. An external SimConnect application is different: use the architecture and runtime supported by its chosen interface and dependencies rather than assuming every external program must be 64-bit.
How do I build and test a first SDK project?
Build the smallest relevant sample without modifications before introducing your own code, data or folder structure.
- Copy one sample. Put it in a normal source folder outside both the SDK and Prepar3D installations.
- Read its instructions. Confirm the required compiler, workload, build platform, environment variables and referenced SDK paths.
- Build the untouched project. This proves that the SDK and development toolchain work together before your changes complicate the diagnosis.
- Run console tools from a terminal. Opening a compiler executable directly often produces a brief black window that immediately closes. Use Command Prompt or PowerShell with the required arguments, quoting paths that contain spaces.
- Read warnings as well as errors. A generated file does not prove that every source element was accepted. Missing textures, invalid XML, rejected attributes and incorrect source paths may only appear in the compiler output.
- Package the result. Copy only the compiled models, scenery, textures, configuration files and permitted runtime components into a separate add-on package.
- Test one change at a time. Disable older copies of the same project, load the new package and inspect Prepar3D’s content or error reporting before adding optional dependencies.
A mistake we see constantly is changing the SDK build, sample code, compiler configuration and deployment path at once. If the original sample builds but the modified copy does not, compare the first change rather than reinstalling everything.
How should I deploy the finished add-on?
Deploy finished content through an external add-on.xml package instead of copying development files into Prepar3D’s core directories.
External packaging makes activation, testing and removal safer and prevents an update or repair from overwriting your work. Our guide to add-on.xml packaging and safe add-on removal covers the folder structure and registration stage.
Do not distribute SDK compilers, headers, libraries or sample source merely because they are installed on your PC. Package only your finished output and any dependencies whose redistribution is expressly permitted by the relevant licence.
Why does the Prepar3D v5 SDK fail to build or load?
Most Prepar3D v5 SDK failures are caused by a mismatched build, an unsupported development tool, protected folders, missing dependencies or the wrong processor architecture.
| Symptom | Likely cause | Fix |
|---|---|---|
| A tool opens and immediately disappears | It is a command-line compiler, not a graphical editor | Run it from a terminal with valid input and output arguments so its messages remain visible |
| A sample cannot find headers or libraries | The SDK was moved, installation is incomplete, or required compiler components are absent | Repair the matching SDK installation and install the prerequisites listed for that release |
| The build reports access denied | The project or output is under a protected installation folder | Move the working copy and output to a user-writable development directory |
| A DLL builds but Prepar3D will not load it | Wrong architecture, incompatible SDK build or a missing runtime DLL | Target x64 for an in-process v5 module, match the SDK build and verify every dependent library |
| Scenery compiles but is invisible | The package is inactive, its component path is wrong, an older copy is taking precedence, or the source coordinates are incorrect | Check the compiler log, package registration, layer order, coordinates and duplicate installations |
| A modelling exporter does not appear | The installed host application is not supported by that SDK exporter | Use the host version and exporter location specified in the matching SDK documentation |
| SimConnect works locally but not over the network | The client/server configuration, address, protocol, port or firewall rule is incomplete | Check both machines’ SimConnect configuration and permit the selected connection through the firewall |
Can I use a Prepar3D v4, v6 or FSX SDK with v5?
Do not use another simulator generation’s SDK as the development environment for Prepar3D v5.
Some scenery or SimObject content may remain compatible, but that does not make the older compiler, exporter or programming interface interchangeable. FSX and Prepar3D v3 in-process modules are commonly 32-bit and cannot load inside 64-bit Prepar3D v5; v4 is 64-bit, but PDK interfaces and build dependencies can still differ.
Port the source project to the matching v5 SDK, build an unchanged v5 sample first, then update your code or assets component by component. Copying an old binary into the v5 installation is not a valid compatibility test.