今天开始学习Prepar3D,开篇


Prepar3D SDK

 

总览

洛克希德·马丁公司的Prepar3D软件开发套件(SDK)培育了开放,繁荣的开发人员生态系统。该SDK支持Prepar3D开放开发架构的理念,并鼓励第三方为Prepar3D平台带来新的创新,改进的附件和培训内容。

该SDK可用于开发新模型和新内容,例如飞机,仪器,雷达,地面车辆,船只,建筑物和其他结构。它可用于创建新的视觉效果,例如风景,地形和特殊效果。

Prepar3D从根本上说是数据驱动的。对于可以增加或修改以增强培训目标的新数据,模型或方案的数量没有限制。

本文档包含有关SDK组件的详细信息,以及有关安装和其他一般问题的提示和技巧。有关如何部署解决方案的信息可以在“ 解决方案部署”中找到。

如果您是使用此SDK来为Prepar3D生成附加组件的附加组件开发人员,请另参阅《适用于开发人员的附加组件说明》

有关创建方案的信息,例如教程和清单,请参见SimDirector

 

SDK组件

以下是SDK组件的概述,并提供了每个组件的详细文档的链接。除非更改安装目录,否则SDK会安装到:

%PROGRAMFILES%\ Lockheed Martin \ Prepar3D v4 SDK * \

SDK分为以下工具包:

零件

描述

文献资料

造型

建模组件是Prepar3D SDK 的最大组件之一,对于许多开发人员来说,它也是最重要的组件。所有出现在模拟中的飞机,轮船,地面车辆,建筑物,桥梁,树木以及几乎任何其他结构都需要以正确的格式创建3-D模型。Prepar3D的格式是特定于仿真的,因此必须格外小心以确保正确完成所有必需的步骤。对于飞机来说尤其如此,其动画,特效,照明和纹理的范围广泛,可以构成如此复杂的对象。

可以使用建模工具3dsMax®(Autodesk®的产品)或任何其他支持Prepar3D的建模工具来完成3-D模型的生成。 格式。如果要实现具有专业外观的飞机的目标,则在使用3D建模工具时会有一个陡峭的学习曲线,不应低估它。此SDK的建议第一步是至少熟悉主要建模工具。

特殊效果用于表示图形化的粒子效果,例如火,烟,雨,蒸汽,排气以及类似的短期动画效果。特殊效果定义为一个或多个发射器,每个发射器产生一个或多个粒子。发射器和粒子都可以以多种方式移动,并且粒子将引用适合该效果的纹理。通常,这些纹理包括相当程度的透明度,以便获得效果(如烟)的松散定义的形状。特殊效果文件是文本文件,可以编辑,但是使用“特殊效果”工具通常很容易-可以安装以与模拟一起运行的基于对话框的实用程序。特殊效果是将真实感添加到图形模型的关键组成部分。

可以将SpeedTree模型转换为库对象,以在Prepar3D中使用。SpeedTree概述文档将介绍此过程。

3ds Max概述

特殊效果超越

SpeedTree概述

模拟对象

模拟对象主要是飞机(固定翼,直升机和水上飞机),但包括由模拟操纵的所有其他对象,例如机场地面车辆,轮船,某些动物和场景系统使用的对象(例如,与直升机升降系统配合使用的负载)。它们都需要在模拟中表示相似的文件夹和文件结构,并且此结构的描述以及每个文件的必需和可选内容是此SDK组件的主要目的。

飞行器配置文件指定了飞行器的一个或多个版本,以及每个飞行器的属性(名称,颜色,声音,面板,仪表等)以及在何处找到定义这些属性的文件。配置文件包括飞机系统的详细信息,例如引擎,燃料,航空电子设备,起落架,物理尺寸,空气动力学,以及许多其他详细信息,例如摄像机视图位置和特殊效果。配置文件是易于查看和更新​​的文本文件。通常,在制造新飞机时,

“飞机系统说明”中介绍了一些特定的飞机程序,特别是弹射器的下水以及直升机的吊索和葫芦。

其他模拟对象(例如地面车辆,动物,船只等)也需要配置文件,尽管通常这些配置文件比飞机的要小得多。这些在“模拟对象配置文件”中进行了描述。
 
