中国科技核心期刊      中国指挥与控制学会会刊     军事装备类重点期刊
工程实践

基于Genesis的飞行模拟视景仿真系统开发

  • 元凯 1, 2 ,
  • 于澜 1 ,
  • 姚嘉陵 1 ,
  • 于萍 3
展开
  • 1.空军研究院特种勤务研究所, 北京 100195
  • 2.中国人民解放军国防大学, 北京 100091
  • 3.中国人民解放军94926部队, 江苏 无锡 214028

作者简介:元 凯(1988—),男,福建南平人,硕士研究生,研究方向为军事训练保障。

于 澜(1978—),女,硕士,工程师。

Copy editor: 胡前进

收稿日期: 2020-07-07

  修回日期: 2020-11-24

  网络出版日期: 2022-04-29

Development of Flight Simulation Visual Simulation System Based on Genesis

  • YUAN Kai 1, 2 ,
  • YU Lan 1 ,
  • YAO Jia-ling 1 ,
  • YU Ping 3
Expand
  • 1. Special Service Research Institute of Air Force Research Academy, Beijing 100195, China
  • 2. National Defense University of PLA, Beijing 100191, China
  • 3. Unit 94926 of PLA, Wuxi 214028, China

Received date: 2020-07-07

  Revised date: 2020-11-24

  Online published: 2022-04-29

摘要

为构建大型、逼真的模拟训练战场环境,分析了Genesis仿真软件的特点,描述了基于Genesis的飞行模拟视景仿真系统组成及主要功能。重点论述应用Genesis开发飞行模拟视景仿真系统的流程,给出视景数据库综合构建的内容和方法,实现对虚拟场景中的军事目标、气象环境、特殊效果等对象的实时驱动和控制,并对系统开发过程中的区块动态调用技术、三维纹理映射技术、FootPrint技术进行了详细探讨。实际运用结果表明系统仿真度高、实时性好、稳定性强,为飞行模拟训练向实战化深入推进提供重要平台。

本文引用格式

元凯 , 于澜 , 姚嘉陵 , 于萍 . 基于Genesis的飞行模拟视景仿真系统开发[J]. 指挥控制与仿真, 2021 , 43(1) : 85 -91 . DOI: 10.3969/j.issn.1673-3819.2021.01.016

Abstract

In order to build a large and realistic simulation training battlefield environment, the characteristics of Genesis simulation software are analyzed. The composition and main functions of flight simulation visual simulation system based on Genesis are described. The process of developing flight simulation visual simulation system by using Genesis is emphatically discussed. The content and method of comprehensive construction of visual database are given to realize the military target and meteorology in virtual scene. The real-time driving and controlling of environment and special effects are discussed in detail, such as block dynamic calling technology, 3D texture mapping technology and FootPrint technology. The practical application results show that the system has high simulation degree, good real-time performance and strong stability, which provides an important platform for the in-depth promotion of flight simulation training to actual combat.

视景系统是飞行模拟器的重要组成部分,用来为飞行员提供逼真飞行训练任务场景,包括飞行过程中座舱外空中、地面、海上逼真的模拟景象,同时能够在各种气象条件和不同飞行参数的情况下显示出对应视觉效果,使飞行员产生身临其境的感觉,满足实时动态飞行模拟训练要求。众多的飞行模拟仿真系统中,视景成像系统场景的内容是否丰富、特效是否逼真、场景是否清晰、人机交互是否友好等方面都影响到飞行训练的效果。
视景仿真软件主要有Vega Prime、Mantis、Unity 3D、Open ScenceGraph(OSG)、Genesis等,其中Vega Prime使用较为广泛,文献[1-9]使用Vega Prime进行飞行视景仿真设计,文献[10]采用Mantis对某型直升机视景系统进行设计与实现,文献[11]采用Unity 3D进行三维视景仿真,文献[12-13]基于OSG进行飞行视景仿真系统设计与实现。目前,国内利用Genesis进行飞行模拟视景仿真研究还较少。

1 Genesis特点分析

