Tradicionalmente (según entiendo, puede que me equivoque) los shaders son usados para determinar como interactúa la luz con la superficie del objeto y sus propiedades, pero en mental ray ese concepto se extiende para hacer a todos los aspectos del renderizado personalizable y programable. En mental ray, un shader es una función que calcula los efectos de la luz, estos pueden ser shaders de luces, cámaras (lente), materiales, sombras, etc.
En la otra esquina están los materiales que es el que alberga la serie de shaders que definen el comportamiento en la superficie, sombras, fotones, etc. Son un complemento.
En max si hay shaders y materiales (al igual que en todos los programas), suponiendo que no usamos mental ray en max (porque con mental ray es lo mismo que en XSI) se usa el concepto más tradicional, es decir los shaders son el clásico phong, blinn, etc que sólo definen el comportamiento de la superficie frente a la luz (creando el brillo especular). Todo lo demás es bajo una estructura fija del programa (que tiene opciones y todo pero no tenemos muchas posibilidades de salirnos de eso).
Son tan buenos en mental ray (ya sea bajo Maya, XSI o 3dsmax) porque te permiten personalizar todos los aspectos del render, además cualquiera con los conocimientos necesarios puede programar un shader y agregarle nuevas funcionalidades al motor que satisfagan sus necesidades (en otros motores el esquema es mucho más rígido), en ese sentido es mucho más abierto que otros motores y permite hacer que el motor se adapte a uno y sus necesidades y no al revés.
Salu2