Version

The following tutorials demonstrate usage of the Harfang API. A complete archive of the tutorials and their associated datas can be downloaded from GitHub.

Note: If you are new to Harfang you should start with the Plus tutorials first. Plus is a high-level wrapper around the complete Harfang API designed for rapid prototyping.

Qt

TitleGoalLevelDurationLanguage
Qt integrationControl an embedded harfang viewIntermediate20 minPython

Picture

TitleGoalLevelDurationLanguage
Create pictureCreate a pictureBeginner5 minPython
Load pictureLoad a pictureBeginner5 minPython
Draw to pictureVectorial drawing to a pictureBeginner10 minPython
Blit pictureBlit from a picture to a pictureBeginner5 minPython
Save pictureSave a pictureBeginner5 minPython
Write text to pictureWriting text to a pictureBeginner5 minPython

Audio

TitleGoalLevelDurationLanguage
Stream sound asyncStream an audio file from the filesystemIntermediate10 minAll
Play soundPlay an audio file from the filesystemBeginner5 minAll
Audio file to PCMConvert an audio file to a PCM fileBeginner5 minAll
Stream soundStream an audio file from the filesystemBeginner5 minAll

Filesystem

TitleGoalLevelDurationLanguage
Access fileAccess to the file systemBeginner5 minAll
Access ArchiveAccess archive contentIntermediate5 minAll
Sandbox fileSand-boxed access to the file systemIntermediate5 minAll
Mount pointsAccess to the file system through mount pointsIntermediate15 minAll

Renderer

TitleGoalLevelDurationLanguage
Draw to textureDraw to a texture using the rendererAdvanced15 minAll
Draw triangleDraw a triangle using the rendererAdvanced20 minAll
Open rendererCreate and initialize the rendererBeginner5 minAll

Movie

TitleGoalLevelDurationLanguage
Play a moviePlay a movieIntermediate30 minAll

Input system

TitleGoalLevelDurationLanguage
List devicesList input devicesBeginner5 minPython
Read mouseRead values from the mouse deviceBeginner5 minPython
Game controllerRead values from a game controllerBeginner5 minPython
Read keyboardRead values from the keyboard deviceBeginner5 minPython

RenderSystem

TitleGoalLevelDurationLanguage
Isometric projectionDisplay a scene using isometric projectionIntermediate15 minPython
Draw triangleDraw a triangle using the render systemIntermediate10 minPython

Plus

TitleGoalLevelDurationLanguage
2D MixedDraw ordered 2D elementsBeginner5 minAll
2D LineDraw a 2D line using PlusBeginner5 minAll
2D SpriteDraw 2D spritesBeginner5 minAll
2D TriangleDraw a 2D triangle using PlusBeginner5 minAll
2D PlotDraw a 2D plot using PlusBeginner5 minAll
Basic loopBasic render loopBeginner5 minAll
2D GeometryDraw immediate 2D geometryBeginner5 minAll
2D TextDraw 2D textBeginner5 minAll
SceneSetup a 3D sceneBeginner10 minAll
3D GeometryDraw immediate 3D geometryBeginner5 minAll

Log

TitleGoalLevelDurationLanguage
LogHooking the engine log systemBeginner5 minPython