About Distriblend

The Client application running on Windows

Distriblend is a Java application designed to set up and manage a renderfarm for Blender. It is written in Java and as such the Java Runtime Environment is required. Other than having Blender installed, this is the only requirement for creating a renderfarm with Distriblend.

The system works on a variety of platforms - wherever Java may be installed. It has been mainly tested on Windows but has been used by many on Linux and other platforms.

Download Now

The latest release of Distriblend is available from the download page now.

Distriblend is licensed under the GNU General Public Licence. You are free to use the software as you wish at no cost, provided you give proper credit to the authors and license any derivative works under the same or later version of the GPL.

How It Works

There are three components to the Distriblend system.

The Client
A user friendly application for submitting your projects to the renderfarm.
The Distributor
The main server. This application accepts connections from the Client and organises file and task distribution for each Node.
Each node connects itself to the Distributor and when free, requests the next task to run. When a set of files is needed to complete a task, these are also requested from the Distributor.


Both the Distributor and Node applications implement a storage system for maintaining project files. The root directory of the storage structure is configured in the respective *.conf file. The applications must have permission to read, write, delete and create sub-directories here.

The Distributor holds the following file structure.

[Distributor storage root]As chosen in the distributor.conf file
[User name 1] 
[Project name 1] 
archive_0000.dataHolds a raw dump of uploaded file data
archive_0000.indexIndexes the raw dump
[Source file 1].blendDirectory of output frames
 task_0000.taskJava task object
[Project name 2] 
user.pwdHashed user password file
[User name 2] 

Each Node maintains a file structure similar to the following.

[Node storage root] 
[User name]Only one project from one user is kept by a node for processing, the directory structure is here to allow a new project to be uploaded before the previous one is removed
 [Project name]
  [Uploaded directory structure]Holds the expanded data files received from the Distributor
   ...The source .blend file will be found somewhere here
  [Source file 1].blend 
  0001.pngFrames appear here as they are rendered
  [Source file 2].blendMultiple files may be rendered by a task
   archive_0000.indexA copy of the index file to maintain dependency information

Note: A user or project directory is only removed when a new user or project (respectively) is uploaded for processing. When shutdown, a Node will have the last project it was handling in its storage directories.

When saving rendered frames with the Client, the following structure is created in the chosen directory.

[Chosen save directory] 
[Source file 1].blend 
0001.pngSaving multiple projects to the same directory will overwrite or add files as needed
[Source file 2].blendDifferent source files create different output folders

Icon set: Silk Icons © Copyright Mark James, under Creative Commons Attribution License.
Design: © Copyright 2008, Ian Thompson, under Creative Commons Attribution License.

Hosted by Logo see the project page.