Estou escrevendo um sistema de partículas e gostaria de encontrar um truque para obter uma mistura alfa adequada sem classificar as partículas porque:
- Cada partícula é um sprite de ponto em uma única malha e não posso usar a capacidade do gráfico de cena para classificar nós transparentes. O nó do sistema deve ser classificado corretamente, no entanto.
- A posição das partículas é calculada no shader a partir da velocidade inicial, aceleração e tempo. Para classificar o sistema, eu teria que executar todos esses cálculos na CPU, o que é algo que eu quero evitar.
- Classificar centenas de partículas em relação à posição da câmera e carregá-las na GPU, cada quadro é costurado para uma operação silenciosa e pesada.
O teste alfa parece ser rápido o suficiente no GLES 2.0 e funciona bem para texturas não transparentes, mas "mascaradas". Ainda assim, não é suficiente para partículas semi-transparentes.
Como você lidaria com isto?