Awesome
<img src="https://github.com/harfang3d/image-storage/raw/main/brand/logo_harfang3d_owl_only.png" align="right" width="200"/>HARFANG® for Golang
3D real time visualization framework
Harfang is a 3D real time visualization framework for the industry, the education and for scientists. It grants developpers the ability to create applications ranging from data visualization to games.
See https://www.harfang3d.com/license for licensing terms.
Installation steps for Windows
- Install the GO Language for Windows
- Install MSYS 2
- Open MSYS 2 bash and execute this command :
pacman -S mingw-w64-x86_64-gcc
- Add the GCC binaries to your Windows PATH by executing these two lines in your cmd. (This should be the correct path if you left everything by default during the MSYS 2 install)
setx PATH "%PATH%;C:\msys64\mingw64\bin"
refreshenv
- Download the Harfang Go package :
go get github.com/harfang3d/harfang-go/v3
- Run any harfang program :
go run example_harfang_app.go
Test the Go tutorials
- Download the tutorials https://github.com/harfang3d/tutorials-hg2
and unzip them to your computer (eg. d:/tutorials-hg2).
-
To compile the tutorial resources, download assetc for your platform: https://dev.harfang3d.com/releases/
-
Drag and drop the tutorial resources folder on the `assetc
executable -OR- execute assetc passing it the path to the tutorial resources folder (eg. assetc d:/tutorials-hg2/resources).
After the compilation process finishes, you should see a resources_compiled
folder next to the resources folder. You can now
execute the tutorials from the folder you unzipped them to.
tutorials-hg2>go run draw_lines.go
Alternatively you can open the tutorial folder and run the provided debug targets using Visual Studio Code
Screenshots
The following screenshots were captured on a 2070RTX in 1080P running at
60FPS, GI is performed using screen space raytracing and does not require RTX capable hardware.
Cyber City (CyberPunk City, CyberPunk Girl and Robot R32 by art-equilibrium, ILranch and ZeroArt3d)
Sun Temple (Sun Temple, courtesy of the Open Research Content Archive)
Cafe Exterior (Bistro, courtesy of the Open Research Content Archive)
Sponza Atrium (Sponza Atrium GLTF, courtesy of Crytek/Themaister)
Features
Scene API
- Node & component based
- Performance oriented
Rendering pipeline
- Low-spec PBR rendering pipeline
- High-spec 'AAA' rendering pipeline (screen space GI & reflection)
- Support of user pipeline shaders
VR API
- VR support via OpenVR/SteamVR with Eye tracking
- Compatible with the HTC Vive/Vive Pro, Valve Index, Lenovo Explorer, Oculus Rift S
Physics API
- Rigid bodies, collisions, mechanical constraints
- Ray casting
- Fast & accurate
Audio API
- Play/stream WAV/OGG formats
- 3D audio spatialization
More information on https://www.harfang3d.com/