So this is a deep question as you’re getting into packaging and deployment territory.
rez is a project that has been embraced by a lot of VFX teams, and I’ve been seeing some uptick in usage for games as well.
While the devil is in the details (and there are a lot of devils, and detials) at a high level you need a few things.
- Some method of making your code available to your users.
a) Network share
b) Pulled from source control
c) Pushed by a build machine
- Some method of defining an environment that takes advantage of your code.
a) Shell script to define environment before launching an app
b) Launcher application to define proper environment for your app.
Sometimes you can combine both of these things, have your launcher also act as an update service that pulls new builds and launches the program.
Some applications make this easier than other, Maya has both the
Maya.env file, and its module system for packaging plugins / scripts with a predefined environment.
Houdini also has
houdini.env which works similar to Maya’s, I don’t believe it has something like the module system (which is a shame).
Max, I’ve got no idea, that app is still a bit of mystery to me.
But basically each tool has its own quirks and oddities, and covering all those bases all the time is hard.
So as you go down this road, start simple, and be prepared to throw it all away once you’ve learned some lessons on what works for you and your team.
Also, this forum is full of some past topics on this so poke around, and don’t be afraid to ask questions, we’re here to help.