This repository serves as a starting point for Nuke plugin development. It has everything set-up so you can start right away with developing (using dev containers).
Additionally, it includes a CI/CD pipeline for building Nuke plugins for Linux, MacOS and Windows.
Just fork, clone or download and start :)
Install:
Then get the Dev Containers extension from Microsoft.
If you prefer IntelliJ, that should also be possible: IntelliJ Docs
For an extended guide on how to use this and getting started, visit my blog:
CMakeLists.txt
has been setup to build the Multiply node. It will build to the build
folder (or what you've specified) and write inside there to the lib
folder. (/build/lib/Multiply.(dll | .so)
)
It includes a setup for Development Containers.
The images used are from my other repository NukeDockerBuild and include all necessary dependencies and installations. For more info, check out that repository. These images will be automatically generated based on all available Nuke versions.
These images are built for the purpose so that you don't have to install anything yourself. (GCC, Nuke, OpenGL lib's etc.)
Within the devcontainer.json
you can specify which Nuke version you would like to use for developing.
This can be done by altering the NUKE_VERSION
argument. By default it is 15.0
, but it can be anything that is currently available starting from 13.0+.
"build": {
"dockerfile": "Dockerfile",
"args": {
"NUKE_VERSION": "15.0"
}
}
Also here is where you can specify additional extensions needed for your development environment. By default everything is included for C++ based development.
If you need anything to be set-up additionally, you can alter the Dockerfiles that are in the same folder with instructions you do need. By default it installs git
.
When you open the devcontainer in VSCode, you will be prompted with the environment you'd like to create. The options are: linux
, macos-x86
and macos-arm
. This will be the environment where you'd build your plugins locally to.
If you use the MacOS options, make sure you’ve read and understood the Xcode license agreement.
And by using the containers, you will also agree to the Foundry EULA.
It includes an automatic build pipeline for both Linux and Windows using Github Actions. This serves as a starting point and could be optimized by for example only building Windows on a tag change. The config for this file can be found at .github/workflows/build.yaml
Have fun developing! 🛠️