大数跨境
0
0

实时 3D 成像的工业级开源!

实时 3D 成像的工业级开源! GitHubTopp
2024-09-17
0

一种跨平台、多语言、功能强大的实时3D成像解决方案

源代码:

http://www.gitpp.com/ccdan/harfang3d


HARFANG®3D作为一种跨平台、多语言、功能强大的实时3D成像解决方案,适用于多种应用场景,特别是在需要高性能图形处理和实时渲染的工业环境中。以下是一些可能的应用场景:

  1. 汽车和航空模拟:用于驾驶或飞行模拟器,提供逼真的三维视觉环境,帮助训练驾驶员或飞行员。

  2. 医疗成像:集成到医疗设备中,用于显示病人的3D扫描图像,辅助医生进行诊断和治疗规划。

  3. 工业自动化:在生产线监控和控制系统中,提供实时的3D视觉反馈,以优化生产流程和质量控制。

  4. 虚拟现实(VR)和增强现实(AR):用于创建沉浸式体验,如游戏、教育、培训和设计可视化。

  5. 建筑和城市规划:在建筑设计和城市规划中,提供3D模型的实时渲染,帮助设计师和决策者更好地理解项目。

  6. 娱乐和媒体:在电影、电视和游戏产业中,用于创建高质量的3D动画和视觉效果。

  7. 安全监控:集成到安全系统中,用于实时监控和分析关键基础设施的3D图像。

  8. 机器人和无人机:用于机器人视觉系统,提供实时的3D环境映射和导航。

  9. 教育和研究:在教育和研究机构中,用于创建交互式的3D学习材料和模拟实验。

  10. 军事和国防:用于战场模拟和训练,提供实时的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或以上


建筑

  1. 克隆Harfang 3D存储库(包括其子模块)。

    git clone --recursive -j8 https://github.com/harfang3d/harfang3d.git
    cd harfang3d

  2. 创建构建目录。请注意,所描述的目录布局不是强制性的。

    mkdir build
    cd build

  3. 克隆法布根。

    git clone https://github.com/ejulien/FABGen.git

  4. 下载并安装 Autodesk FBX SDK。

  5. 创建一个目录来保存 CMake 生成的构建系统。

    mkdir cmake
    cd cmake

  6. 使用 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 的路径。

  7. 构建 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 代码注释

  1. 安装 CMakeTools 扩展。

  2. 将文件复制harfang/.vscode/template_settings.jsonharfang/.vscode/settings.json并编辑它以反映您的本地安装。

  3. harfang在 Visual Studio Code 中打开该文件夹。CMakeTools 应该成功配置项目。


使用SDK

Harfang C++ SDK 目录cppsdk包含以下内容:

  • bin:根据所使用的配置,此目录包含包含所有共享库的一个Release或子目录。Debug

  • lib:与目录一样,它包含一个以构建(或)bin期间使用的配置命名的子目录,其中包含所有生成的静态库。ReleaseDebug

  • include:包含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::engine

  • hg::foundation

  • hg::platform

  • hg::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


【声明】内容源于网络
0
0
GitHubTopp
top开源系统分享
内容 444
粉丝 0
GitHubTopp top开源系统分享
总阅读315
粉丝0
内容444