声音配置文件位于飞机的“声音”文件夹中,并定义要用于该飞机的声音。

AIR文件用于以决定飞机飞行质量的系数和数据表的形式提供飞行动力学数据。提供了许多样本,可以用作新飞行模型的基础。

模拟对象概述

面板和用户界面

可以修改用户界面的各种组件。这可以通过创建用作独立窗口的面板来完成,这些面板可以在Prepar3D中打开。面板可以嵌入Scaleform,并且包含各种默认UI组件的源,以便于修改。

面板

比例尺

世界

世界组件包含用于修改环境的所有工具。

风景 -BGL是用于描述许多Prepar3D所需的数据格式的术语 系统。BGL编译器将指定所需内容的XML文件作为输入,并生成可由模拟器读取的BGL文件作为输出(或一系列错误,这些错误涵盖了XML无法正确解析或数据文件丢失的情况) )。BGL文件的两个主要用途是保存风景对象(建筑物,桥梁,围栏等)和机场的数据(包括跑道数据,滑行道,VOR,NDB,ILS信息,塔楼以及所需的许多其他特定信息)定义机场)。也可以使用编译器从机场删除某些特定元素,例如,以新数据替换它们。

BGL编译器最简单的用途之一是在特定位置放置一栋建筑物(也许是一个库对象,该对象随仿真一起提供,或者在外部创建)。编译器最复杂的用途之一是用新数据替换整个机场。文档中的大多数条目都包含示例XML代码,该示例XML代码显示了如何执行每个任务。
 
该SDK包括编译器,BGLComp和称为BGLScan的验证工具。 


地形 -该Prepar3D地形系统使用八个主要数据源:海拔(DEM数据),图像,土地分类,水分类,区域,季节,矢量数据和人口密度。这些用于确定如何渲染地球的景观。飞机可以在45,000英尺的高度飞行,因此需要渲染地球的广阔区域,或者在跑道上或低空飞行,并且只需要很小的区域即可看到-并且它的范围可以介于两者之间。因此,了解详细程度(LOD)的概念很重要。

另一个重要的概念是矢量数据。矢量数据包括道路,河流,溪流,海岸线,机场边界以及其他线性数据。该线性数据用于将这些类型的地形添加到地面纹理中,因此地面纹理不包含此类信息。例如,河流和河流数据需要适当地切入地形,以便正确地向山下流入大海。

该SDK附带三个主要工具。重新采样工具可以将现有的源数据替换为新数据,或者将照片图像添加到地球上的特定位置。TmfViewer工具可用于检查任一详细级别的源数据。Shp2Vec工具用于将形状文件(包含矢量数据的标准文件)转换为仿真可以读取的矢量数据。SDK提供了一些使用这些工具的示例。建议阅读“地形和风景”文档,作为地形系统的概述。

地形和风光配置文件文档提供了有关这些配置文件格式的特定信息,这些信息确定诸如各种地形和风光信息的优先级之类的内容。 


交通 -这些工具确定由Prepar3D的AI(人工智能)组件控制的飞机的航线和频率。这些都是模拟中但不受人为控制的飞机(单人游戏模式下的用户飞机,或多人游戏场景中的所有飞机)。AI流量由Prepar3D用户界面中的滑块控制,然后这些工具确定将用于AI交通的机场,飞机类型,可用的停车门,巡航的飞行高度,可接受的飞行范围以及类似的详细信息。AI系统用来调节空中交通流量以免发生拥堵的关键因素之一是选定机场的可用停车位及其大小。这确保了空中交通不会变得如此密集以至于发生死锁情况。

AI系统还会处理一些船只交通,包括船只类型,港口和路线。没有用于直升机或水上飞机的AI飞行员。 
可配置的地面交通包括休闲船,高速公路交通和机场地面车辆。交通工具箱用于指定特定航线上的单个飞机或船只。该SDK为不需要这种单独处理的大量地面交通提供了更常规的设置。使用区域设置,以便不同的模型可以出现在世界的不同地方。指定了可能的模型范围,并且生活世界系统将随机选择满足交通密度要求的需求。生活世界模型包括诸如行李车,行李装载机,后推式拖船和加油车。地形系统中的人口密度设置用于确定高速公路交通和休闲船交通密度。 


