1. A computer-implemented method comprising: receiving, by a computer, a plurality of objects, each object in the plurality of objects being depth-ordered; partitioning, by the computer, the plurality of objects into groups of two or more objects, each pair of objects in a group of objects sharing a common edge, each group of objects being depth-ordered based on the depth of an object in the group; and rendering, by the computer, from back to front, each group of objects into a plurality of pixels, each pixel in the plurality of pixels having a respective color value, the rendering including: selecting a group of objects from the groups of objects; determining respective first alpha values for first pixels in the plurality of pixels based on coverage of the first pixels by objects in the selected group of objects; attenuating the respective color value of each of the first pixels based on the respective first alpha values; and rendering each object in the selected group of objects, including: selecting an object from the selected group of objects; determining respective second alpha values for second pixels in the plurality of pixels based on coverage of the second pixels by the selected object; and adding to the respective color value of each of the second pixels based on the respective second alpha values and one or more color properties associated with the selected object.