一种跨平台、多语言、功能强大的实时3D成像解决方案
源代码:
http://www.gitpp.com/ccdan/harfang3d
HARFANG®3D作为一种跨平台、多语言、功能强大的实时3D成像解决方案,适用于多种应用场景,特别是在需要高性能图形处理和实时渲染的工业环境中。以下是一些可能的应用场景:
汽车和航空模拟:用于驾驶或飞行模拟器,提供逼真的三维视觉环境,帮助训练驾驶员或飞行员。
医疗成像:集成到医疗设备中,用于显示病人的3D扫描图像,辅助医生进行诊断和治疗规划。
工业自动化:在生产线监控和控制系统中,提供实时的3D视觉反馈,以优化生产流程和质量控制。
虚拟现实(VR)和增强现实(AR):用于创建沉浸式体验,如游戏、教育、培训和设计可视化。
建筑和城市规划:在建筑设计和城市规划中,提供3D模型的实时渲染,帮助设计师和决策者更好地理解项目。
娱乐和媒体:在电影、电视和游戏产业中,用于创建高质量的3D动画和视觉效果。
安全监控:集成到安全系统中,用于实时监控和分析关键基础设施的3D图像。
机器人和无人机:用于机器人视觉系统,提供实时的3D环境映射和导航。
教育和研究:在教育和研究机构中,用于创建交互式的3D学习材料和模拟实验。
军事和国防:用于战场模拟和训练,提供实时的3D战场环境,以提高战术训练的效果。
HARFANG®3D的易于适应性和优化性能使其成为这些领域的理想选择,尤其是在对图形处理和实时渲染有严格要求的环境中。
特征
支持的平台
Win32 和 Win64 英特尔
Linux 64 英特尔
Aarch 64 ARM
场景API
基于节点和组件
绩效导向
渲染管线
低规格 PBR 渲染管道
高规格“AAA”渲染管道(屏幕空间 GI 和反射)
支持用户管线着色器
虚拟现实应用程序接口
通过 OpenXR 支持 XR
通过 OpenVR/SteamVR 支持 VR,包括眼动追踪 (SRanipal)
使用 HTC Vive/Vive Pro、Valve Index、Lenovo Explorer、Oculus Rift S、Oculus Quest 2、Varjo XR-3 进行测试
物理API
刚体、碰撞、机械约束、光线投射
音频API
播放/流式传输 WAV/OGG 格式
3D 音频空间化
支持的语言
C++
Python (3.2+)
路亚(5.4)
Go (1+,实验性)
截图
以下屏幕截图是在 1080GTX 上以 1080P、60FPS 运行时捕获的。