Genesis是Diamond Visionics公司开发的实时动态视景仿真软件,Genesis系列产品包括Genesis RTX(实时渲染引擎)、Genesis IG(多通道图像生成器)、Genesis AM(xml项目配置和预览工具)及Genesis SDK(软件开发工具包)。与目前行业内其他视景仿真软件功能对比如表1所示。
表1 部分主流视景仿真软件功能对比
功能实现 仿真软件
Genesis Vega Prime Mantis
地景库渲染
时实时生成、
修改、校验
支持 不支持 不支持
局部气象 支持 不支持 不支持
红外传感器仿真 支持 不支持 不支持
实时阴影 支持大规模使用 支持,但数量
不能太多
不支持
Phong光源
(车流动态灯光、
照明灯光)
支持大规模使用 支持,但数量
不能太多
不支持
动态草/树 支持大规模使用 支持,但数
量不能太多
不支持
积雪场景 支持 不支持 不支持
动态海 支持 支持 支持
全球地景
数据模型
支持全球
无边界飞行
有全球地景模型,
但是运行不稳定
有全球
地景模型
Genesis主要有如下特点:
1)地景库的快速创建与实时更新
Genesis充分利用最新的GPU架构和多核处理器性能,无须传统的离线数据库编译,直接读入GIS源数据(包括矢量数据、三维模型数据、图像数据、卫星遥感数据和高程数据),实时生成、修改、校验三维视景。对地景库进行实时渲染时,只需要对场景内发生改变的局部数据组件进行更新。例如,新的航空或卫星图像能够在几分钟之内嵌入数据库中,而不需要对全范围的地景库进行重建。这就节省了预编译时间和成本,实现飞行训练场景的所见即所得。
2)局部气象的定制仿真
Genesis的气象仿真模块不仅可以完成传统的为全区域飞行场景只生成一种气象类型的仿真,还可以依据历年真实气象数据或典型气象特征数据,按照飞行任务气象预案想定,在特定时段、特定飞行区域,实现包括大气温度、湿度、密度、压力、风速风向、云、雾、雨及能见度等局部气象环境仿真,大大增加了飞行环境的复杂多变性,为构建贴近真实环境的飞行训练仿真提供有力的技术支撑。
3)红外传感器仿真
Genesis的红外传感器仿真模块采用JRM SigSimRT的红外成像仿真技术,利用场景中的可见光纹理和与其匹配的材质属性,获取物体的红外辐射特性,合成得到最终的可视红外场景,实现对红外热像仪(FLIR)和夜视仪(NVG)三维场景的真实模拟仿真。
此外,Genesis充分利用场景逼真度增强技术,通过大规模实时阴影/倒影、动态草/树、车流动态灯光、照明灯光、积雪场景等特殊效果渲染绘制,有效提升了视景成像系统三维场景的逼真度和沉浸感。同时,Genesis采用全球地理模型,飞行场景基于经纬度坐标绘制,具有唯一的地理坐标。这一特性确保了飞行位置坐标与飞行导航系统坐标精确地保持一致,提供了一个无边界飞行环境,解决了飞行转场训练的困难,可以说Genesis在军事领域的应用具有较大前景。

2 系统组成及功能

2.1 系统结构组成

图1所示,飞行模拟视景仿真系统主要由视景数据库、视景驱动软件、教员控制台、网络服务器、多通道图像生成器、成像显示终端等组成。
图1 视景仿真系统结构组成
其中视景数据库由地理环境场景数据、重要军事目标数据、特殊效果数据等组成。由Genesis AM将处理好的数据源(矢量、模型、图像和高程源)进行相关配置。
视景驱动软件是通过C++和Genesis SDK进行开发的应用程序,对场景中实体对象的位置、姿态、状态等信息进行解算和控制。
教员控制台可以设置当前的时间、飞行能见度、天气类型等虚拟场景必要的环境信息,也可以设置飞行课目、起落机场等地景调度信息。
网络服务器负责接收和转发模拟器飞行控制程序提供的空间位置信息、教员控制台设置的时间和气象信息、局域网内其他模拟器的弹道数据信息、碰撞数据信息以及视景驱动软件的控制信息等。
多通道图像生成器,通过图形平台Genesis IG调用由Genesis AM配置和Creator生成的地形和模型数据,采用Genesis RTX引擎进行实时渲染,最终通过硬件平台输出到显示终端。
成像显示终端将视景画面最终呈现出来,可通过显卡和融合机等硬件进行单通道或多通道显示。

