
Harfang®3D是一個可在C ++,Python,Lua和Go中使用的多合一3D可視化庫。
Harfang®3D是一種易於適應,跨平台,多語言,功能強大且優化的解決方案,可與嵌入式系統集成到現有環境中並結合功能,以滿足實時3D成像的工業標準。
HARFANG®3D架構使滿足硬件集成,顯示性能和安全性的要求變得容易。
Harfang®3D用C ++編寫,並基於開源BGFX庫支持Vulkan,Metal,DirectX(9至12),OpenGL和OpenGL ES。它建立在Windows,Linux,Intel和Arm上。
支持平台
場景API
渲染管道
VR API
物理API
音頻API
支持語言
以1080p的1080P在60fps運行的1080GTX上捕獲以下屏幕截圖。
(Sun Temple,由開放研究內容檔案(ORCA)提供
您可以從官方網站下載Harfang二進製文件:https://dev.harfang3d.com/Releases
克隆Harfang 3D存儲庫,包括其子模型。
git clone --recursive -j8 https://github.com/harfang3d/harfang3d.git
cd harfang3d
創建構建目錄。請注意,所述目錄佈局不是強制性的。
mkdir build
cd build
克隆Fabgen。
git clone https://github.com/ejulien/FABGen.git
下載並安裝Autodesk FBX SDK。
創建一個目錄,該目錄將保留由CMAKE生成的構建系統。
mkdir cmake
cd cmake
使用CMAKE生成構建系統。例如,在窗口上將是:
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_INSTALL_PREFIX指定HARFANG SDK將在其中安裝的目錄。PYTHON_EXECUTABLE是Python 3解釋器的路徑。FABGEN_PATH是Fabgen綁定發生器的途徑。HG_FBX_SDK是Autodesk FBX SDK的途徑。
這是可用的CMAKE選項的列表。
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 :啟用子彈物理API(默認值: on )。HG_ENABLE_RECAST_DETOUR_API :啟用recast/detour導航網格和路徑查找API(默認值: on )。HG_ENABLE_OPENVR_API :啟用OpenVR API(默認值: OFF )。HG_ENABLE_SRANIPAL_API :啟用眼睛和麵部跟踪SDK(sranipal)API(默認: off )。HG_BUILD_ASSETC :構建Assetc Asset編譯器(默認: 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 Exporter(默認: ON )。HG_BUILD_HG_LUA :構建Harfang Lua模塊(默認: OFF )。HG_BUILD_HG_PYTHON :構建Harfang Python模塊(Wheel)(默認值: OFF )。HG_BUILD_HG_GO :構建Harfang GO模塊(默認: OFF )。構建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出口商。安裝CMAKETOOLS擴展名。
將harfang/.vscode/template_settings.json文件複製到harfang/.vscode/settings.json並進行編輯以反映您的本地安裝。
在Visual Studio代碼中打開harfang文件夾。 Cmaketools應該成功配置該項目。
Harfang C ++ SDK目錄cppsdk包含以下內容:
bin :根據所使用的配置,該目錄包含所有共享庫的Release或Debug子目錄。lib :像bin目錄一樣,它包含一個以所有生成的靜態庫中構建( Release或Debug )期間使用的配置命名的子目錄。include :包含所有C ++包括Harfang公共API的文件。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)。
給定版本號safor.minor.patch,增加:
Harfang已獲得GPLV3,LGPLV3和商業許可證的許可:
https://www.harfang3d.com/license
通過向Harfang貢獻您的代碼,您可以在您所有相關的知識產權(包括版權,專利和任何其他權利)中授予Harfang3D組織,在所有相關的知識產權下,在所有相關的知識產權下,不可剝奪,無權撤銷,免費,可轉讓,可轉讓的許可麻省理工學院許可證; (b)二元,專有或商業許可證。除本文授予的許可外,您保留對捐款的所有權利,所有權和權益。
您確認您可以授予我們這些權利。您表示您有權授予上述許可證。如果您的雇主有您創建的知識產權的權利,則表示您已獲得代表該雇主做出捐款的許可,或者您的雇主放棄了此類捐款權利。
您表示貢獻是您的原始作品,據您所知,沒有其他人要求或有權要求與捐款相關的任何發明或專利權。您還表示,無論是通過簽訂協議還是以其他方式與本許可條款衝突的任何方式,您都不是法律義務。
HARFANG3D組織承認,除了在本協議中明確描述的那樣,您提供的任何貢獻都是按“按”為基礎的,沒有任何明示或暗示的保證或條件,包括沒有限制的任何標題或條件,非授權,非授權,商人性或適合特定目的的保證或條件。
有很多方法可以幫助Harfang發展其社區:
(使用Harfang 3D AAA渲染器的Nvidia USD閣樓)
(Sun Temple,由開放研究內容檔案(ORCA)提供
(Bistro,由開放研究內容檔案(ORCA)提供
(Sponza Atrium GLTF,由Crytek/Themaister提供)
(海洋旋律,挪威抵抗)