Update appleseed's CMake build infrastructure, CI/CD scripting, and plugins. Generate new up-to-date releases automatically.
Details
The appleseed physically-based renderer needs a variety of infrastructure updates made to its CMake build system and CI/CD release infrastructure so that updated release binaries are created and published automatically. Appleseed leverages a number of 3rd-party dependencies such as Ilmbase, Python, and OSL, and appleseed's CMake build logic and source code requires changes to support more modern versions of all of them while adhering to the VFX Reference Platform. Updating the embedded Python from version 2 to version 3 will require specific attention.
This project also includes setting up build and integration testing so that appleseed's integrations (e.g., Maya plugin, Blender plugin, etc) are also updated automatically. Plugin and regular appleseed release builds need to be integrated with existing CI/CD shell scripting logic and GitHub Actions integration.
Appleseed is an advanced rendering system used by a number of other open source projects including BRL-CAD, Gaffer, and Blender as well as plugin integrations for Maya and 3DSMax.
updates via GitHub Actions and/or appleseed's other CI/CD infrastructure to run integration and deployment testing,
scripting that produces updated source and binary releases for appleseed,
updated plugins (minimally Blender and others where accessible).
Future Possibilities
Make your own suggestions... e.g., there are lots of outstanding patches that would be great to integrate once CI/CD infrastructure testing is up and running.
Outline
Update appleseed's CMake build infrastructure, CI/CD scripting, and plugins. Generate new up-to-date releases automatically.
Details
The appleseed physically-based renderer needs a variety of infrastructure updates made to its CMake build system and CI/CD release infrastructure so that updated release binaries are created and published automatically. Appleseed leverages a number of 3rd-party dependencies such as Ilmbase, Python, and OSL, and appleseed's CMake build logic and source code requires changes to support more modern versions of all of them while adhering to the VFX Reference Platform. Updating the embedded Python from version 2 to version 3 will require specific attention.
This project also includes setting up build and integration testing so that appleseed's integrations (e.g., Maya plugin, Blender plugin, etc) are also updated automatically. Plugin and regular appleseed release builds need to be integrated with existing CI/CD shell scripting logic and GitHub Actions integration.
Appleseed is an advanced rendering system used by a number of other open source projects including BRL-CAD, Gaffer, and Blender as well as plugin integrations for Maya and 3DSMax.
Expected Outcome
Expected outcomes are:
Future Possibilities
Make your own suggestions... e.g., there are lots of outstanding patches that would be great to integrate once CI/CD infrastructure testing is up and running.
Project Properties
Skills
CMake, C/C++, Python, Shell scripting
Difficulty
Easy
Size
long (350h)
Additional Information