• No results found

AVSIM Lockheed Martin Prepar3D Guide

N/A
N/A
Protected

Academic year: 2021

Share "AVSIM Lockheed Martin Prepar3D Guide"

Copied!
159
0
0

Loading.... (view fulltext now)

Full text

(1)

In Memory of Tom Allensworth Founder of AVSIM September 8, 1950 – April 4, 2015

(2)

Table of Contents

Forward ... 5

Introduction ... 6

Administrative Information ... 7

Installation and purchase ... 10

Setup ... 10

Default Installation folders ... 11

Updating to a more recent version ... 13

Client ... 13

Content ... 18

Scenery ... 21

Configuring Graphics Settings ... 23

Adjusting Anti-Aliasing (AA) ... 44

Working with configuration files ... 46

Prepar3D.cfg ... 46

(3)

SimConnect.xml ... 126

TroubleShooting ... 128

Check AVSIM CTD Guide ... 128

Disable entries in DLL.XML and EXE.XML ... 128

Check conflicting AFCAD files ... 129

Remove any CPU/GPU overclocking ... 130

Delete the Shaders folder ... 130

Check SimConnect client is configured correctly ... 132

Verify software started via EXE.XML are NOT still running ... 137

Out-of-Memory (OOM) ... 137

Hardware, Overclocking, Performance ... 138

Hardware ... 139

Overclocking... 140

Performance ... 146

Input Control Devices (TrackIR, Yokes, Throttles … ) ... 148

TrackIR... 148

Yokes, Throttle, Rudders ... 154

Programmable Modules ... 157

(4)

NOTICE: Throughout this guide, links to websites have been provided. Just NOTICE: Throughout this guide, links to websites have been provided. Just click on the

click on the underlined hyperlink. underlined hyperlink. You will You will need an need an active Internetactive Internet

connection when clicking on a link to the Internet. Please report any invalid connection when clicking on a link to the Internet. Please report any invalid or broken links to AVSIM.

(5)

AVSIM

AVSIM

PREPAR3D®

PREPAR3D®

Guide

Guide

Version 1.0.0

Version 1.0.0–– Release Date: September 2016 Release Date: September 2016

This is a living document and will be updated from time to time. Please ensure that you are using the most recent version of this document. You will always find the most updated version at AVSIM. This document is copyrighted by AVSIM Online and it shall not be distributed or altered in any fashion without prior written authorization from AVSIM.

Forward

Forward

I started this living document primarily on request from AVSIM, but the real motivation was to consolidate the many questions, that are asked repeatedly and frequently, into a document that user of Prepar3D can be referred to in the hope they will find answers to their questions. It’s important to note “answers” and not necessarily “solutions” , sometimes there simply is no solution and it’s the answer is a compromise and/or work around.

So who am I? I’m a software engineer that works for a small software company in Oakland California. I started programming at age 16 and had a few games published in the early 1980’s. I’ve been coding at a professional level since 1990 (mostly business applications with a few exceptions) using a variety of programming languages and technologies.

I have been using flight simulators for many decades starting with subLOGIC Flight

Simulator 1 for TRS-80. I got involved with Lockheed Martin in Nov 2013 with the release of Prepar3D V2.0 and was provided with an opportunity to be on their Beta team. I was later also provided with the duty of being one of Lockheed’s Forum Global Moderators. I do NOT work for Lockheed Martin nor do I receive any financial compensation from Lockheed

(6)

Introduction

Introduction

This AVSIM Prepar3D Guide will cover the following topics to help users get the most of Lockheed Martin’s Prepar3D platform. Some of the information in this guide is applicable to prior versions of Prepar3D (V2.x and V1.x), however the primary focus of this guide will be for Prepar3D V3.x onwards:

 Installation and purchaseInstallation and purchase

 Updating to a more recent VersionUpdating to a more recent Version

 Configuring Graphics SettingsConfiguring Graphics Settings

 Working with Configuration FilesWorking with Configuration Files

 Configuring 3Configuring 3rdrd Party Add-Ons Party Add-Ons

 SimConnectSimConnect

 TroubleshootingTroubleshooting

 Hardware, Overclocking, PerformanceHardware, Overclocking, Performance

 Input Control Devices (TrackIR, Yokes, Throttles)Input Control Devices (TrackIR, Yokes, Throttles)

The basic flow of this guide will take you thru; basic purchase and installation process, how to update your Prepar3D installation when new versions are released, configuring your graphics settings, exposing what settings increase process loads, adjusting you 3rd party products configuration settings to improve performance, some Prepar3D configuration settings (often called “tweaks”), setup of SimConnect (used by many 3rd party products), working thru compatibility with older FSX products, a quick guide to basic overclocking, and finally setting up input control devices (controllers).

(7)

Administrative Information

Administrative Information

AA

AA – Anti-Aliasing. A process used to smooth out jagged edges that are produce by digital images. Aliasing represents a lack of precision where a pixel is an approximation of light, the more pixels the more accurate the approximation and hence less aliasing. Many anti-aliasing methods involve expanding the image to be render into a much larger image and operated on with a mathematical algorithm and then reduce back down to srcinal source resolution. The human eye can distinguish up to about 170 pixels per inch at a view distance of 20 inches.

P3D

P3D – Abbreviation for Prepar3D.

LM

LM – Lockheed Martin.

GPU

GPU – Graphics Processing Unit. This is the hardware in your PC that is responsible for rendering Prepar3D virtual 3D world to your monitor’s 2D world (pixel grid).

SLI

SLI – Scalable Link Interface is a name nVidia used to identify a system that is using Multiple GPU’s to process graphics. Lockheed Martin have worked with nVidia to get “official” multi-GPU support at the driver level. SLI support was introduced in P3D V2.5.

CPU

CPU – Central Processing Unit. This is a core hardware component of a computer responsible for executing program code/instructions (and more).

VAS

VAS – Virtual Address Space. This represents how much memory is being used by the running process. In the case of Prepar3D, it is currently a 32bit executable/program and as such is limited to using a maximum of 4GB of memory.

