GithubHelp home page GithubHelp logo

isabella232 / cyclecloud-blender Goto Github PK

View Code? Open in Web Editor NEW

This project forked from azure/cyclecloud-blender

0.0 0.0 0.0 54 KB

CycleCloud project to enable running the Blender animation software on Azure CycleCloud HPC clusters.

License: MIT License

HTML 15.11% Shell 84.89%

cyclecloud-blender's Introduction

Blender

This project installs and configures the Blender 3D Rendering toolkit for batch rendering. It includes an example cluster template which installs Blender alongside SGE.

See Blender for details and documentation.

NOTE This project does not yet include a VDI client for the Blender UI.

Table of Contents

Pre-Requisites

This sample requires the following:

  1. The Blender installation binaries for Linux

    a. Download the binaries from Blender Downloads and place them in the ./blobs/ directory. b. If the version is not 2.79b (the project default), then update the version number in the Files list in ./project.ini and in the cluster template: ./templates/blender.txt

  2. CycleCloud must be installed and running.

    a. If this is not the case, see the CycleCloud QuickStart Guide for assistance.

  3. The CycleCloud CLI must be installed and configured for use.

  4. You must have access to log in to CycleCloud.

  5. You must have access to upload data and launch instances in your chosen Cloud Provider account.

  6. You must have access to a configured CycleCloud "Locker" for Project Storage (Cluster-Init and Chef).

  7. Optional: To use the cyclecloud project upload <locker> command, you must have a Pogo configuration file set up with write-access to your locker.

    a. You may use your preferred tool to interact with your storage "Locker" instead.

Configuring the Project

The first step is to configure the project for use with your storage locker:

  1. Open a terminal session with the CycleCloud CLI enabled.

  2. Switch to the blender directory.

  3. Copy the installer to ./blobs * blender-2.79b-linux-glibc219-x86_64.tar.bz2

  4. If the version number is not 2.79b, update the version numbers in project.ini and templates/blender.txt

Deploying the Project

To upload the project (including any local changes) to your target locker, run the cyclecloud project upload command from the project directory. The expected output looks like this:

   $ cyclecloud project upload my_locker
   Sync completed!

IMPORTANT

For the upload to succeed, you must have a valid Pogo configuration for your target Locker.

Importing the Sample SGE Cluster Template

To import the cluster:

  1. Open a terminal session with the CycleCloud CLI enabled.

  2. Switch to the Blender directory.

  3. Run cyclecloud import_template sge-blender -f templates/blender.txt. The expected output looks like this:

    $ cyclecloud import_template SGE-Blender -f templates/blender.txt
    Importing template SGE-Blender....
    ------------------------
    SGE-Blender : *template*
    ------------------------
    Keypair: $Keypair
    Cluster nodes:
        master: off
    Total nodes: 1

Running the Demos

The project includes several Blender demo scripts.

To use the demos, first download the 3 demos from the Blender project site:

Stage the downloaded .zip files in the blobs/examples directory, then re-upload the project.

Next, launch the SGE-Blender cluster and wait for it to converge.

Once the cluster is up and ready, log in and stage the examples using the fetch scripts:

$ cyclecloud connect -c blender master
~$ sudo su -
~# cd /mnt/cluster-init/blender/default/files/examples/
~# for SAMPLE in benchmark  classroom  pabellon; do pushd $SAMPLE; ./fetch_sample.sh; popd; done

That will stage the data files in the /data directory. Each example contains a pipeline submission script : submit_pipeline.sh which submits a simple animation pipeline. For example, to render the classroom example:

$ sudo su - cluster.user
cluster.user:~$ cd /data/classroom/
cluster.user:/data/classroom$ bash -x submit_pipeline.sh

Each example submits a basic 2-stage pipeline:

  1. Render frames
  2. Convert Frames to mp4

Contributing

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.

When you submit a pull request, a CLA-bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.

cyclecloud-blender's People

Contributors

bwatrous avatar dpwatrous avatar microsoftopensource avatar staer avatar atomic-penguin avatar msftgits avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.