Buenash! Pues esto me está rompiendo la cabeza... a ver, funcionar funciona genial, pero trae muchos pequeños detalles que me encantaría solucionar.

Esa es la imagen. Fijáos en que tiene partes con alpha entre 0 y 1, intermedios. Hay una al fondo y una al frente.
Si primero dibujo la del fondo y luego la del frente todo va bien, pero si dibujo al revés... la del frente "se come" parte de la del fondo, y la del fondo aparece con una parte desaparecida al solaparlas. Ya intento dibujar en el orden correcto, pero sumado a que hay por todas partes y que tanto sus posiciones como la cámara pueden estar en cualquier parte, es complicadísimo, y siempre hay varios errores de éstos mientras que la otra mitad es correcto. ¿Alguna opción que pueda tocar por ahí para arreglarlo, viendo (CREO) que NO ES VIABLE dibujarlos TODOS en el orden correcto?

Di importancia al alpha, porque si el sprite sólo tiene alphas de 1 (opaco) y 0 (transparente) sin píxeles intermedios, entonces el error es mitigado, y en su lugar simplemente aparece un borde blanco alrededor del frontal (al dibujarlo antes que el del fondo). Molesta, pero menos. Y es necesario hacer alphas intermedias así que...
habrá, por todo el escenario 3D, MUCHOS de ellos, en posiciones cambiantes y la cámara se mueve constantemente, es imposible poder alterar el código para dibujar en orden de los más profundos a los más cercanos...

Esa es la imagen. Fijáos en que tiene partes con alpha entre 0 y 1, intermedios. Hay una al fondo y una al frente.
Si primero dibujo la del fondo y luego la del frente todo va bien, pero si dibujo al revés... la del frente "se come" parte de la del fondo, y la del fondo aparece con una parte desaparecida al solaparlas. Ya intento dibujar en el orden correcto, pero sumado a que hay por todas partes y que tanto sus posiciones como la cámara pueden estar en cualquier parte, es complicadísimo, y siempre hay varios errores de éstos mientras que la otra mitad es correcto. ¿Alguna opción que pueda tocar por ahí para arreglarlo, viendo (CREO) que NO ES VIABLE dibujarlos TODOS en el orden correcto?

Di importancia al alpha, porque si el sprite sólo tiene alphas de 1 (opaco) y 0 (transparente) sin píxeles intermedios, entonces el error es mitigado, y en su lugar simplemente aparece un borde blanco alrededor del frontal (al dibujarlo antes que el del fondo). Molesta, pero menos. Y es necesario hacer alphas intermedias así que...
habrá, por todo el escenario 3D, MUCHOS de ellos, en posiciones cambiantes y la cámara se mueve constantemente, es imposible poder alterar el código para dibujar en orden de los más profundos a los más cercanos...