3 ms·
Cool article. The future was correctly predicted here - this is how modern graphics works: "I've had discussions with people that suggest that an accelerator f
by planteen 9y ago
Cool article. The future was correctly predicted here - this is how modern graphics works:
"I've had discussions with people that suggest that an accelerator for Pixar's Renderman architecture is possible. (This is the technology that brought Toy Story and A Bug's Life to the silver screen.) The basic idea is to describe object surfaces programmatically by both perturbation and texture content with subroutines called shaders. Renderman is probably the most advanced rendering system today, but cannot be done in real time with today's technology because of the enormous compute power needed."
- phire 9y agoYes and no. Renderman is a very different architecture to the "SGI-like architecture" (the terminology the author uses) that cards at the time were settling into (and desktop GPUs still use). In Renderman, you subdivide all triangles until the triangles are all smaller than a single pixel, then you collect all triangles that effect each pixel, sort them, decide which triangles will effect the final color and then run the pixel shader for those triangles. Since the subdivided triangles are smaller than a single pixel, you only need to run the pixel shader once, and you don't have to worry about perspective correct texturing. It would be near impossible to implement this at real time in hardware. Modern Graphics APIs took one small aspect of Renderman (pixel shaders) and re-implemented them on top of the existing "SGI-like architecture". They also invented the idea of vertex shaders to program the hardware Transform and Lighting units. (Renderman used distortion/displacement shaders instead. Vertex shaders could only move vertexes. distortion/displacement shaders could distort any point on the triangle in arbitrary ways). Sidenote: Shaders are more of a programming interface than a hardware feature. GPUs with powerful programmable per-pixel pipelines appeared before pixel shaders, and graphics programmers had to configure them with DirectX 7 and OpenGL 1.3's TextureEnviroment features. Shaders just gave programmers a much more sane way to access those same features
- rasz 9y ago> subdivided triangles are smaller than a single pixel, you only need to run the pixel shader once, and you don't have to worry about perspective correct texturing. >It would be near impossible to implement this at real time in hardware. Let me introduce you to the world's greatest virtual concrete slab, courtesy of 2011 Crysis 2: https://techreport.com/review/21404/crysis-2-tessellation-too-much-of-a-good-thing/2 https://techreport.com/review/21404/crysis-2-tessellation-to...