Skip to content
Stubble is a plugin for Autodesk Maya providing user-friendly virtual hairstyling, i.e., creation, editing, and animation of hair or fur on 3D models.
C++ C
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.


Type Name Latest commit message Commit time
Failed to load latest commit information.


Stubble is a plugin for Autodesk Maya providing user-friendly virtual hairstyling, i.e., creation, editing, and animation of hair or fur on 3D models. It is a student software project developed on Faculty of Mathematics and Physics, Charles University in Prague, managed by Computer Graphics Group - Charles University ( It is written mainly in C++ with bits of MEL scripting for proper Maya binding.

Main features

  • Low disk space footprint of the generated data at render time
  • Procedural hair generation and interpolation via editable guide hairs
  • Hair dynamics via Maya NURBS curves
  • Wide user control over the output using textures
  • Intuitive interface with real-life like tools, e.g., scissors or brush
  • Large variety of input devices, e.g., mouse, tablet, or a haptic device


The provided source code was built and tested using Microsoft Visual Studio 2010. It was run and tested in Maya 2011. However, it should run just fine under newer versions.

Third party software

To successfully build Stubble several third party software packages are needed which are not distributed with the source code. The solution is configured to look for them in the external directory one level above the solution directory or in the standard paths.

  • Autodesk Maya SDK - software development kit distributed along with Autodesk Maya located in the same location as maya.exe.
  • 3Delight Studio Pro (9.5 or higher) 64-bit (includes plug-in for Maya) - RenderMan-compliant rendering solution for Autodesk Maya available at with performance limited license.
  • Qt library 4.7 - user interface in Autodesk Maya is based on Qt UI framework, the framework is used mainly for mouse interaction features. Required version is 4.7 or newer. Available at
  • CHAI 3D 2.0.0 - CHAI 3D is an open source set of C++ libraries for computer haptics, visualization and interactive real-time simulation. Available at
  • libnoise 1.0.0 - A portable, open-source, coherent noise-generating library for C++. Available at
  • zlib 1.2.5 - Zlib is designed to be a free, general-purpose, legally unencumbered lossless data-compression library. Required version is 1.2.5 or newer. Available at
  • zipstream 1.0 - zipstream is c++ iostream wrapper for the zlib library. Available at
  • Wintab - Wintab is a graphics tablet software development kit available at
  • newmat 10 - Portable, open-source library for large matrix manipulations. Available at Probably the best choice to use without the need for platform optimized LAPACK and BLAS.
  • OpenGL 2.0 - basicaly the same version as used by Maya. Optimized version is provided by graphics card vendors. For more information see The code present in Stubble should be portable to newer OpenGL versions.
You can’t perform that action at this time.