[![Build Status](https://drone.deadbeef.codes/api/badges/steven/cyclescaler/status.svg)](https://drone.deadbeef.codes/steven/cyclescaler)

## Cyclescaler

Containerized, distributed blender rendering - cloud-native alternative to Blender's network based rendering.   

Cyclescaler is an easily scalable rendering system for the Cycles 3D rendering engine built into Blender.  It's incredibly easy to spin up instances on all platforms which support containers including all the good cloud providers.  You can also easily run it on premises with a Kubernetes cluster or as standalone containers with docker-compose (examples provided).  It's built on the following technologies:

* The Go Programming Language - https://golang.org/
* Docker - https://www.docker.com/
* Blender - https://www.blender.org/
* Drone CICD - https://drone.io/
* Semantic UI - https://semantic-ui.com/
* jQuery - https://jquery.com/
* ~~Some crap web framework~~ no frameworks, who the hell needs a framework when you're a lone developer

The project is broken into two parts:

* Master - This can be thought of as the server, it's the portal that users interact with to upload .blend files and tweak render parameters.
* Slave - This can be thought of as a client, and it handles rendering the images which get stitched together to create an animation.  There can be as many instances of the slave as you want, the more slaves, the more simultaneous

![alt text][logo]

[logo]: https://deadbeef.codes/steven/cyclescaler/raw/master/example.png "Rendering using Google Cloud Platform."