2.2 系统主要功能

系统通过网络服务器实现视景驱动软件和成像计算机的信息交互,飞行控制程序和教员控制台程序将信息通过网络服务器传递给成像计算机,而网络服务器将成像计算机返回的数据按需转发给视景驱动软件和模拟系统其他设备,整个过程基于Genesis RTX引擎进行虚拟场景的实时绘制。其主要功能如下:
1)实时绘制真实地形、大气环境、建筑模型等基本场景;
2)按需调用起降机场、飞机、汽车、坦克等模型数据;
3)绘制云、雨、雪、雾、冰雹等多种天气现象;
4)绘制爆炸、导弹轨迹、烟雾、火焰等特殊效果;
5)黄昏、夜景、湿跑道、夜航灯光效果的显示;
6)空中、地面和水上等典型固定和机动目标的模拟,碰撞效果真实准确;
7)飞行和观察视角的控制和切换。

3 视景数据库综合构建

视景数据库是用来储存记录地理信息、文化信息和模型信息必要的数据库[5-6]。飞行模拟视景系统视景库主要是为飞行员提供逼真的舱外模拟景象,包括各种气象条件、不同飞行参数下的视觉效果,空中、地面、海上军事机动和固定目标运动特性。

3.1 地理环境场景数据库

根据飞行航线以及目标分布的特点,针对不同飞行高度和视点重视程度进行动态多分辨率纹理设计,集成卫星遥感数据、高程数据、纹理贴图以及各类目标模型等数据源,设置合适级别的地景库LOD参数、正确的投影方式,以便观察和与地景库相匹配,最终生成视景数据库文件。Genesis地景数据库的制作流程如图2所示。
图2 Genesis场景数据库制作流程
1)卫星遥感影像数据的处理与导入。对卫星遥感数据进行精准校正、分割处理,消除卫星影像中云雾和其他影响到视觉效果的瑕疵,最大程度还原影像数据的真实色彩。最后将卫星数据由TIFF格式转化为ECW格式,通过Genesis AM数据库工具导入地景工程文件中。
2)文化矢量信息提取与导入。针对植被、城镇建筑、河流湖泊、海、道路等多种地物地貌文化信息,提取制作相应的矢量数据,并以点、线、面三种SHP格式,通过Genesis AM数据库工具导入Genesis地景工程文件中并配置文化矢量信息各项参数,选取矢量对应的模型素材,设置相应的长宽高尺寸、分布密度、灯点亮度等细节参数。
3)高程数据的处理与导入。检索并去除高程数据中的坏点,将数据格式转化为DTED格式,通过Genesis AM数据库工具导入地景工程文件中。
4)三维机场模型制作与导入。依据机场建筑纹理、卫片、机场平面图等素材数据,按照1∶1比例构建机场三维模型,包括主跑道、滑行道、标志线、塔台、机场灯光、居民楼、公路等机场及周边典型地景。合理控制模型的三角形数量,确保模型的复杂度满足实时渲染效果,设置模型文件路径、模型内部各节点,调整模型位置,以点和面矢量的形式导入Genesis地景工程文件中,效果如图3所示。
图3 三维机场模型效果
5)细节环境参数配置。依据成像计算机的解算能力和训练任务需求,通过文件合理设置地形与纹理细节控制参数,如地形单元的三角形数量、地形LOD级数和距离、纹理淡入淡出的距离和强度,保证三维场景渲染的逼真度和实时性。

3.2 重要军事目标数据库

重要军事目标包括机库、雷达阵地、导弹阵地、地堡、桥梁、指挥机构等目标及周边相关设备。视景以高分辨率的卫星图像、现场照片为基础,利用三维软件将军事目标模型进行等比制作及细化,通过获取目标精确的地理坐标和外形信息、影像资料,构建具有真实细致的纹理贴图的三维模型。在Creator中可以设置模型的DOF节点、Switch开关和LOD参数,以便后续进行精确控制其动作或运动轨迹。

3.3 特殊效果数据库