UI

UI – User Interface, this is visual buttons, checks, sliders that a user interacts with within P3D … for example the Settings screens where graphics options are selected is a UI.

Pixel

Pixel – Physical point in a raster image. For example, a 1080p monitor is 1920 x 1080 pixels arranged in a 2-dimensional grid … there are 2,073,600 pixels in a 1080p monitor.

(8)

by the human eye/brain. When operating at 30 Hz that means each frame has 33.3 milliseconds to render, when operating at 60 Hz that means each frame has 16.6 milliseconds to render. Long frames can be defined as frame with longer than the normal duration at a given monitor frequency. For example, a monitor operating at 30 Hz where a frame that takes more than 33.3ms to render would be a “long frame” (the monitor updates it’s display with the same image because a new image is not ready).

Colored Text

Colored Text – Various colors will be used to quickly identify important references. The color and type face used are:

Filenames.exe

Filenames.exe - a specific file reference

Folder Path - i.e. C:\Users\Rob

Input Action

Input Action - menu item selection, or click, or button press, or check Hidden System Folders

Hidden System Folders - Some actions below require opening/moving hidden files located in hidden system folders

hidden system folders. Not to worry, this is not all that complicated. To learn how to show hidden files in your operating system, go to your Windows Search feature and type in ‘ShowShow Hidden Files

Hidden Files’, then look up in the menu and click on Show Hidden Files and Folders (this works with all Operating Systems) Once you have “Folder Options” open, click on the “View” tab and you will see the following:

(9)
(10)

Installation and purchase

Installation and purchase

P3D

P3D license options and purchase information can be found here. Once you have purchased a P3D license you will be emailed an ID and password, do NOT lose or share the ID and password as they are required after installing P3D.

Note: there is no DVD option for P3D, it is download ONLY.

Setup

Setup

After purchase and download you will need to unzip the file (suggest using 7-Zip) and should have a files structure below:

(11)
(12)

:

 %USERPROFILE%\Documents\Prepar3D v3 Files

The names between the %...% indicate operating system environment variables. For most users these variables will be defined as such:

%PROGRAMDATA% =C:\ProgramData

%LOCALAPPDATA% =C:\Users\[YourAccountName]\AppData\Local

… i.e. [YourAccountName] = Rob …C:\Users\Rob\AppData\Local

%APPDATA% =C:\Users\[YourAccountName]\AppData\Roaming

… i.e. [YourAccountName] = Rob …C:\Users\Rob\AppData\Roaming

%USERPROFILE% =C:\Users\[YourAccountName]

… i.e. [YourAccountName] = Rob …C:\Users\Rob

Full path example below with [YourAccountName] (in my case “Rob”)

C:\Program Files (x86)\Lockheed Martin\Prepar3D v3 C:\ProgramData\Lockheed Martin\Prepar3D v3

C:\Users\Rob\AppData\Local\Lockheed Martin\Prepar3D v3 C:\Users\Rob\AppData\Roaming\Lockheed Martin\Prepar3D v3 C:\Users\Rob\Documents\Prepar3D v3 Files

%APPDATA% and %LOCALAPPDATA% folders are visible ONLY if you’ve performed the steps outlined in Figure 1.

(13)

Updating to a more recent version

Updating to a more recent version

As LM continues to update P3D, new releases are provided to customers. Starting with V3.0 onwards, LM have introduced multiple ways to update an existing installation. This new optional process was driven by end user feedback as users did not want to re-install P3D and all their add-ons after every minor version update.

Major version example being 3 and sub versions .1, .2, .3, etc.

As a result, LM provided three component updates:

Install_Client.msi Install_Client.msi Install_Content.msi Install_Content.msi Install_Scenery.msi Install_Scenery.msi

For each component you must UNINSTALL the existing component FIRST before proceeding to run the new component install.

IMPORTANT: For the purpose of demonstration of file changes between Client, Content, Scenery, a compare was made using a Prepar3D V3.2 base install with Orbx FTX Global install and then ran the Prepar3D V3.3 Client, Content, and Scenery component installers to see what files were impacted by these updates. This “sample” provides an idea of what might get changed when doing P3D component updates.

Client

Client

TheInstall_Client.msiInstall_Client.msi is the primary component that updates the core P3D runtime files. This is the least intrusive of the three component updates … meaning it will have the least amount of impact (i.e. no need to re-install add-ons) to 3rd party Add-Ons. The client update is also the primary core update that moves P3D from one sub-version to another sub-version (i.e. v3.2 to V3.3). At a minimum the client update must be executed in order to update your P3D version.

(14)

Figure 4

(15)
(16)

Figure 6

P3D will recreate this folder on next startup, be patient as this process can take several seconds or even a couple of minutes to re-build the Shaders on startup. This process ONLY happens once when triggered by 3rd party or when shaders folder is manually removed … it should NOTNOT be a “regular” process on every startup.

File

File Changes/UpdaChanges/Updatestes

There are many files that will be updated/replaced with a Client update but the files updated will vary in each released version. Some key files that are update in this example going from v2.3 to v3.3:

C:\Users\Rob\AppData\Roaming

Prepar3D.cfg

New entries were added going from V3.2 to V3.3:

[WEATHER]

(17)

Branches_vs.fx Cloud.fx ConstantBuffers.fxh Fronds_and_caps_vs.fx GPUTerrain.fx GPUTerrain.fxh Leaves_vs.fx ShaderMacros.h …\Lockheed Martin\Prepar3D v3 Most of the *.DLL’s

Many of the *.lib Many of the *.exp

And the main Prepar3D.exe MDLReader.dll was removed mplEashBlendSDKDX11.dll (NEW)

VERY IMPORTANT: Any 3rd party product that binds to P3D in a non-standard method (goes outside the SDK) will likely have compatibility issues. These issues will need to be resolved by the 3rd party add-on provided. Some examples of 3rd party add-ons that could be i mpacted by a client update are:

Orbx ObjectFlow HiFi ASN/AS16 GTN 650/750