(Sun Temple,由开放研究内容档案馆 (ORCA) 提供)
下载
您可以从官方网站下载HARFANG二进制文件:https ://dev.harfang3d.com/releases
构建SDK
先决条件
git
CMake 3.19+
CPython 3.2+
Go 1+ (用于 Harfang Go 模块)
Doxygen (用于 Harfang C++ SDK 文档)
Autodesk FBX SDK (用于 FBX 转换器)
视窗
Visual Studio 2019 (C++ 编译器和 IDE)
MinGW (用于 Harfang Go 模块)
Linux
海湾合作委员会9或以上
铛
建筑
克隆
Harfang 3D存储库(包括其子模块)。git clone --recursive -j8 https://github.com/harfang3d/harfang3d.git
cd harfang3d创建构建目录。请注意,所描述的目录布局不是强制性的。
mkdir build
cd build克隆法布根。
git clone https://github.com/ejulien/FABGen.git下载并安装 Autodesk FBX SDK。
创建一个目录来保存 CMake 生成的构建系统。
mkdir cmake
cd cmake使用 CMake 生成构建系统。例如,在 Windows 上它将是:
cmake ../.. -G "Visual Studio 16 2019" -A x64 \
-DCMAKE_INSTALL_PREFIX:PATH="D:/harfang/build/install" \
-DPYTHON_EXECUTABLE:FILEPATH="C:/Python36/python.exe" \
-DHG_FABGEN_PATH:PATH="D:/harfang/build/fabgen" \
-DHG_FBX_SDK:PATH="D:/fbx_sdk"
以下是可用 CMake 选项的列表。HG_BUILD_HG_LUA:构建Harfang LUA模块(默认:OFF)。HG_BUILD_HG_PYTHON:构建 Harfang Python 模块(轮子)(默认:OFF)。HG_BUILD_HG_GO:构建Harfang GO模块(默认:OFF)。HG_BUILD_ASSETC:构建AssetC资源编译器(默认:ON)。HG_BUILD_ASSIMP_CONVERTER:构建基于 Assimp 的 3D 模型转换器(默认:ON)。HG_BUILD_FBX_CONVERTER:构建 FBX 转换器(默认:ON)。HG_BUILD_GLTF_IMPORTER:构建 GLTF 导入器(默认值:ON)。HG_BUILD_GLTF_EXPORTER:构建 GLTF 导出器(默认值:ON)。HG_BUILD_CPP_SDK:构建 C++ SDK(默认:OFF)。HG_BUILD_TESTS:构建 C++ SDK 单元测试(默认值:OFF)。HG_BUILD_DOCS:构建 API 和 C++ SDK 文档(默认:OFF)。HG_ENABLE_BULLET3_SCENE_PHYSICS:启用 Bullet 物理 API(默认值:ON)。HG_ENABLE_RECAST_DETOUR_API:启用 Recast/Detour 导航网格和路径查找 API(默认值:ON)。HG_ENABLE_OPENVR_API:启用 OpenVR API(默认:关闭)。HG_ENABLE_SRANIPAL_API:启用 VIVE 眼部和面部跟踪 SDK (SRanipal) API(默认值:关闭)。C++ SDK
工具
绑定
CMAKE_INSTALL_PREFIX指定Harfang SDK的安装目录。PYTHON_EXECUTABLE是Python 3解释器的路径。FABGEN_PATH是 Fabgen 绑定生成器的路径。HG_FBX_SDK是 Autodesk FBX SDK 的路径。构建 SDK。
cmake --build . --config Release --target INSTALL注意:在 Linux 上,您需要使用以下命令显式指定构建类型
-DCMAKE_BUILD_TYPE=Release根据传递给 CMake 的选项集,安装目录将包含以下子目录:
cppsdk:Harfang C++ SDK。hg_python:Harfang Python 模块。hg_lua:Harfang LUA 模块。hg_go:Harfang Go 模块。assetc:资产编译器。assimp_converter:Assimp 3D模型转换器。fbx_converter:FBX转换器。gltf_importer:GLTF 进口商。gltf_exporter:GLTF 出口商。
Visual Studio 代码注释
安装 CMakeTools 扩展。
将文件复制
harfang/.vscode/template_settings.json到harfang/.vscode/settings.json并编辑它以反映您的本地安装。harfang在 Visual Studio Code 中打开该文件夹。CMakeTools 应该成功配置项目。
使用SDK
Harfang C++ SDK 目录cppsdk包含以下内容:
bin:根据所使用的配置,此目录包含包含所有共享库的一个Release或子目录。Debuglib:与目录一样,它包含一个以构建(或)bin期间使用的配置命名的子目录,其中包含所有生成的静态库。ReleaseDebuginclude:包含Harfang公共API的所有C++包含文件。cmake:包含 CMake 配置文件。
要将 Harfang C++ SDK 添加到您的 CMake 项目,只需将以下内容添加到文件中CMakeLists.txt:
find_package(harfang REQUIRED
COMPONENTS cppsdk
PATHS ${HG_CPPSDK_PATH}
NO_DEFAULT_PATH
)
与目录HG_CPPSDK_PATH的路径cppsdk。例如,如果我们遵循上面给出的目录布局,它将是D:/harfang/build/install/cppsdk.
目标应链接到以下库。
hg::enginehg::foundationhg::platformhg::libluadll
该install_cppsdk_dependencies函数安装 Harfang C++ SDK 共享库依赖项。
install_cppsdk_dependencies(destination component)
destination: 是将安装共享库的库。component:安装组件名称。
版本
Harfang 遵循语义版本控制规范 (SemVer) ( http://semver.org )。
给定版本号 MAJOR.MINOR.PATCH,递增:
当您进行不兼容的 API 更改时的主要版本,
当您以向后兼容的方式添加功能时,次要版本,以及
当您进行向后兼容的错误修复时,请使用 PATCH 版本。
执照
Harfang 根据 GPLv3、LGPLv3 和商业许可证获得许可:https:
//www.harfang3d.com/license
一种跨平台、多语言、功能强大的实时3D成像解决方案
源代码:
http://www.gitpp.com/ccdan/harfang3d