特殊效果数据库是优化虚拟场景,增加逼真度的特殊数据库,包括火焰、烟雾、爆炸、天气效果等。Genesis提供了多种效果,需要在Genesis AM中进行相关纹理设计和配置工作。
1)天气气象效果如雨、雪、雾、冰雹、闪电效果显示和强度的变化。
2)固定或者移动的片云、三维立体云、乌云密度的变化。
3)战术效果显示,如导弹尾迹、火焰、爆炸、烟雾。
4)时间变化,白天、黄昏、黑夜等场景变化。
5)城市灯光、营区灯光、机场标志灯光、飞机着陆灯、星空、月亮等。
6)高级光照系统显示,形成实时阴影、动态植物、湿跑道反射、反光和倒影等效果。

4 视景仿真系统驱动控制

驱动控制是整个仿真系统中不可或缺的部分,是通过程序将飞行员操作命令、教员台控制指令实时展示在成像显示终端的关键环节。

4.1 视景初始化控制

设定初始化模块,实现网络数据通信初始化,该模块主要处理视景计算机与网络服务器的网络数据通信,将数据写入内存,验证数据的正确性,将视景反馈的地形高度信息送到网络服务器。加载地形纹理、加载场景模型、实现进程初始化、气象环境初始化、实时光照初始化、模型位置初始化、模型姿态初始化和视点位置初始化。

4.2 天体环境变化仿真控制

包括场景时间设置、时间推进方式设置、太阳显示开关、月亮显示开关和星空显示开关。通过函数Celestial Sphere Ctrl设置当前时间;通过控制函数Sun Enable、Moon Enable、Star Field Enable实现太阳、月亮、星星等显示或者关闭、调整亮度并且使得场景产生相应的变化;通过控制函数Atmosphere Control实现湿度、温度、大气能见度、风速、风向等参数的变化;通过控制函数Environmental Region Control实现一个场景中多个区域的不同气象环境控制。

4.3 窗口显示控制

文件window-definition.xml可设置一个或者多个通道视窗参数,以单个视窗显示脚本为例:
1)window-id 与channel-id 一致,为该通道编号“0”。
2)fullscreen="true" use-virtual-fullscreen="true" screen-size-horizontal="1920" screen-size-vertical="1080"是设置满屏显示与屏幕分辨率。
3)group-id 可设置通道分组,区分第三视点通道与主显示通道。
4)frustum near="5.0" far="150 000" left="-33" right="33" top="25" bottom="-25" 设置远近裁剪及视锥角度,如图4所示,设置各偏移量为"0"。
图4 视锥角度设置

4.4 视景特效仿真控制

该模块包括烟雾、火焰、闪光、海浪、沙尘等特效模型对象的初始化、状态设置、持续时间控制和位置控制。以爆炸特效为例,可通过设置XML表设定爆炸对象名称、类型、生命周期、空间位置、父子关系,并通过驱动软件实时控制。

4.5 气象环境仿真控制

气象环境仿真用于控制天气层和天气实体,进行当前能见度设置、雪强度设置、雨强度设置、风向设置、三维云位置设置、云层高度设置、云层厚度设置、云层过渡带设置。通过Weather Control类提供的方法控制场景的能见度,设置雨、雪、雾的强度以及风速和风向等。以雾天为例,需要控制的主要参数主要有Weather Enable、Layer ID、Coverage、Visibility Range、Base Elevation、Thickness、Transition Band、Severity等。雾层的垂直范围由Base Elevation基准高程、Thickness厚度、Transition Band过渡带参数构成。基准高程指从平均海平面到雾层底的距离,厚度为雾层的垂直高度,过渡带指区域上下的垂直高度。雾天参数如图5所示。
图5 雾天参数示意图

4.6 模型实体控制

