Skip to content
yet another C++ port of three.js, based on r86+
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
3rdparty/tinyxml2 got windows to build (static libs only ATP) May 31, 2018
etc preparing for android Nov 16, 2018
examples more cosmetics Apr 4, 2019
threepp more cleanup in windows build Apr 6, 2019
.gitignore perspective helper displays, stabilized animation Mar 3, 2018
CMakeLists.txt removed react3d, added hinge functions + example Dec 14, 2018
LICENSE Initial commit Jul 28, 2017 quick::Materials all refactored Feb 2, 2019


C++ port of Three.js, based on Three.js r86+ and a few of the Qt framework's OpenGL classes

Three::pp can be used directly as a C++ API that parallels Three.js's Javascript, or through the extensive QML (aka QtQuick) integration. The examples are mostly in QML

For the plain C++ API, a slight dependency on Qt remains (mostly convenience classes like QImage and OpenGLFunctions) which could be removed with limited effort.

Currently in beta state. A number of examples demonstrate the functionality. Buildable under Linux/gcc 8.2, Android (API 24, currently only arm64-v8a) and sometimes even under Windows.

Contributors welcome

Some Samples (more in the code base)

simple geometries with ambient light, spot light and shade:

example 1

Environment Maps

example 2

Model loading (3DS model through Assimp) and postprocessing (apply environment map)

example 2

You can’t perform that action at this time.