Implementing order-independent transparency