Want to know how to speed up your animation or VFX workflow? We spoke to the developers of NXT, an open-source tool that enables visualization and automation of complex scripts in a more user-friendly way for both developers and creatives alike.
In our recent webinar, Maxine Schnepf (CG Spectrum Career Development Manager) talked to Zack Gray (NXT Contributor), Lucas Brown and Michael Aldrich (NXT Developers), and Jeremy Chinn (CG Spectrum COO) on how to use NXT to increase efficiency in the animation and visual effects pipeline.
What is NXT - Node Execution Tree?
NXT is an open source tool for animation and visual effects. It provides access to the structure of the pipeline for those getting started and allows developers to think about their work in innovative ways.
Providing a visual map with its focus on layering, the software invites collaboration. It allows developers to set up the base process while creative teams can layer on top of them in their daily work processes. NXT brings order to the masses of coding for a project via nodes that are mapped into execution trees called graphs.
NXT compatibility with Houdini, Maya and Blender
NXT uses the Python integration system to import into Unreal. It also works with Nuke, Houdini, Maya, Blender, and USDs. The most common process that NXT is currently used for is rigging in Maya. Beta Unreal integration is available at the time of writing this, further support will come in future releases.
There are numerous debugging tools built into the software, so that stops can be put onto nodes. You can tell the software to build on a rig and then stop. There is a robust logging system so that you can spot errors in code easily. The storing and referencing system of NXT files is similar to the Maya sharing system.
Graphing visual effects and animation workflows
Other ways that NXT is being used is to collect commonly used scripts and utilities together on a layer, shot creation and publishing to USD (Universal Scene Descriptions), simulation web tools, full character rig builds, as well as publishing NXT itself. The main purpose of the program is to simplify workflows and create a visual bridge between artists and developers.
NXT graphs are saved as human-readable JSON files. There is currently no formal way of publishing or versioning the graphs, this is left up to the developers to customize for their projects. Code can be copied and pasted from nodes and shared for free. Backwards compatibility is built into the software to assist with version control.
NXT demo 1: Exporting animation from Maya to Unreal Engine
Exporting animation from one software to another is a basic function that many animators will be familiar with.
The NXT software automates the export from Maya and import into Unreal Engine 4. It reduces a series of processes that would normally take around 10 minutes - going through a sequence of clicks, checking that all is correct, and then exporting to Unreal and checking it has all come across seamlessly - into one action managed by the software. The import is done inside Unreal which, depending on the size of the file, can take seconds to create an FBX file.
It takes the collection of nodes that create the animation and allows Maya and Unreal to speak to each other. The software activates a simple string substitution called tokens that can resolve in real time. The file path is expanded and you can see exactly where your export is going to happen. It then exports without altering the elements of your animation and confirms that the Unreal file is ready.
How studios can use NXT to optimize visual effects and animation workflows
Studios are using tools such as NXT more and more to streamline complex and vital processes that will assist pipeline times.
One of the aims of the NXT developers was to create a tool that both artists and programmers would be comfortable with by offering coding using nodes or text.
The program simplifies what can be complex node structures into text coding that streamlines exporting in a user friendly way.
It also offers a variety of ways of managing the export based on the needs of the animation.
Node structures can be used as programming templates within the software, further short-cutting processes at a professional level. Coding for effects or solution can be saved as nodes for future use and added into export structures, creating a robust system of streamlined workflows.
Build your expertise using NXT
As your career progresses from junior positions into senior ones, your technical expertise will need to expand. For many supervisors, this will require knowing how to code, with most computer graphics operating in the middle ground between artist and technician.
NXT is designed for low-level pipeline processing, however it also allows artists to customize their own layers of shortcuts, fixes and styles, building a library of personalized processes.
Following this, these nodes can be developed as prototypes that artists can bring with them to studio jobs and pitch as assets that can assist entire teams. This allows for easier collaboration between team members.
Having advanced coding skills and the ability to come up with solutions makes you an asset to a team. You are more likely to be kept on longer if you can be a fixer working on the final stages of a project.
Creating functions that make it easier for the next person in the pipeline to do their job makes you a strong team player who employers will want to re-employ.
Studios will ask these kinds of questions in interviews, so be aware of your place in the pipeline and how you smooth the path for the next person. Studios are always managing pipeline blockages, and if you can prove you won’t be part of a block, but someone who clears the path forward, you will be viewed as an asset.
NXT demo 2: Complex graphs - Building a rig
The graph used in the demo shows the complexity of layering that studio-level exports would entail. It is an example of a biped humanoid rig built in NXT. Studios will build archetypes for various characters, such as a basic model for all biped characters which will be used for all characters on the project. New characters will be built from these basic rigs with variations added to diversify them.
The software allows for new customized code to be contained in nodes creating one central place where any changes can be made that will affect all the controls of the rig. This short cuts having to amend coding in various locations, centralizing it and making it easily accessible. It also assists with packaging and working with USD files. These can be complicated to work with and NXT is being layered over USDs to help with their complexity.
We hope this has given you some ideas about how to use NXT - Node Execution Tree to speed up your animation or visual effects workflow!
Want to learn other ways to speed up your animation or visual effects workflow?
What better way to learn how to become a better animator or visual effects artist than through expert career training and mentorship from industry professionals! CG Spectrum offers intensive courses that will help get you studio-ready faster. Check out our beginner to advanced training!