Welcome to SpiderGL official website

SpiderGL is a JavaScript Computer Graphics library aimed at developing CG applications for the web platform. It uses WebGL for real-time rendering.

The SpiderGL current version is 0.2.0. Get started visiting the tutorials and the download section.

The new SpiderGL website is now online!

Nov 2014

Discover all the latest news, the renewal layout and the new contents. Enjoy with its easy, intuitive and appealing navigation and… stay tuned, because the spider is back!

SpiderGL tutorials now available

Jan 2014

10 brand new tutorials have been provided in the specific section tutorials, in order to make possible to exploit the full potential of SpiderGL!

For each of the proposed examples (all based on the latest release of SpiderGL), has been supplied a page with an accurate explanation of the source code, a running demo of the realized application and a downloadable version of the sources.
The realized tutorials have been created with the aim to introduce how to code in the right way your 3D web application with our library, and have been designed in order to have increasing complexity and difficulty, touching at the same time every library components, so as to guide the reader step by step in the deeply of SpiderGL.

SpiderGL at Eurographics CG Libs Event

May 2013

Meet SpiderGL at the Eurographics CG Libs event!
The tutorial will be held by the library developers in June 5th 2013 in Pisa.
Have a look at the event programme and get ready!

The Spider is coming... again!

Mar 2012

After a very long time, a new version of the SpiderGL library is ready for preview on GitHub.
The library went under a deep development process that changed the exposed interface (sorry, no backward compatibility), but kept the baseline philosophy almost intact. A comprehensive description of the most important features can be found in a chapter of the OpenGL Insights book dedicated to SpiderGL.
Among the major differences, there are:

  • The WebGL context is hijacked on creation to inject custom SpiderGL extensions: direct state access, fast current object binding query, and wrapper notification
  • All WebGLObject wrappers are automatically kept in synch with their GL state, allowing seamless interoperability with native WebGL usage
  • Fast wrapping of existing native WebGLObjects makes integrating SpiderGL with other libraries easier
  • The new Model class drastically extends the old Mesh concept with a layered structure that can be accessed at different levels, trading flexibility with expressiveness
  • Integrating the Model with a Technique and a ModelRenderer ease the rendering process
  • The documentation is almost complete :)
At this time, there are only a couple of code examples in the git repository, but in the next week more of them will be added. In the next weeks this website will be completely rebuilt, integrating a blog-like section for fast updates and feedbacks.

The spider was not dead, it was capturing its preys.

HDR Texture demo

Aug 2010

Molecular Visualization using SpiderGL paper accepted at the Web3D 2010 Conference

Jul 2010

The full article can be downloaded from the Visual Computing Lab publications page.

SpiderGL paper accepted at the Web3D 2010 Conference

Jul 2010

The full article can be downloaded from the Visual Computing Lab publications page.

A shader authoring tool: MeShade

May 2010

Try it online or download the zipped archive (an HTTP server is needed).

Introducing SpiderGL

Dec 2009

SpiderGL is a JavaScript 3D Graphics library which relies on WebGL for realtime rendering.

SpiderGL provides typical structures and algorithms for realtime rendering to developers of 3D graphics web application, without forcing them to comply with some specific paradigm (i.e. it is not a scene graph) nor preventing low level access to the underlying WebGL graphics layer.

To start using SpiderGL visit the gallery and the download section.


MATH:Math routines, low/high level linear algebra functions and classes.
SPACE:Geometric structures and space-related classes and algorithms.
GL:Low/high level WebGL resources access, rendering.
MESH:Editable and renderable meshes, importers, rendering.
UI:User interface event handling, interactors.
DOM:JS/HTML utilities, asynchronous content loading.
Older Entries …