prima volta qui. Sedendosi oggi e insegnando a me stesso OpenGL. Ma ho trovato una domanda a cui non riesco a trovare risposta. Mi chiedo perché il test di profondità sembra essere incompatibile con oggetti semi-trasparenti in OpenGL. La documentazione sembra suggerire che è necessario disattivare i test di profondità, quindi disegnare oggetti in ordine inverso e la fusione funzionerà correttamente.Test Z-Depth in OpenGL
Ma perché openGL non può usare solo lo stesso test di profondità che fa sempre per capire cosa c'è di più indietro nell'ordine inverso e farlo per te? È solo una limitazione del framework, o è qualcosa a che fare con ciò che puoi fare efficientemente nell'hardware grafico, o qualcosa del genere?
Solo chiedendo. Spero che qualcuno qui possa chiarire.
Mi chiedo perché questo è stato up-votato, dal momento che se si utilizzava OpenGL come suggerisce, tutto ciò che viene disegnato dopo l'oggetto trasparente ma dietro, occulterebbe completamente l'oggetto trasparente, chiaramente non inteso. – Blindy
Questo è il punto - si disegna il materiale trasparente per ultimo, con il test di profondità abilitato ma la scrittura in profondità disabilitata. In questo modo le cose trasparenti sono ancora occluse da cose opache che si trovano di fronte. –
Si disegnano gli oggetti trasparenti per ultimi, di nuovo in primo piano. Immaginavo che lo sapesse già, dal momento che ha menzionato l'ordine inverso e mi chiedeva del buffering z. – David