天气 -SDK的任何单个组件都无法控制模拟天气。可以通过SimConnect界面以编程方式设置天气,也可以使用场景创建工具指定天气。Weather SDK当前可以更改两个特别重要的天气特征的视觉外观-热量和脊线升高。它还指定了取决于基础土地类别的热学参数范围。这两个任务都是通过使用xml文件来处理的。 


自生-Autogen是为未使用确切数据(例如,卫星照片图像和特定建筑物模型)的地球区域创建风景(建筑物和植被)的过程的名称。地球分为一个网格,网格的最小正方形在每个方向上大约为1.2 km。每个广场都有一个土地分类-例如“凉阔的阔叶林”或“干木灌木丛”-定义了该地区植被的基本类型。每个区域的纹理表都标注有每个建筑物的脚印,植被区域等。所使用的确切建筑物和植被模型由模拟确定,并且来自各种XML文件中指定的范围。该文档包括有关如何创建新的Autogen类并将其添加到XML文件中的教程,以便新类出现在仿真中。该SDK包含注释,验证和放置新Autogen场景所需的工具。

风光

地形

交通

天气

Autogen

脚本编写

本节介绍Prepar3D支持的脚本语言。这包括反向波兰表示法(RPN)脚本和LUA脚本。

脚本概述

SimConnect API