FSDT/FB (Virtuali suite of products) REX/Milviz WX Radar

SODE (Any 3rd party airport using SODE)

VA Interface (CDUs) FSUIPC

(18)

Content

Content

TheInstall_Content.msiInstall_Content.msiis a component that updates effects (FX), default aircraft, default sim objects (boats, cars, etc.), default sounds, and more … it does have a higher potential to overwrite files installed by various 3rd party add-ons.

(19)
(20)

…\Lockheed Martin\Prepar3D v3\Effects\textures *.bmp

…\Lockheed Martin\Prepar3D v3\gauges\P3DRadar

Fury_1500.dll Fury_1500.exp Fury_1500.lib

…\Lockheed Martin\Prepar3D v3\Scenarios

*.*

\Preflight Walk Around – Mooney Bravo *.*

…\Lockheed Martin\Prepar3D v3\SimObjects

*.* \Fury_1500 *.* \Avatars\Civilian_Male_WhiteShirt_BlueJeans RecordAndPlayback.xml \Boats \LCS-1 USS Freedom *.*

\LCS-3 USS Fort Worth *.* \GroundVehicles Fury_1500_launcher *.* Fury_1500_recovery_net *.*

Note: Red text indicates folders/files often updated/modified by 3

rd

party add-ons. Installing the Content update will overwrite these files and cause problems with existing add-ons.

(21)

Scenery

Scenery

The Install_Scenery.msiInstall_Scenery.msiis a component that updates global scenery files … it also has potential to overwrite files installed by various 3rd party add-ons.

(22)
(23)

:

Configuring Graphics Settings

Configuring Graphics Settings

Configuring graphics settings helps optimize P3D performance and visual appearance. The higher the graphics settings the more demands/loads will be place on your computer. Graphics setting can be partitioned into two groups identified as CPU bound and GPU bound. Although this term is not entirely accurate as rendering of visuals on your computer will always require both a CPU and GPU, but some tasks are more reliant on either the CPU or GPU.

Your monitor is comprised of rows/columns of pixels where each pixel can be configured to represent a color. For example, a 4K monitor (uHD) is 3840 x 2160 pixels vs. standard HD monitor is 1920 x 1080 pixels. The physical size of the monitor has NO relationship to the number of pixels. E very monitor will have a “native” resolution defined as row/columns of pixels. A GPU’s “final” output is simply the setting of a color value for each pixel on your monitor such as to build a recognizable image (similar to a jigsaw puzzle only organized in exacting rows/columns). The more pixels your monitor has the more “clear” the image will seem. For example, a GPU connected to a 4K monitor has to set the color value of 8,294,400 pixels for every single frame rendered. So the more pixels that need to be set, the more load is placed on the GPU.

(24)

Below is an indication of what Graphics settings are more CPU bound vs. GPU bound vs. both CPU and GPU.

GPU bound is red highlight CPU bound is yellow highlight GPU and CPU bound is green highlight

(25)
(26)
(27)
(28)

Figure 15

(29)

Users should experiment with graphics settings as every PC and list of 3rd party add-ons is unique (variance in OS, RAM speeds, CPU type/speeds, hard drives, etc.). Here are some examples of graphics settings to use that range from low end computer system to an extreme very high end system.

(30)
(31)
(32)
(33)
(34)
(35)
(36)
(37)
(38)
(39)

For high end computer in a less dense location:

(40)
(41)
(42)
(43)
(44)

Adjusting Anti-Aliasing (AA)

Adjusting Anti-Aliasing (AA)

Due to how DX11 graphics API (used by P3D) differs from DX9 graphics API (used by FSX), AA quality is somewhat compromised in DX11 in order to allow for more flexibility in shader processing. This compromise came about primarily because of DX11 new shader model 5.0 (DX9 is shader model 3.0) and use of deferred lighting/shading.

On higher resolution monitors (3840 x 2160) AA becomes less of an issue, but on lower resolutions monitors (i.e. 1920 x 1080) AA and shimmering can present a visual problem. On higher resolution monitors MSAA is usually “good enough” to provide sharp clear images. However, on 1080p monitors MSAA alone may not be enough to provide a nice clear sharp image. There is a solution but it has performance implications (lower FPS).

Such as solution is to use nVidia Inspector to use SGSS AA which is currently the best available AA for 3D real time processing in games/simulations. To configure SGSS AA for use with P3D requires:

 Downloading and installing nVidia Inspector

 Configure P3D graphics settings with NO FXAA and match the MSAA setting (i.e. 4X) to

(45)
(46)

Working with configuration files

Working with configuration files

P3D has several key configuration files that define how P3D runs and how add-ons are incorporated. Some (not all) of those configuration files are:

 Prepar3D.cfgPrepar3D.cfg  Scenery.cfgScenery.cfg  SimObjects.cfgSimObjects.cfg  Terrain.cfgTerrain.cfg  Camera.cfgCamera.cfg  DLL.XMLDLL.XML  EXE.XMLEXE.XML

Note: there are many additional configuration files, but this document will cover (for now) just those files listed above.

Prepar3D.cfg

Prepar3D.cfg

This file is located in the folder:

%APPDATA%\Lockheed Martin\Prepar3D v3

This configuration file contains many of the values set via the P3D menu Options |Options | Settings…

(47)

VAS usage. LM provide a Performance Tuning section in theirLearning Center.chmLearning Center.chm file that is distributed with a P3D install. TheLearning Center.chmLearning Center.chm covers 7 possible “tweaks” (see red text below) that users might want to try. There are some addition tweaks (orange text) that can be experimented with also:

 TextureMaxLoad  SWAP_WAIT_TIMEOUT  UseGlobalTerrainView  SHADER_CACHE_VERSION  AffinityMask  PANEL_MAX_UPDATE_PER_FRAME  FIBER_FRAME_TIME_FRACTION  OPTIMIZE_PARTS (default 1)  MaxRegionsPurgePerFrame=16  AUTOGEN_TREE_MAX_DRAW_DISTANCE=9500.000000  AUTOGEN_TREE_MIN_DISTANCE_TO_LOD=2500.000000  TEXTURE_BANDWIDTH_MULT=30  GROUND_SHADOW_TEXTURE_SIZE=2048  CLOUD_SHADOW_TEXTURE_SIZE=512  ENABLE_MEMORY_OPTIMIZATION  MaintainSystemCopyOfDeviceTextures TextureMaxLoad TextureMaxLoad Section [DISPLAY]

