Polycode is a C++ and Lua framework for building interactive applications. The program provides scene rendering in 2D and 3D via its entity-based scene graph. Though direct access to the renderer is always available, most of Polycode's strength comes from its automatic management and rendering of scene entities. Polycode's material system allows you to define shader-based materials and multi-pass post-processing filters. You can define materials in XML files which you can visually edit in the Polycode IDE or create manually in code. The utility can import meshes and skeletal animation from a variety of different file types to its native mesh, skeleton, and animation formats. The app supports sound playback from WAV and Ogg formats and custom audio data buffers, as well as sound recording from sytem's sound input devices. It supports full keyboard, mouse and joystick/gamepad input.