Home | Tools | Building Shake Plugins

Building for Shake

Introduction

While scripting macros in Shake provides a powerful way to encapsulate commonly used node chains, it may be necessary at times to extend the core functionality of Shake. For instance, users may require accumulation buffers, advanced key selection tools, or automatic color matching nodes. With these tools, it is often necessary to edit source footage on a per pixel basis and also access external memory. This requires using the Shake SDK to build new c++ libraries which Shake can understand. This document gives a quick overview of the process of building a shake library on linux using gcc.

Process Overview

Creating a Shake library requires several steps.

SDK Documentation

At SCAD, the Shake SDK lives at: /usr/shake/sdk/
The documentation for the SDK is contained in: /usr/shake/sdk/doc
You should also take a look at the following file for an explanation of linking plugins: /usr/shake/sdk/plugin/plugin.cpp

Files

The following files contain all that you will need to create a very simple dialog plugin. Note that you will have to edit the makefile to make sure that all of the directory paths are correct for where your files are stored.

Example Makefile
Example Source File
Example Export Header File

Resources

Some helpful links for those new to gcc and make.
GCC Online Documentation
Linux GCC Tutorial
Makefile Tutorial