Source Prepar3D Tuning Guide

Default 6 (if no entry exists)

Requirements None

Description Primarily a benefit for Photorealistic scenery, set values too multiple of 3 (3,6,9,12, etc.).

Benefits Improve texture loading performance and reduces low quality textures (blurriness)

(48)

Detriments Not all view will load higher quality textures. SHADER_CACHE_VERSION

SHADER_CACHE_VERSION

Section [GRAPHICS]

Source Prepar3D Tuning Guide

Default 0 (if no entry exists)

Requirements None

Description Set = 1, forces a shader cache rebuild any time changes are made to the Prepar3D.cfg

Benefits Sometimes shader cache is not sync’d correctly and/or gets corrupted, this will force the cache to get rebuilt

Detriments Delay in loading the 3D view (pending complexity of settings/add-ons that can take anywhere from 30 seconds to 3 minutes).

AffinityMask AffinityMask

Section [JOBSCHEDULER]

Source Prepar3D Tuning Guide, Gatwick Flight Simulation Group, Steve

Default All cores (if no entry exists)

Requirements Multiple CPU cores

Description Set = 14. Defines what cores Prepar3d.exe will run on. An affinity mask calculator can be found here:

http://www.gatwick-fsg.org.uk/affinitymask.aspx?SubMenuItem=hardware to help determine what values to enter. There is also considerable information that can be found here: http://www.avsim.com/topic/477057-a-frame-time-analysis-of-p3d-v3-effects-of-cpu-affinity-frame-lock-and-ht/

Benefits Less stutters, higher FPS, less VAS usage.

Detriments Requires some experimentation and various by computer. PANEL_MAX_UPDATE_PER_FRAME

PANEL_MAX_UPDATE_PER_FRAME

(49)

OPTIMIZE_PARTS OPTIMIZE_PARTS

Section [SIM]

Source LM – Beau Hollis

Default 1

Requirements None

Description Optimize parts basically goes through the model looking for parts that use the same material. It then creates bones for each part and combines the mesh for each part into skinned mesh. A common example of this is a numeric keypad. Because each button is animated separate, it has to draw separately, which slows things down. The optimization step can combine the entire keypad into one draw call and using a bone to animate the vertices of each button.

Benefits Increased performance (improves FPS).

Detriments None, but not all 3D models will benefit from this optimization (3rd party dependent).

MaxRegionsPurgePerFrame MaxRegionsPurgePerFrame

Section [SCENERY]

Source LM – Beau Hollis

Default 16

Requirements None

Description To reduce stalls was to put a limit on the number of scenery regions purged per frame. This was part of the big updates we made to optimize trees. As you fly around, scenery regions get requested based on distance from the camera. Scenery regions hold model placements, auto-gen, etc. The terrain mesh/texture data is handled through a totally different system though which relies on the LOD radius. The scenery database loads modes based on your scenery complexity, and makes auto-gen requests based on auto-gen settings, etc. The regions represent 64km, 16km, 4km, and 1km tiles with 16 children. These are loaded as needed and stay in memory until purged. Because of parent/child dependencies, the system only purges by distance at the 64km level. When a top level region is removed, it then recursively

(50)

out. Max 12000.000000 (12Km). Note, the LOD Radius still defines what is loaded within any given radius/cone … however sometimes tree batches will exceed the LOD Radius, setting this value to 12000.000000 will allow those trees in that specific Autogen batch to be visible.

Benefits Autogen trees are seen further away by 2.5Km

Detriments Reduces FPS and slight increase in VAS. AUTOGEN_TREE_MIN_DISTANCE_TO_LOD AUTOGEN_TREE_MIN_DISTANCE_TO_LOD

Section [SCENERY]

Source LM – Beau Hollis, Rob Newman, and Trial and Error

Default 2500.000000

Requirements None

Description This value will adjust the tree density further away from view point. Max value is 8000.000000 (8Km).

Benefits More autogen trees are seen further away from current view position.

Detriments Increase VAS usage and reduces FPS. TEXTURE_BANDWIDTH_MULT

TEXTURE_BANDWIDTH_MULT

Section [TERRAIN]

Source LM – Beau Hollis

Default 30

Requirements Target Frame Rate must be set to something other than Unlimited. Fixed Frame rate (i.e. 30).

Description The texture bandwidth mult value is used but only takes effect when framerate limiter is enabled. It is set up to define the underlying framerate used to calculate texture load and allocation limits. If you lock to a lower framerate than the value of the texture bandwidth mult, then the texture load allowance will be increased to accommodate for the longer than necessary GPU frames. The algorithm is basically this:

TextureMaxLoad = max(TextureMaxLoad,

(51)

shadows in aircraft and on the ground. Values can range from 256, 512, 1024, 2048, and 4096. Increase the value to improve shadow quality (less jagged edges and less flicker). Reduce the value to improve performance

(FPS) at the cost of shadow quality (more jagged edges, more flicker).

Benefits Increase edge definition of cloud shadows.

Detriments Increase VAS and lower FPS. ENABLE_MEMORY_OPTIMIZATION ENABLE_MEMORY_OPTIMIZATION

Section [GRAPHICS]

Source LM – Beau Hollis

Default 1 (if no entry exists)

Requirements None

Description 1. Performs periodic cleanup of the geometric cache which stores buffers used for batched buildings. If you have high autogen settings and move spin the camera around, the geometric cache can get quite big. Looking strait up at the sky for a few seconds may get you back 100+ MB of VAS. This change doesn't really help with the worst case scenarios where 200+ MB of memory is needed for the current scene, but it could help a great deal if you were to start in london where autogen is very taxing and switch to FlyTampa Dubai, where autogen is mostly disabled and replaced with pre-batched placed models.

2. Clear textures out when changing airports. Going to a new airport would trigger loading of new texture before the current area's textures had been given their 10-seconds to page out. Clearing out textures on airport change, helps prevent a spike in texture memory related to this. Note that with MaintainSystemCopyOfDeviceTextures enabled, this is less important as the bulk of the memory associated with these textures should already be freed up before the switch.

Benefits Reduce VAS usage.

Detriments None.

MaintainSystemCopyOfDeviceTextures MaintainSystemCopyOfDeviceTextures

(52)

Scenery.cfg

Scenery.cfg

(53)
(54)

SimObjects.cfg

SimObjects.cfg

This file defines the location of simulation objects (aircraft, vehicles, avatars, boats, etc.) which are used in P3D. 3rd party add-ons can add entries to this configuration file so that P3D knows where to get the object files needed to represent the add-on in the P3D world.

(55)
(56)

As you can see in the example above, several 3rd party entries (SODE, MyTraffic, RealAir, Aerosoft) have been added to this file. The only requirement of this file is that [Entry.nnn] MUST be contiguous … meaning there can be NO gaps or duplicate [Entry.nnn] entries … i.e. [Entry.0], [Entry.1], [Entry.2] … [Entry.nnn]. nnn is zero based (meaning first entry starts at 0).

The PATH value is used to identify where the SimObjects are located which can be an absolute path or a relative path.

Example of absolute path:

PATH=D:\MyTraffic Professional\MyTraffic\Aircraft

Example of a relative path:

(57)

Terrain.cfg

Terrain.cfg

This file is used to map texture information for vector data (linear data such as roads, rivers, streams, railway lines, and so on) to polygon types and flattening information, and to control the automatic placement of certain features such as telephone poles, light poles, fences and power lines. This file provides reasonable defaults for most data types specified in vector data. The terrain.cfgterrain.cfg file can be found in %PROGRAMDATA%\Lockheed Martin\Prepar3D v3 by default.

(58)
(59)

Camera.cfg

Camera.cfg

The camera system can be used by 3rd party add-ons to add additional viewpoints to their SimObjects (aircraft, avatars, boats, etc.). There are severalcamera.cfgcamera.cfg files for P3D:

 Global Cameras  Aircraft Cameras  Avatar Cameras  Scenario Cameras

This section will only cover the global camera configuration file located in

(60)
(61)

Figure 41

There are VASVAS benefits to hiding views you don’t want or don’t plan to use. It’s important to note that these views can still be selected via the P3D Menu and/or right click context menu.

(62)

DLL.XML

DLL.XML

TheDLL.XMLDLL.XML file is used by 3rd party add-ons to dynamically bind specific features of their product to the P3D environment. DLL entries will be loaded as part of the main Prepar3d.exe and run under P3D environment. Unfortunately, LM have two possible folder locations for this file and there can be two versions that will be merged when loaded by P3D.

(63)
(64)
(65)

Figure 45

Conflicts can occur when 3rd party add-ons use common tools to support their product. If an add-on is using a common tool (like SODE, orAPController.exeAPController.exe), and was installed prior to these changes introduced by LM (in a later P3D version), and then a user installs a new add-on that uses the new LM process, then it’s possible to have two different versiadd-ons of a common tool (i.e. SODE, APController) being referenced in theDLL.XML.DLL.XML.

Note: this problem can also exist for the two locations ofEXE.XML.

(66)

EXE.XML

EXE.XML

These files are similar to the DLL.XMLDLL.XML except that the entries being loaded run/execute in their own address space (and use SimConnect to communicate with P3D environment). Unfortunately, there can also be two folder locations for theEXE.XMLEXE.XML file and P3D will merge and load any entries found in bothEXE.XMLEXE.XML files.

(67)
(68)
(69)

:

Figure 49

The two EXE.XMLEXE.XML files are also subject to the same potential for conflicts as the two DLL.XML

DLL.XML files. The same procedures as those used for theDLL.XMLDLL.XML to disable the entire file or just single add-ons can also be applied to theEXE.XML files.EXE.XML

If you are experiencing problems/CTDs, then the DLL.XML files andEXE.XML files (in both folder locations … ProgramData and/or AppData\Roaming… ) is a good place to start disabling add-ons one at a time to see if it resolves the issue. In addition, when P3D is updated to a newer version (i.e. V3.2 to V3.3), there are several 3rd party add-ons that bind themselves to the Prepar3D.exe and/or associated DLLs in such a fashion (outside of normal

(70)

Configuring 3

Configuring 3

rdrd

party Add-ons

party Add-ons

Much of P3D performance is consumed by 3rd party add-ons. 3rd party add-ons mission statement is to improve the flight simulation experience by bringing; high quality textures, more details objects (aircraft, buildings, cars, boats, trains, etc.), enhanced effects (rain, snow, smoke, jet wash, etc.), complex aircraft systems, and much more. As more add-ons are introduced to the P3D environment, they consume more memory (increase VAS) and often reduce rendering performance (decrease FPS).

In this section I’ll cover the configuration of some Add-ons commonly usedy but by NO MEANS all the available add-ons for P3D (many 1000’s). It’s impossible to cover all the add-ons and this is just a very small sample, there are many other high quality add-ons that in most cases will also be highly configurable to allow for performance and VAS compromises.

As an example of add-on configurations:

 HiFi Simulations AS16 and ASCA  REX Texture Direct

(71)

HiFi Simulations AS16 and ASCA

HiFi Simulations AS16 and ASCA

HiFi Simulations provide a robust weather engine and cloud/sky texture system to enhance flight using real world or archived (historic) weather data. Weather systems can impact performance (FPS) and memory usage (VAS), and usually the worse the weather the more likely performance will decrease as additional clouds/rain etc. are created to provide a realistic weather environment.

(72)

AS16 Settings AS16 Settings

Below are the settings that I find to be a good compromise in performance and visual quality of weather depiction:

(73)
(74)
(75)
(76)
(77)
(78)
(79)
(80)
(81)
(82)
(83)
(84)
(85)
(86)
(87)
(88)
(89)
(90)
(91)
(92)
(93)
(94)
(95)
(96)
(97)
(98)
(99)
(100)
(101)
(102)
(103)
(104)

ASCA Settings ASCA Settings

The following ASCA settings allow for the use of REX Texture Direct sky and/or cloud texture sets. If you prefer to use alternate sky textures, then configure ASCA as follows:

(105)

Figure 83

Note: Sky Colors are unchecked, this allows for the use of REX sky textures and/or other sky textures. Same would apply for cloud textures if one is using alternate cloud textures, uncheck the Cirrus, Cloud Textures option.

(106)

Figure 84

(107)

Figure 85

(108)

Figure 86

(109)

Figure 87

(110)

Figure 88

(111)

Orbx

Orbx

Orbx provide a host of different scenery add-ons from airports, to vector data (roads), openLC (land class definitions), terrain mesh, enhanced trees, and detail regions. As with most add-ons that improve the visual experience of P3D environment, these add-add-ons might need some adjustments to work out the best compromise of performance vs. memory usage vs. visuals.

Orbx Vector Orbx Vector

This add-on provides a rich environment of which to fly in, adding accurate coastlines, rivers, lakes, motorways, freeways, arterial roads, golf course, parks, forests, etc. However, adding this much accuracy on a global scale comes with a performance and memory cost. With everything enabled in Vector as much as 400MB additional VAS could be used (pending location) and increase the processing load (CPU and GPU). As such, some compromise provided below might help alleviate some of the VAS/FPS issues associated with this 3rd party add-on:

(112)
(113)
(114)
(115)

Note: if the issue persists then contact Orbx and/or 3rd party airport vendor to get a possible solution (this is often a specific set of file(s)).

(116)

Orbx Airports/Scenery Orbx Airports/Scenery

Many 3rd party add-ons provide specific configuration tools for their products to enable/disable features that allow end users to adjust for their computing hardware.

(117)
(118)

In Conclusion

In Conclusion

The above 3rd party specific configurations are just examples of some 3rd party product

add-ons that can be configured to provide the best performance to visual ratio. Almost all 3rd party add-ons provide a means to manage and adjust their products settings as to meet the performance and VAS goals for end users.

Again, this is a very small sample simply used to demonstrate the need to configure 3rd party add-ons to find the best performance to visuals compromise for your computer. It would be impractical for this document to contain every 3rd party product’s configuration options (this document would be well over 2000 pages long and impossible to maintain/update).

Best practice is to experiment with configuration screens from your favorite 3rd party add-on and come to your own working solutions.

(119)

SimConnect

SimConnect

SimConnect is a core utility used by many 3rd party add-on providers to enhance and enrich their products interaction with P3D.

Unfortunately, there are several versions of SimConnect which require separate installation. P3D also has it’s own “built in” SimConnect version that does not require a separate installation, however, this requires to add-on to be created specifically for P3D and ONLY P3D. Because of this, not many 3rd party vendor use this process for SimConnect and stick with the most common SimConnect client which is FSX-SP2-XPACK version.

For compatibility reasons, many 3rd party vendors select a version of SimConnect that will work in multiple versions of ESP based flight simulators (meaning FS2004, FSX, FSX-SE, P3D V1, V2, V3).

The separate SimConnect client installs can be found under the root of your P3D install folder

(120)

of P3D.

One of the most common versions of the SimConnect client used is FSX-SP2-XPACK. Installation requires a user to execute the SimConnect.msi:

(121)
(122)

SimConnect.ini

SimConnect.ini

(123)

Figure 99

Setting of “level” value will filter out how much debug information is reported. The Values are: Verbose Normal Warning Error Off/None

(124)

SimConnect.cfg

SimConnect.cfg

(125)

Figure 101

The most important entry in theSimConnect.cfgSimConnect.cfg is the value for “Address”. This is the local private IP address of your computer that has P3D installed (Server).

You can determine the IP address of your computer(s) by running IPCONFIG from the CMD prompt. Type “CMD” in you Search box. Now type IPCONFIG:

(126)

SimConnect.xml

SimConnect.xml

This file resides on your “Server” (computer with P3D installed) and is located in

%APPDATA%\Lockheed Martin\Prepar3D v3. This file is ONLY needed in a Client/Server configuration (networked remote computer connecting with a main P3D computer).

(127)
(128)

TroubleShooting

TroubleShooting

When running into problems with P3D, there are some basic troubleshooting steps that can be taken to try to diagnose or at least identify the source of the problem.

 Check AVSIM CTD procedures

 Disable entries inDLL.XML andDLL.XML EXE.XMLEXE.XML and check for duplicate entries  Check conflicting AFCAD files

 Remove any CPU/GPU overclocking  Delete the Shaders folder

 Check SimConnect client is installed and/or configured  Verify software started viaEXE.XML are NOT still runningEXE.XML  Out-of-Memory (OOM)

Check AVSIM CTD Guide

Check AVSIM CTD Guide

An excellent source for resolving crash-to-desktop (CTD) is the AVSIM CTD Guide

Disable entries in DLL.XML and EXE.XML

Disable entries in DLL.XML and EXE.XML

Start by disabling each entry in both sets of theDLL.XML andDLL.XML EXE.XMLEXE.XML files as shown earlier in the document. See Figure 42 and Figure 43 in this document on how to locate the DLL.XML

DLL.XML and theEXE.XMLEXE.XML and disable individual entries or all entries.

Another potential issue are duplicate entries in the two versions of DLL.XMLDLL.XML AndEXE.XMLEXE.XML that “may” exist on your computer (it is possible that you may have none or just one of these files, depends on add-ons installed). SeeFigure 42 andFigure 44 in this document for the possible locates to theDLL.XMLDLL.XML andEXE.XMLEXE.XML. Open these files with a text editor and verify that you do NOT see same entry listed in each file pair.

(129)

:

Check conflicting AFCAD files

Check conflicting AFCAD files

Conflicting AFCAD files can sometimes cause excessive VAS usage and/or stutters and/or strange visuals at 3rd party add-on airports where you may see duplicate control towers and/or building that shouldn’t be there.

A very useful tool to determine possible AFCAD conflicts is provided by Jon at ScruffyDuckSoftware. This tool will identify duplicate AFCADs.

If using MyTraffic6 for P3D, you can manually disable MyTraffic6 AFCAD files by locating theBR2_[ICAO].BGL file ([ICAO] – replace this with the actual airport ICAO code) and moving it to and other folder location (i.e. a Disable folder).

(130)
(131)

Figure 107

(132)

Check SimConnect client is configured correctly

Check SimConnect client is configured correctly

If you are using a Networked computer setup (two or more computers), and SimConnect no longer seems to be working, verify that your main P3D computer is still using the same local IP address that was used in theSimConnect.cfgSimConnect.cfg andSimConnect.xmlSimConnect.xml files (see Figure 100 to Figure 104 in this document).

When connected to a DHCP server such as a network/wireless router, your computer may have been assigned a different IP address that does not match the IP address listed in the SimConnect.cfg

SimConnect.cfg and/orSimConnect.xmlSimConnect.xml files. This can happen if DHCP addresses are not reserved for specific machine names.

There are ways to force your network/wireless router to assign a reserved addresses based on your computers/device name. Here is an example of how to setup a DHCP reservation on a Linksys wireless router:

(133)
(134)
(135)
(136)
(137)

:

Verify software started via EXE.XML are NOT still running

Verify software started via EXE.XML are NOT still running

If you have CTD during a flight, the software loaded from entries in theEXE.XMLEXE.XMLfile(s) will still be running. These programs need to be terminated using Task Manager or Process Explorer.

An example of programs/add-ons that could still be running after P3D terminates are:

GFDev.exe GFDev.exe

SimObjectDisplayEngine.exe SimObjectDisplayEngine.exe

If you attempt to run P3D again while these programs are already running, it could cause problems and/or prevent P3D from running correctly.

After exiting P3D, it can take anywhere from 30 seconds to 3 minutes for programs (add-ons) that were launched via the EXE.XML to properly terminate. It’s

important that P3D is NOT restarted before these programs/add-ons are terminated.

Out-of-Memory (OOM)

Out-of-Memory (OOM)

This is a commonly reported error that is a result of many add-ons and/or very high graphics settings resulting in P3D attempting to use more than 4GB of memory (VAS). P3D is currently a 32bit program and is limited to using no more than 4GB of memory (regardless of how much physical RAM you might have installed in your computer).

The solutions to resolving this error are many, but almost always require the user to compromise graphics details and/or reduce the number of concurrent add-ons being used. Here are some tips to reduce frequency of OOMs:

 P3D graphics settings – reduce texture resolution to 1024 x 1024.  Disable airports not being used in your scenery library.

 Reduce the number of add-ons being used at the same time.

Minimize view usage during flight (stick to just VC view and/or spot view only).  Avoid manually changing Time/Season before flight (especially switching from dawn to

(138)

Hardware, Overclocking, Performance

Hardware, Overclocking, Performance

Flight simulation will always require as much computer hardware as you can afford. Many people try to compare 3D shooters to a flight simulator and say why can’t a flight simulator look like a 3D shooter. The answer is always “view distance”. 3D shooters operate at much smaller view distances between few 100 feet to at most 3 miles before the back drop is just a single static image. Flight simulators work at a visual distance of 100-200 miles or more and it’s a continuously loading globe … no waiting for the next level to load as with 3D Shooters. The global size the planet along with extreme view distances puts a huge strain on memory, memory subsystems, and of course both the CPU and GPU.

With that said, flight simulators can still look pretty stunning, especially when optimized to make the best of one’s computing hardware.

(139)

Hardware

Hardware

It doesn’t make much sense to list hardware choices in this document because hardware evolves and changes every few months, new video cards, new CPUs, new monitors, etc.

However, when selecting hardware for a new build or upgrade to existing computer, it’s good to balance the system as best as possible. Pairing up a high end GPU with a low end CPU will not provide a good overall system balance and will not realize the performance potential of the GPU because it’s being held back by a low end CPU.

It’s good to shop smart, top tier hardware rarely has a good price to performance ratio.

With that said, P3D does seem to respond well to the following:

 Large L3 CPU Cache (shared cache across all cores)  Higher CPU clock frequency

 Higher memory bandwidth with fast SSDs

Large L3 CPU Cache Large L3 CPU Cache

The L3 cache is a shared cache so it’s used by all CPU cores. For some CPUs (usually those with 8 or more real cores) disabling Hyper-threading frees up the L3 cache which improves the probability of access “hits” for data and/or instructions … this can help keep up the flow of processing and improve overall performance (specifically FPS).

Examples of L3 Cache sizes:

6700K 8MB (4 core) 3960X 15MB (6 core) 5960X 20MB (8 core) 6950X 25MB (10 core)

Usage of hyper-threading in a CPU really depends on how many cores you have and the frequency at which you operate those cores at. For example, if a 5960X with Hyper-threading enabled can only reach 4.3Ghz overclocking, but when Hyper-threading is disabled the same

(140)

Overclocking

Overclocking

P3D does benefit from overclock both CPU and GPU. The most cost effective and low maintenance overclocking is obtained with dual loop water cooled system. Water cooling for computers has evolved considerably over the last decade with many options available with fully self-contained kits aimed at novice users/builders.

CPUs, chipset (PCH), power regulators (VRM), and GPUs all can get very hot when overclocked. Fortunately, there are many water cooling solutions that will cover these 4 key components.

This section will NOT go into details of the 200+ BIOS/EFI settings that can be modified in order to achieve a stable overclocked profile. Every motherboard/CPU/RAM will operate differently and it would be impractical to attempt to cover every possible overclocking setting/combination.

At it’s very basic, overclocking is:

 Higher frequency  More voltage  More cooling  Tuned RAM timings

Current memory modules (DDR3/DDR4) don’t heat up enough to justify water cooling , if the case is well ventilated with sufficient fans for well controlled Intake and Exhaust air flow, then memory modules should not require any special cooling.

There is some danger with overclocking such as damaging components, but in most cases a CPU will have thermal protection (assuming it’s not turned off via BIOS/EFI) which should prevent permanent damage/failure, however, proceed at your own risk with no guarantee. When overclocking always proceed with caution, if you can’t afford to write-off your CPU of choice, then don’ t risk overclocking. With that said, some users have been overclocking computers for well over 16 years and have not had a single CPU failure.

(141)

Figure 113

To monitor with a visual overlay of the selected items (i.e. FPS, Temps, etc.) make sure OSD

ON (white … if gray, click on OSD OFF).

Setup monitoring of GPU/CPU frame rates, temperatures, bus loads, GPU loads, CPU loads, and more:

(142)

Figure 114

SLI dual GPU monitoring (above) – to monitored values in P3D the “Show in On-screen Display” must be enabled.

(143)

Overclocking the CPU can be approached in many ways, booting to BIOS/EFI and making the changes there, or via Manufacturer utilities that allow for adjustments directly from within the Windows OS environment with options to save overclocking profiles.

One approach is to setup a safe “boot” clock in the BIOS/EFI and then define an overclocking profile that you can manually load AFTER booting into the OS.

Below is an example of ASUS overclocking/monitoring tools (AI Suite) that can be used to setup and save overclocking profiles from within Windows OS:

(144)

Figure 117

(145)

Monitoring CPU, VRM (voltage regulators), and PCH (chipset) temperatures using motherboard monitor/overclocking tools should provide the most accurate readings as they tie indirectly to the motherboard manufacturers components. Most motherboard manufacturers provide these tools/utilities with motherboard purchase (also watch for updates via motherboard manufacturers website):

(146)

testing at KSEA.

Performance

Performance

How to get “smooth” motion in P3D is actually not that difficult, but it does require some willingness to compromise on graphics settings and/or add-ons.

The easiest approach (but certainly NOT the only approach) to get smooth motion in P3D is to find a monitor that can operate at 30Hz and still look as good as it does at 60Hz or higher with NO mouse lag. Below is a table of the relationship between monitor frequency, limited vs. unlimited, and FPS:

(147)

60 FPS would be a more desirable goal.

(148)

Input Control Devices (TrackIR, Yokes, Throttles … )

Input Control Devices (TrackIR, Yokes, Throttles … )

To enhance the flight simulation experience there are many vendors that offer a variety of controlling device. Devices can range from all in one flight stick with buttons and a throttle axis to highly realistic detail cockpits that emulate the real world aircraft.

Some very common device used with P3D are:

 TrackIR

 Yokes, Throttles, Rudders  Programmable Modules

TrackIR

TrackIR

This USB device consists of a sensor that is mounted on top of a monitor and is used in combination with a head mounted LED/reflection. The intended purpose is to track a user’s head motion. This head motion is then used to move the view from within P3D.

TrackIR web site can be found here.

TrackIR requires the installation of SimConnect (see SimConnect )

It may also be required that TrackIR5 is set to “Run as Administrator” … this varies based on how your computer is setup/configured with user accounts.

When operating TrackIR5 with P3D:

 Start TrackIR (Desktop icon)  Expand full screen

 Position your head such that you are looking at the center of the monitor and NOT the

track center dot/axis

 Hit F12 to re-center to your current head position  Hit F7 to enterprecision mode

(149)
(150)

If you want P3D and TrackIR to respond to F12, then uncheck the Trap checkbox.

In most cases it’s better to have Trap checkbox checked, and just make sure P3D (and or add-ons) have NO key assignments mapped to F12.

Once in P3D, you can then use the F12 key to re-center TrackIR. It can be very helpful to also map another key to toggle TrackIR tracking. Again, you can use any key you like but make sure that key sequence isn’t used by P3D.

It’s a good idea to also set the TrackIR to precision mode using F7 key. Precision mode is only available for TrackIR5 units.

(151)

There are several head devices that can be used with TrackIR:

TrackClip Pro TrackIR Visor and Clip TrackHatwith LEDs

The TrackIR Visor and Clip works very well “as is”, however, with just a slight modification (especially for those of users with “silver” hair and/or other reflective surfaces). Such a modification is to use some reflective tape from a hardware store or online and apply slightly larger reflective squares over the existing hat clip reflective squares. These larger reflective squares make it easier for the TrackIR sensor to pick up accurate head position:

(152)
(153)
(154)

Yokes, Throttle, Rudders

Yokes, Throttle, Rudders

These devices add another level of realism to flight and provide similar looking input devices to those used in real aircraft.

This section will not cover the many thousands of controllers available on the market. However, this section will cover how to calibrate the devices correctly for P3D.

(155)

Figure 125

 Select Controls

(156)
(157)

Programmable Modules

Programmable Modules

As with controllers, many companies provide modules that consist of buttons, dials, switches, and more. These modules can often be programmed to work with specific aircraft or any aircraft. Below is one (there are many vendors that can be found online) example of a vendor that provides programmable modules.

GoFlight GoFlight

One such company is GoFlight. These modules can be used to program events and/or respond to events/data going to/from P3D to operate 2D panels and/or Virtual Cockpit dials, buttons, switches, and more. GoFlight provide configuration software to assign simulator events to buttons and dials and switches. The configuration panelGFConfig.exeGFConfig.exe is used to make assignments.

(158)
(159)

Conclusion

Conclusion

I hope this document helps those flight simulator enthusiasts that use P3D. It’s impossible to include all vendors that support P3D in a single document. Vendors used in this document are NOT preferred vendors, they are simply used as examples of a much larger world of P3D vendor support . The 3rd party add-on vendor world is vast and should be explored to its fullest where there will be a product or products to fit just about every user desire/goal in their pursuit of flight simulation.

References

Related documents