模型实体控制包用于控制描述实体状态的位置、姿态和其他属性[8]。此数据包适用于仿真中的所有实体,每个模型实体都有一个唯一的标识符(Entity ID)。当主机发送一个实体控制包给IG时,IG设置与entity ID参数的值相对应entity对象的状态值(Entity State)。如果指定的实体不存在,IG将创建它,当IG创建实体时,它会复制与实体类型(Entity Type)相对应的几何图形参数,此副本唯一且独立存在于场景中,因此,任何修改实体的操作只影响该实体及其子实体。分配给同一类型的多个实体的唯一实体ID,如图6所示。
图6 实体ID配置示意图
模型实体可以在层次关系中彼此附加,在这种层次结构中,子实体位置由对应的父坐标系指定[14]。因此,只需控制父实体即可将层次结构中的所有较低级别的实体作为一个组一起运动。无须单独操作子实体,除非其父子关系发生变化。例如飞机的导弹和导弹轨迹可以通过两种方式之一进行机动。方案一是将飞机、导弹和尾迹作为一个等级进行单独控制,这就要求主机单独为每个实体提供位置和姿态数据等信息。方案二是在发射前将每枚导弹和尾迹作为子实体附在飞机上,发射后,将导弹和尾迹从飞机中分离出来,改变Attach State状态,提升导弹和尾迹实体等级,和飞机一样可以独立控制,如图7所示。
图7 飞机模型实体控制示意图
当不再需要显示模型实体时,可以将实体状态设置为0以指示IG卸载模型并释放为实体分配的内存,任何子实体也会被销毁。整个过程中,顶层实体(即非子实体)的位置始终对应于大地的纬度、经度和高度,子实体的位置对应于父实体的坐标系。

5 关键技术

5.1 区块动态调用技术

飞行视景库的一个特点就是有大量的纹理和多边形,如果一次性调用大规模的数据必然会增加图形生成器内存和CPU的负担,而区块动态调用技术可以解决大量数据实时调用的困难。该技术在处理地形环境绘制时,只处理实现一定范围内的地形,当观察者视线运动是,动态加载新的地形环境,卸载不再感兴趣的地形,内存中始终保留的是感兴趣的景象,保证了画面的实时流畅。如图8所示,Genesis在运行时采用四叉树结构将地球平铺成小方格块,每个方格块都可以被看作是一个小型的独立数据库,它从观察者的眼点位置开始处理用户定义的半径内的每个方格。若观察者关注某个方格内的景象,那么方格大小将继续递归,直至越来越小的地形图越来越接近观察者眼点的位置,同时方格结构会随着眼睛位置的移动而更新,实时创建新的场景或摧毁不再关注的场景。
图8 四叉树结构区块动态调用

5.2 三维纹理映射技术

利用纹理映射技术来展示物体的表面细节和反射属性,使建立的3D模型更加接近自然物体,极大地提高计算机生成图形的真实性。使用三维纹理映射技术绘制体积云,把三维纹理映射到粒子系统中的粒子上,其能够绘制出真实感较高的体积云效果,当视点进入体积云内部时,看不到明显的人工痕迹,能够达到体积云的沉浸感效果。
三维纹理映射的基本思想是假定场景中的三维物体每一个空间坐标点(x, y, z)都存在一个纹理值t(x, y, z),这个纹理值由纹理函数t(x, y, z)唯一确定,相对于二维纹理映射,三维纹理映射可以把三维物体的空间坐标直接线性映射到一个纹理空间上。三维纹理映射的纹理空间与三维物体坐标同是三维的,因此,在纹理映射的时候,只需把场景中的三维物体坐标线性变换到纹理空间的三维局部坐标系中即可。
为了对云层外观进行快速建模通常采用基于3D纹理的粒子系统的建模方法表示具有模糊性的自然景物,系统中的三维云模拟效果如图9所示。3D纹理可以理解为由很多张2D纹理组成用于描述三维空间数据的图片。三维纹理通过三维纹理坐标进行访问,首先,用有限个大小不等的六面体来构建云团的基本轮廓;其次,在六面体的范围内生成一定数量的3D纹理粒子;再次,根据需要模拟云的类型,采用不同的纹理进行渲染。假设一个3D纹理粒子代表一个球形区域,其中粒子密度服从高斯分布,每一个粒子属性包括中心位置、半径、密度及颜色,通过调整粒子的半径及密度分布,可以得到较为真实的云外观形状。
图9 三维云模拟效果

5.3 FootPrint技术