SimConnect API是程序员与Prepar3D的接口。附加组件可以用C,C ++编写,或者,如果正在使用托管API调用,则可以使用任何.NET语言(例如C#.net或VB.net)编写。该界面有很多可能的用途,包括编写附加组件以控制天气系统,管理AI控制的飞机,拦截关键事件并提供与默认编码器不同的响应。具有向菜单系统添加项目,控制摄像机,请求机场设施数据以及为场景系统提供自定义处理的功能。

SimConnect使用客户端-服务器模型来启用第三方编写的客户端与模拟器之间的通信。通常,客户端首先请求打开与服务器的通信,然后列出对某些类型的信息或系统事件的请求列表,以将其传递给客户端。客户端-服务器编程的异步特性意味着客户端随后等待数据返回。典型客户端通常执行的最后处理是完全终止与服务器的通信,然后关闭。许多客户端可以同时运行,并且已经定义了优先级系统,以确定哪个客户端以哪个顺序接收请求的信息。客户端还可以与服务器进行远程通信。 

SDK中包含一系列示例,因此,工作示例支持使用许多函数调用。这些示例中的大多数都是用C ++编写的,这是大多数开发人员选择的语言,尽管有许多示例是用C#编写的,而一个是在VB.NET中编写的。文档的一个特殊部分描述了使用Managed接口进行编程的详细信息。

SimConnect API概述

PDK API

Prepar3D开发工具包(PDK)API是用于获取Prepar3D平台服务的服务提供商。PDK的功能类似于SimConnect,但在较低级别上与Prepar3D绑定在一起,从而具有更好的性能和更直接​​的交互。与SimConnect不同,PDK插件没有网络接口,因为它们必须作为进程内dll开发。通过与用户编写的.dll接口,可以将数据注入到仿真中或从仿真中接收数据。PDK的用途包括创建自定义SimObject,添加自定义纹理和后处理以及修改摄影机。

PDK API概述

摄影机

通过使用配置设置,可以高度自定义和扩展摄像机。可以将相机添加到飞机和其他对象,并且可以从菜单选项调整相机视图。可以定义跟踪某些对象或在固定路线上移动或相对于另一个对象(例如用户飞机)移动的摄像机。还可以定义摄像机以从飞机上的不同座位区域(例如副驾驶员或后座乘客)提供视野。

相机配置

自定义后期处理

附加组件

所有形式的Prepar3D内容都可以轻松地打包到一个称为附件的可交付组件中。使用受支持的附加分发方法,可以在不修改核心Prepar3D文件的情况下实现高级用户功能并简化安装。

附加组件概述

 

提示和技巧

安装要求

某些SDK工具要求Prepar3D运行时位于同一台计算机上。优良作法是将SDK安装到已安装Prepar3D运行时的计算机上,然后将文件/文件夹(例如SDK Learning Center \ SDKLearningCenter.exe)移动 到另一台计算机上,以便可以在一台计算机上同时参考文档。开发是在另一个上完成的。

该SDK附带的某些工具要求 首先 安装Microsoft .NET Framework 4.7.2 Developer Pack

仅当将SDK安装到默认文件夹时,文档和某些工具中的路径才正确。如果将SDK安装到非默认文件夹中,请注意某些记录的路径可能不正确,然后运行工具ConfigSDK.exe(在SDK文件夹中)以将许多配置工具的路径更新为正确的路径夹。在运行ConfigSDK.exe之前,请确保至少首先运行一次Prepar3D.exe(因为该工具要求存在某些注册表项),并且Prepar3D运行时已安装到同一台计算机上。

应用程序数据文件夹

该SDK文档中的说明假定开发人员正在使用管理员特权,否则当这些工具尝试在受保护的目录中创建文件时,可能会发生安全冲突。

应用程序数据存储在:

%APPDATA%\ Lockheed Martin \ Prepar3D v4

这两个文件夹都是隐藏的系统文件夹,并且要使其可见,您需要以管理员身份登录并设置视图属性以显示隐藏的文件和文件夹。在Windows 7中打开Windows资源管理器,选择“组织/文件夹”和“搜索”选项,然后选择“显示隐藏的文件和文件夹”。

Prepar3D注册表项信息

Prepar3D的注册表项信息位于:

> HKEY_LOCAL_MACHINE \ SOFTWARE \ Lockheed Martin \ Prepar3D v4

开发软件

Visual Studio 2017可用于开发SimConnect客户端应用程序。有关Visual Studio的更多信息(包括如何下载Visual Studio 2017),请在此处访问其网站。

警告:如果使用Visual Studio 2005 SP1开发了附加组件,则它将在开发计算机上运行,​​但是仅当安装了以下Redist软件包之一或使用_USE_RTM_VERSION编译项目时,该附加组件才能在其他计算机上运行。编译器开关。

对于32位操作系统:

http://www.microsoft.com/downloads/zh-CN/details.aspx?familyid=A7B7A05E-6DE6-4D3A-A423-37BF0912DB84&displaylang=en

对于64位操作系统:

http://www.microsoft.com/downloads/zh-CN/details.aspx?familyid=BD512D9E-43C8-4655-81BF-9350143D5867&displaylang=en

论坛

虽然大多数开发人员问题将在SDK文档和示例中得到解答,但总会有一些问题未得到解决,因此鼓励SDK开发人员加入并参加各种论坛,讨论有关Prepar3D附加组件开发的问题

Prepar3D论坛可以在这里找到。

生成GUID

许多SDK组件需要GUID(全局唯一标识符)。Visual Studio中包含一个生成这些工具的工具。

这将在桌面上放置一个名为GUIDGen的图标。打开此窗口,然后双击GUIDGEN以打开该工具:

uploading.4e448015.gif转存失败重新上传取消

对于大多数应用程序,选择选项4.注册表格式作为最合适的GUID格式。
 
根据需要多次单击“新建GUID”。手动修改现有GUID并不是一个好主意,因为这样做会大大增加重复现有GUID的机会。 
 

 

uploading.4e448015.gif转存失败重新上传取消

Prepar3D 的SDK 也附带GUID Generator工具。要使用GUID生成器,请在SDK目录中运行GUIGenerator.exe文件。在给定的文本框中键入您希望生成的GUID数量。然后单击生成以创建那么多GUID。单击“保存”以将GUID保存到文件中,以便随时可以对其进行检索。

配置设定

在Prepar3D.cfg的[图形]部分中,以下两个设置可能会影响性能:

SmallPartRejectRadius = N(默认值为1),它确定要渲染对象必须具有的半径(以像素为单位)。增大此大小将从渲染管线中剔除更多对象。

MergeDirtyRegionUpdates = 1或0(默认值为1),指示是否应在本地或整个显示区域进行更新,尤其是对玻璃驾驶舱面板的更新。在较旧的图形卡上将此值设置为0可能会导致某些面板的性能有所改善。

在Prepar3D.cfg的[Realism]部分中,以下设置确定当用户飞机坠毁时会发生什么。在多人游戏场景中,尤其是在使用共享驾驶舱时,应格外小心,确保所有计算机上的设置都相同-否则会有不可预测的行为。

CrashDetection True =检测用户飞机坠毁并根据OnCrashAction的设置进行响应,False =通过将飞机“弹起”回到安全飞行状态来忽略所有坠毁。

OnCrashAction在单人游戏模式下:0 =从头开始重置场景(默认),1 =结束场景,2 =将用户飞机置于坠毁位置。在选项0和1的多人游戏模式下,客户将简单地返回到简报室,并且主机将处于崩溃状态(对于场景),或者将场景重置(对于自由飞行)。选项2的工作方式与单人游戏模式相同-主机和客户端的用户飞机都将留在坠毁位置。

在Prepar3D.cfg的[MAIN]部分中,可以使用以下设置来辅助开发内容。

ContentErrorReporting如果将此值设置为1,则许多与内容有关的错误将记录到文件%USERPROFILE%\ Documents \ Prepar3D v4 Files \ ContentErrors.txt中。错误的示例是重复的配置文件或无效的属性设置。通常,Prepar3D将尽可能最佳地静默处理这些错误,但开发人员应验证其内容未在此文件中生成条目。

 

解决方案部署

Prepar3D的许多功能旨在在比运行Prepar3D.exe更受控制的情况下,向观众部署解决方案(例如,教程)。该解决方案部署部分展示了如何更改默认的安装文件夹。“ 命令行开关”部分使模拟可以从特定场景以及可选的特定场景以及其他选项开始。“ 启动解决方案”部分描述了提供的工具,该工具使解决方案的部署(尤其是教程)变得容易且一致。

 

命令行开关

可以从命令行使用一组可选的开关启动Prepar3D.exe。可以使用多个开关,只要它们彼此不冲突即可。在输入路径的地方,应在开关和路径两边都加上引号(请参阅表中的示例)。

开关

描述

例子

-dev

此开关已被弃用。

Prepar3D -dev

“ -flt:path_to_scenario .flt”

加载命名的旧方案文件。该路径可以相对于包含Prepar3D.exe的根文件夹,也可以是绝对路径。这是加载单人任务的推荐方法。如果到旧方案文件的路径是命令行上的最后一个条目,则-flt开关是可选的。

Prepar3D“ -flt:场景\教程\飞行基础\ Flight.flt基础”

“ -fxml:path_to_scenario .fxml”

加载命名的方案文件。该路径可以相对于包含Prepar3D.exe的根文件夹,也可以是绝对路径。这是加载单人任务的推荐方法。如果场景文件的路径是命令行上的最后一个条目,则-fxml开关是可选的。

Prepar3D“ -fxml:场景\教程\洛克希德·马丁Showcase \洛克希德·马丁Showcase.fxml”

-mp

模拟器将在“主持标准场景会话”多人游戏模式下启动,并显示“多人对话”。

Prepar3D -mp

“ -mp:path_to_scenario .fxml”

使用提供的方案和目标文件,并在“多人对话”可见的情况下,以“托管多人方案”模式启动模拟器。如果路径中有任何嵌入式空格,则可以使用双引号,空格可以是绝对路径,也可以是相对于包含Prepar3D.exe的文件夹的相对路径。

Prepar3D“ -mp:场景\教程\多人和SimOperator基本场景\多人和SimOperator基本场景.fxml”

-mpjoin

在“加入多人游戏会话”模式下启动模拟器,并显示“多人游戏对话框”。

Prepar3D -mpjoin

“ -mpplayer:局域网名称 ”

跳过登录屏幕,并使用命令行提供的播放器名称。

Prepar3D -mpjoin“ -mpplayer:实习飞行员一” 
Prepar3D -mp“ -mpplayer:实习飞行员一” 
Prepar3D“ -fxml:Scenarios \ Tutorials \ Multiplayer和SimOperator基本方案\ Multiplayer和SimOperator基本Scenario.fxml”“ -mpplayer:Trainee飞行员一”

-mpplayer

跳过登录屏幕,并使用Prepar3D.cfg配置文件(在[Multiplayer]部分中的条目“ LANUsername = Player name ”)提供的播放器名称。玩家名称的最大长度为20个字符。如果该文件中不存在该条目,则忽略该开关并显示常规登录屏幕。

Prepar3D -mpjoin -mpplayer 
Prepar3D -mp -mpplayer 
Prepar3D“ -fxml:Scenarios \ Tutorials \ Multiplayer and SimOperator Base Scenario \ Multiplayer and SimOperator Base Scenario.fxml” -mpplayer

“ -net:path_and_filename .cfg”

此开关允许从命令行启动多人游戏会话。提供的.CFG文件应具有[Multiplayer]部分,其中包括Prepar3D.cfg文件的[Multiplayer]部分中可用的所有条目。

有关更多信息,请参见 样本网络配置文件主题。

Prepar3D.exe -net:d:\ MPHost.cfg 
Prepar3D.exe -net:d:\ MPUser2.cfg

“ -rolename:角色名称 ”

此开关允许通过命令行从名称中选择多人角色。当与-net和-fxml开关结合使用时,这是有效的。fxml文件必须包含指定的角色名称。

Prepar3D.exe“ -net:d:\ MPHost.cfg”“ -fxml:Scenarios \ Tutorials \ Multiplayer and SimOperator Base Scenario \ Multiplayer and SimOperator Base Scenario.fxml”“ -rolename:Player 1”

“-风景:path_to_folder”

使用此开关,可以将特定的风景和地形配置文件应用于特定的场景。开关中指定的文件夹应包含terrain.cfg文件和scenery.cfg文件,并且必须是可写文件夹(以便Prepar3D可以将正确的风光索引文件写入该文件)。如果该文件夹中不存在任何文件,该文件夹不存在或不可写,则Prepar3D将恢复为使用默认的地形和风光配置文件。请注意,路径中不应包含结尾的“ \”(如果示例以Prepar3D“ -Scenery:C:\ Alternate Config Folder \”的形式输入 ,则将无法正确解析)。

如果在模拟运行时使用此开关,则可能会发生一些意外的行为-新的场景加载速度可能很慢,并且autogen对象可能会浮动。解决浮动问题的一种方法是选择“场景库”菜单,然后单击“确定”。以这种方式更改环境可能在开发期间具有一定的价值,但在部署解决方案时应避免。

使用不带路径的此开关可还原到默认的风光文件夹。

Prepar3D“ -Scenery:C:\ Alternate Config文件夹”

“ -cfgdir:path_to_folder \”

此开关允许使用指定目录覆盖3个配置目录。被覆盖的3个目录是:

  • %APPDATA%\ Lockheed Martin \ Prepar3D v4
  • %LOCALAPPDATA%\ Lockheed Martin \ Prepar3D v4
  • %PROGRAMDATA%\ Lockheed Martin \ Prepar3D v4

现在将从这3个目录中写入或读取的所有文件都将重定向到提供的目录。这包括Prepar3D.cfg和SimConnect.xml文件。

Prepar3D.exe -cfgdir:d:\ Replacement \ Directory \

-runas专业

此开关允许具有Professional Plus许可证的系统作为模仿的Professional许可证运行。这有助于测试为Professional Plus许可证开发的内容,方案和功能,但也希望与Professional许可证兼容。仅建议将该开关用于测试,不得将其用于任何其他原因。

Prepar3D.exe -runasprofessional

-simdirector

此开关将导致应用程序在SimDirector中启动 。

Prepar3D.exe -simdirector

-模拟器

此开关将导致应用程序在SimOperator中启动 。

Prepar3D.exe -simoperator

“ -configure: 
option1 = value1,
option2 = value2,
...,
optionN = valueN”

此开关使内容开发人员可以更轻松地执行附加配置任务(例如,添加,删除,启用或禁用Prepar3D将在其中查找诸如效果或simobjects内容的目录)。此开关旨在消除开发人员编写脚本以添加其内容的需求,这些脚本通常会覆盖基本安装文件或访问用户可能没有访问权限的文件。

请参阅附加配置文件主题以获取更多信息,包括选项的广泛列表以及可以指定的各个值。

Prepar3D.exe“-配置:文件=效果,操作=添加,路径= C:\ Program Files \ My Company \ My Effects产品\ data”

-删除的

删除以下文件夹的内容,Prepar3D在其中存储设置和缓存的数据:

  • %APPDATA%\ Lockheed Martin \ Prepar3D v4
  •  
  • %LOCALAPPDATA%\ Lockheed Martin \ Prepar3D v4
  •  
  • %PROGRAMDATA%\ Lockheed Martin \ Prepar3D v4
  •  

Prepar3D.exe-删除生成

-deleteshadercache

删除位于以下位置的着色器缓存文件夹的内容:

%LOCALAPPDATA%\ Lockheed Martin \ Prepar3D v4 \ Shaders

Prepar3D.exe -deleteshadercache

-deletedocuments

删除存储方案的Prepar3Ddocuments文件夹的内容,该文件夹位于:

%USERPROFILE%\ Documents \ Prepar3D v4文件

Prepar3D.exe-删除文档

 

启动解决方案

本节介绍了建议的用于部署和启动解决方案的过程。所有客户端计算机都必须安装了Prepar3D客户端版本。通常,这将在安装任何特定解决方案之前完成。解决方案通常由启动程序,启动程序的清单文件以及方案和目标文件组成。启动器程序旨在简化确保学生启动教程的一致且简单的指令集的过程。SDK附带了一个示例启动器Prepar3DLauncher.exe及其源代码,以便能够为特定的应用程序进一步开发它。一个Prepar3D解决方案可以完全包含在Visual Studio安装项目中。该项目将包含所有必需的文件,以及启动程序和清单文件。以这种方式包含解决方案应该提供一种可靠的部署方法,尤其是对于那些可能对大量学生提供简单指导的教程而言。或者,可以将启动器安装在客户端计算机上,并将其数据文件(图像,脚本和目标文件)远程保存在服务器上。如果尝试远程运行启动程序,则会触发安全异常。

启动器的示例源代码和项目已安装到SDK \ SimConnect Samples \ Launcher文件夹中。此文件夹中包含的XML文件是启动程序加载的清单文件。下一节提供了此文件的格式。

 

清单文件格式

下面显示了一个清单文件示例,其中包含一个单人游戏和一个多人游戏场景。

<SimBase.Document Type =“启动” version =“ 1.0”> 
<解决方案> 
    <名称> Prepar3D Launcher的示例解决方案</ Name> 
    <说明>这是在Lockheed Martin Prepar3D 1.0 Launcher中填充信息的示例解决方案。 </ Description> 
    <VersionMajor> 1.0 </ VersionMajor> 
    <VersionMinor> 1.0 </ VersionMinor> 
    <Publisher>洛克希德·马丁</ Publisher> 
    <Scenario> 
        <Name>教程:首次起飞</ Name>
        <说明>这是一项基本的训练任务(模拟和飞行熟悉)。预计完成时间:5分钟。</ Description> 
        <IsMultiplayer> false&let; / IsMultiplayer> 
        <Image>%PREPAR3DPATH%\ Scenarios \ Tutorials \ Basic of Flight \ imgM_i.bmp </ Image> 
        <FltFile>%PREAPR3DPATH%\ Scenarios \ Tutorials \ Flight.flt的基础</ FltFile> 
    </ Scenario> 
    <Scenario> 
        <Name>教程:飞行基础</ Name>
        <说明>这是基本的训练任务(飞机转弯)。预计完成时间:10分钟。</ Description> 
        <IsMultiplayer> false&let; / IsMultiplayer> 
        <Image>%PREPAR3DPATH%\ Missions \ Scenarios \ Finding Your Way \ imgM_i.bmp </ Image> 
        <FltFile>%PREAPR3DPATH%\ Missions \ Scenarios \找到Way.flt </ FltFile> 
    </ Scenario> 
</ Solution> 
</SimBase.Document>

 

第一个条目范围(名称,描述,VersionMajor,VersionMinor,Publisher,SupportPHone,SupportEmail,HelpURL)的用途不言而喻。只需输入适当的信息以供您自己使用。下表描述了Scenario标记中可以包含的条目。

XML标签

描述

名称

方案的名称(任务,教程等),显示在启动器的UI中。这是唯一必填字段。

描述

方案说明。

IsMultiplayer

对于多人任务, 设置为True,否则为False

图片

要在启动器UI中显示的图像的路径。图片必须是.bmp文件,并且应为380 x 232像素。

FltFile

方案的排期文件的路径。任务文件将从飞行文件中引用。

风景

包含替代景观和地形配置文件的文件夹的路径。

- 最佳 -

 

 

  • 6
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值