There is a actually a lot of online resources, here is only a small selection.


  • This page contains fundamental OpenGL tutorials and notes.All example programs are written by C++ with Code::Blocks and Orwell Dev-C++, as well as makefiles for Linux and Mac.
  • A new OpenGL introduction that walks through the parts that are still relevant today.
  • Shadertoy is a great resources to experiment and learn fragment shaders.


  • The OpenGL Registry contains specifications, header files, and related documentation for OpenGL and related APIs including GLU, GLX, and WGL.
  • Quick reference for the built-in functions of the OpenGL ES Shading Language.
  • The Graphics Codex is an app for 3D graphics students, engineers, teachers, and artists. It provides consistent, correct, and easy-to-understand definitions for technical material.


Matplotlib:Matplotlib is a python 2D plotting library which produces publication quality figures in a variety of hardcopy formats and interactive environments across platforms. matplotlib can be used in python scripts, the python and ipython shell (ala MATLAB®* or Mathematica®†), web application servers, and six graphical user interface toolkits.
Vispy:Vispy is the sister project of glumpy. It is a high-performance interactive 2D/3D data visualization library. Vispy leverages the computational power of modern Graphics Processing Units (GPUs) through the OpenGL library to display very large datasets.
Bokeh:Bokeh is a Python interactive visualization library that targets modern web browsers for presentation. Its goal is to provide elegant, concise construction of novel graphics in the style of D3.js, but also deliver this capability with high-performance interactivity over very large or streaming datasets.
Seaborn:Seaborn is a library for making attractive and informative statistical graphics in Python. It is built on top of matplotlib and tightly integrated with the PyData stack, including support for numpy and pandas data structures and statistical routines from scipy and statsmodels.
Kivy:Kivy is an open source Python library for rapid development of applications that make use of innovative user interfaces, such as multi-touch apps

Scientific Articles