Here be dragons

Hic sunt dracones.

This repository contains multiple implementations of the same 3D scene, using different APIs and frameworks on various platforms. The goal is to provide a comparison between multiple rendering methods. This is inherently biased due to the variety of algorithms used and available CPU/GPU configurations, but can hopefully still provide interesting insights on 3D rendering. You can check a video of all current versions runnning here (Youtube)

The following versions are currently available:

The following versions are (tentatively) planned:

  • DirectX (11 or 12), OpenGL ES
  • other console hardwares
  • another raytracing approach

In the directory of each version, one can find the source code, the corresponding resources (as each method has its own format/quality constraints), along with a readme describing the method and a few examples.


The scene is composed of four main elements:

  • a plane representing the ground, with a pavement texture.
  • a dragon (the Stanford dragon).
  • a monkey head ('Suzanne') rotating around its vertical axis.
  • a skybox surrounding the scene, textured with a cloudy sky.

Additionally, the sun is simulated by using a directional light, and the camera should be able to rotate around the scene. The initial 3D models and textures are contained in the opengl/resources directory.

Other implementations

Here you can find implementations using some of the above APIs combined with other programming languages, submitted by awesome people!


A basic 3D scene implemented with various engines, frameworks or APIs.

Herebedragons Info

⭐ Stars 1623
🔗 Homepage
🔗 Source Code
🕒 Last Update 8 months ago
🕒 Created 6 years ago
🐞 Open Issues 6
➗ Star-Issue Ratio 271
😎 Author kosua20