Previous | Next --- Slide 68 of 78
Back to Lecture Thumbnails
ecohen2

I know that we spoke about using parallel processors (which is obviously necessary to some extent) but I was wondering, in practice, since you pull the colors from the texture map can you run all the computations at once / the order doesn't matter?

I think what is messing me up here is that in my mind it's clear that adjacent triangles pull from some of the same information and, having just finished 110, I am thinking about various race conditions and the ordering of operations. Is the reason we can use threading / multiprocessing here because the texture map stays constant?

kayvonf

@ecohen -- you cannot have a race condition when two threads are only reading data. So the synchronization problem is not in parallelizing texture mapping. The challenge of parallelizing a rasterizer comes from the fact that two triangles can overlap on screen, and therefore processing each triangle may result in updates (writes) to the same color and depth buffer samples. Triangles that do not overlap the same samples can be safely processed in parallel. Unfortunately, in a real graphics pipeline, the systems does know which triangles overlap until it has already performed geometric transformation and rasterization.