scene.change(nombre, { transition: fade(300) }): una opción más en la llamada de siempre, y sin ella el cambio es el corte seco de siempre. Haz clic para pasar de una sala a otra, recorriendo las que vienen de serie.
El shader es la mitad fácil. Lo que tiene que resolver el motor es que la escena que entra exista sin verse, sin actualizarse y sin recibir clics hasta que la pantalla está tapada, y que el cambio espere a lo último que termine, la tapa o la carga. Así una transición esconde el corte y la carga, que es para lo que siempre sirvió una pantalla negra entre dos niveles.