Hi @Anonymous
How long time do you have?? 😉
The short vesion is that XSI has a much more sleek, intuitive, consistent, non-linear and generally more powerful interface that makes most work a lot faster than in Maya, but it would not be very helpful without examples, so here goes:
I know that even both apps are very similar in capabilities they have a very different design and one needs to adapt a new workflow to some (a large) degree to use one or the other. I mention this because I do understand I can't expect Maya to work like XSI. I should also mention I have learned many different applications over the years and generally enjoy learning new tools that give me more capabilities. Unfortunately the experience with Maya is like being forced to move several steps down the ladder...
This said, there are many profound differences, the main one being that the XSI developers managed to create an extremely streamlined, intuitive, easy to use and fast platform that presents users with a plethora of options rather than limitations, all to provide flexibility. It is very consistent across the interface (which Maya is not) and everything is created from the bottom up to work as transparent and effortless as possible, so for instance radically different modules/functionalities share the same UI paradigm and are generally very stable. In contrast Maya shows its age
and appear as a patchwork of poorly implemented bandaids. A simple example would be how numerical boxes in Maya act differently to the usage of punctuations and commas... In XSI it doesn't matter and you can do math directly in the numerical box which forces me out of Maya again and again to use a Windows calculator - dooh
All in all it means I work considerably faster in XSI than in Maya because there is less hassle and much more flexibility.
More specificly on functionality:
Operator stack:
- XSI has a very comprehensive operator stack which allows transparent, non-linear editing of earlier applied operators without breaking anything unless you break simple logic like vertex count before ops that depend on component selections.. This only works to some degree in Maya, where I find myself forced to work in one or very few ways to achieve something specific.
Construction modes:
- XSI has a concept which is missing altogether in Maya, Construction Modes. There are 5 Construction Modes - Modeling Construction Mode, Shape Modeling Mode, Animation Mode and Secondary Shape Mode. Each allows relevant individual operator stacks to be stored. Basically they are evaluated sequentially, meaning the first Construction Mode: Modeling has all operators evaluated before Shape Modeling which is fully evaluated before
Animation etc. What this means is for instance that I can have a fully rigged and animated character. If the client want modeling changes or something that requires rigging changes, all I have to do is to go to the relevant Construction Mode, make the changes and off we go, everyting works with changes propagated. So I can add geometric detail to the model, weighting on the rig is propagated, any weightmaps (scalar per vertex
data used to drive anything) applied will propagate, so no surprises when I go back to evaluation of all Construction Modes - the rigging and animation are intact and I can get on with the next item at hand. Try that in Maya...
Generally making geometry changes in XSI propagates with interpolation to UV's, skinning weightmaps, scalar vertexmaps etc without a hitch - not common in Maya.
The Explorer - Outliner on steroids:
The XSI Explorer is the equivalent of the Outliner but provides uncluttered access to everything on any object. I can inspect any object, see which operators are applied where, in which sequence and in which Construction Mode, and open any attribute or operator directly from the explorer. Beats flipping through tabs of attributes in the AE trying to find the relevant one by a large margin. Also I can open as many Explorers in different viewmodes or scrolled to different content as I want, making tasks like multiple contraint operations (rigging) easy and transparent. I hate
constraining more than a few objects in Maya at a time - you easily loose overview.
Hypershade:
A massively slow, bloated piece of crap interface. This is where I probably waste most of my time compared to when I was working in XSI. The Hypershade takes ages to open if you have production scene amount of shaders, and I have numerous freezes and crashes when working with it.
The nodes have inconsistently colorcoded in/output ports and data conversion is not done automatically like in XSI forcing me to either find the right conversion tool, or sometimes expand RGB ports and plug into or out of three ports when one port could do it (like in XSI).
Shadernetworks rearrange and autoarrange horribly with crossed connections and there is no way to preserve a particular shader network layout (how the nodes and connections are layed out. This is standard in XSI. Also when copying a shader node branch, it often gets positioned atop existing shader networks, and then I need to drag every node separately. In XSI I can middle click the rightmost node and move the entire branch.
In XSI I can select an object and hit 7 key which instantly opens the Render Tree (shadernetwork UI) for that material only (which is why it is fast) - extremely fast and much easier to ensure I am editing the right shader.
In the Hypershade, when I want to add a new node, I click it and it appears where Maya deems sensible so I have to go look for it or dig it out of existing shadernetworks - in XSI I drag it in and position it where I need it, and it will autoconnect if I drag it on top of a node connection. In XSI if I want to connect a scalar node to an RGB port, or vice versa, XSI automatically inserts a conversion node... saving time and frustrations again.
Screen estate:
Mayas UI layout is wasting oodles of space on insignificant things which basically means it sort of requires a dual screen setup to work effectively. XSI has optimized the content and size of property pages (XSI name for attributes sort of) and you can open them all floating at will and move them where you want, contract and expand as required and generally position them so they are not in the way of what you are doing in your viewport. In Maya with one screen only, I have to keep moving windows around that are too big for the content they display, obscuring my view and slowing me down.
The very annoying one - converting SRT to Motion Path:
In XSI I can directly convert SRT animation to identical Motion Path animation (Path animation in XSI) and back. This means I can do very complex editing of for instance 3D tracked cameras. If I want to keep the speed intact but remove minor kinks/noise in the position, this is possible by editing the Motion path (curve) without affecting the speed. If I at some point want to change speed along the curve, I can do so subsequently. If I for some reason need world space coordinates again, I can convert back to SRT. I have yet to find any tools in Maya (including search for scripts) that can do any of this. For some things, and especially for fine editing of 3D tracking data, this is an indispensable and simple tool set. It is also the only ay I know of to speed ramp a camera without affecting its flight path.
ICE:
This is almost too much to explain, but basically a point and data manipulation tool that works very much like Houdini. Particles, hair/fur, fluids (volumetric and water), surface deformation, procedural modeling, various simulation, motion graphics, you name it. All wrapped up in a non linear consistent node based UI whch is multithreaded and fast. I have used it on pretty much every production for the past 6-8 years until I had to switch
to Maya, and it is sorely missed. A tool like MASH can handle some of the functionality ICE provides, but MASH is like a black box made to specific tasks compared to ICE, and while powerful, MASH is inconsistent and a bit clumsy for particular things, especially large scattering tasks.
Render Setups - Render Passes i XSI:
XSI had Render Passes with comprehensive overrides since at least 2006 - we are talking more than 13 years. Render Setups in Maya since 2017 looks like a very similar implementation and is a huge step forward from the legacy Render Layers, but still a bit clunky and a bad biggie is you can create overrrides on objects that are already overridden, leaving it to Maya evaluation order (i guess) to figure out which override to use - bad practice!
Graph Editor:
Bad, clumsy and slow handle manipulation. In Maya if I want to edit a function curve (graph) freely as in drag the handle to the length I want to get the desired curve, I first have to select the curve, go to menu curves and and schange the tangent weight, then right click and free tangent length before being able to drag the handle longer or shorter. The tangent on the opposite side of the key will scale accordingly despite what I need, and in order to avoid that I have to break tangency, which I don't want. It is a horribly clumsy and click/time consuming proces to edit
graphs in a comprehensive way in Maya. I loathe it. In XSI I can drag one handle as I please, lock it if I need it, enter numerical values for its length and angle independantly for each side if I want - total freedom directly accessible.
Expressions linking parameters:
Drag and drop in Softimage - need I say more. I open the parameter I want to drive, and the parameter I want driven, drag and drop the driver paramter on the driven, and an expression link is created. Right click on it and I can edit the expression for more control. Easy, comprehensible, fast and simple.
Constraint, expression evaluation sucks:
I once had to set up a rather complex wheel suspension rig, wishbonestyle, with interlocked arms and joints and shock absorbers. I managed to get it working and could see it function in my playblasts, but when rendering they came apart, and upon opening the scene again, they had fallen apart, with some obscure offset in some of the contraints, but not all.
I was fairly new to Maya at the time, and consulted our Maya artists, who had little clue but said, fix it and bake the animation before rendering. It looked like an evaluation order thing, which broke the system, but neither I nor the other Maya artists were able to find a solution.
Needless to say this is cumbersome, timeconsuming, not non-linear, and generally unsatifsfactory to not have a working functioning suspension rig.
The exact same setup in XSI (where I had workbenchhed it) worked flawlessly. Obviously this is likely down to my lack of knowledge of Maya constraints, but very frustrating.
The Animation Mixer - Trax on Steroids:
Softimage invented the concept of Trax - in XSI Animation Mixer, with more powerful tools and flexibility than Trax.
(these are words from an XSI/Maya TD's - honestly I have no experience with Trax yet, but have used The Animation Mixer extensively.
My experience after 2+ years of working with Maya is that it is clumsy, slow, cumbersome, unintuitive and flawed. A lot of functionality requires some 50% more interactions of the user than in XSI which translates directly into waste of time. And I do know about the hotbox. DCC switching TD's and artists generally mention a 25-50% slowdown when working in Maya vs XSI and it translates into having seen impressive productions done with minimal staff in XSI which would usually require many more hands in a Maya centric pipeline.
On the plus side (after 2+ years): Good modeling tools (although lacking comprehensive op stack & construction modes), good UV tools, sharing shader nodes.
That's it....