把3D模型加入地形中会遇到以下两个问题:一是当模型被加到一个倾斜地面上或者多个面的交点处时候,看起来像是浮在地面上;二是当一个全是由平面构成的3D模型(如跑道、公路)加入地形中,并且覆盖在地表上时,系统就无法决定哪一个面在上面,其结果就会出现闪烁或者显示冲突的现象。FootPrint技术的应用可有效解决上述问题,通过切除地形与3D模型面相接触的部分,为模型让出空间。

6 系统实现

系统主要硬件为CPU为Intel(R) Xeon(R)CPU E5-2620 v3@2.4HZ,内存64 G,NVIDIA QUADRO K6000显卡;软件主要以Genesis及其相关组件为核心,结合MultIGen Creator建模工具、Visual Studio 2010(C++)编程环境、3Dmax建模工具,进行飞行训练场景建模和相关视景驱动应用开发。如图10所示,展现了某次模拟飞行训练中的不同画面,系统在运行时动态地构造精度高、面积大、文化信息丰富的飞行场景,其画面真实、运行流畅、各类特效和气象环境逼真,为飞行模拟训练提供较好的视景环境。
图10 几种典型飞行训练仿真场景

7 结束语

本文系统研究了基于Genesis开发飞行模拟视景仿真系统的详细过程和关键技术,明确系统具体组成、主要功能,提出了具体设计方案,探讨了飞行视景仿真系统场景库生成集成、军事目标建模和场景库实时驱动等具体技术。下一步,将结合VR和AR技术实现逼真的沉浸式飞行训练场景,重点突出军事目标夜间红外特性仿真,同时进行大视角、多通道以及多机间战术对抗飞行训练仿真试验,验证系统稳定性及精确度。
[1]
邓晴莺, 李国翬, 王宝奇, 等. 大下视场飞行模拟器视景系统的设计与实现[J]. 系统仿真技术, 2016, 12(2):123-129,139.

[2]
耿维忠, 谢步瀛, 胡笳. 基于Creator和Vega的视景仿真系统的研究与实现[J]. 东华大学学报(自然科学版), 2010, 36(4):356-359.

[3]
宋薇薇. 基于Creator的机场飞行区特殊视景仿真系统的关键技术分析[J]. 沈阳航空航天大学学报, 2012, 29(2):51-54.

[4]
赵奇峰, 田传艳, 胡军照, 等. 基于Multigen Creator某飞行器视景仿真模型优化设计[J]. 计算机测量与控制, 2015, 23(10):3494-3497.

[5]
赵澄东, 高昂. 基于OpenGL成像机理的飞行器姿态模拟[J]. 现代电子技术, 2017, 40(7):24-27.

[6]
钟文武, 周新力, 金慧琴, 等. 基于Vega Prime的飞行视景仿真研究与应用[J]. 指挥控制与仿真, 2015, 37(6):90-93,108.

[7]
罗木生, 侯学隆, 徐君明. 基于Vega Prime的直升机反潜机动三维视景仿真[J]. 火力与指挥控制, 2012, 37(8):143-146,150.

[8]
邓晴莺, 李国翬, 王宝奇, 等. 某飞行模拟器视景系统的设计与实现[J]. 兵工自动化, 2016, 35(8):75-79.

[9]
杨永刚. 某型直升机试飞模拟器视景系统方案的设计与实现[J]. 系统仿真技术, 2018, 14(3):211-215.

[10]
周秀芝, 田涛, 胡文婷. 基于Mantis的某型直升机视景系统设计与实现[J]. 计算机测量与控制, 2017, 25(1):135-136,140.

[11]
潘卫军, 罗杰, 朱新平. 基于Unity 3D的航空器机场场面滑行三维仿真[J]. 航空计算技术, 2018, 48(2):83-85,89.

[12]
孙倩, 刘晶晶. OSG视景仿真技术应用[J]. 中国科技信息, 2017(Z1):18-20.

[13]
姚崇. 无人机飞行仿真系统关键技术研究[D]. 哈尔滨: 哈尔滨工业大学, 2014.

[14]
晏卫东, 金振中, 石伟峰. 某型训练模拟器视景系统的设计与实现[J]. 现代防御技术, 2012, 40(2):168-172.

文章导航

/