<p>Forward rendering is the 'classic' approach to the rendering pipeline. 
Nowadays it is mostly replaced by a more flexible, deferred rendering approach.</p>

<p>I did some research and had trouble finding something specific about the history of Forward Rendering.
It is my understanding, that Forward Shading evolved alongside the rendering pipeline. The pipeline provided the features for forward rendering and Forward Rendering incorporated the features of the pipeline. </p>

<p>I was wondering: When did a name for the classical shading approach come up and why was this specific name chosen?</p>

CC BY-SA 4.0
2019-03-02T22:51:44.580Z
I can't really put a finger on the moment when the christening happened, but I'm under the impression that it came about solely because it never needed a name before, but now it did, in order to be distinguished from "deferred".

I never understood, though, why something more linguistically consistent wasn't chosen instead (e.g. "immediate"). I guess the industry somehow aligned on "forward" and that was that.
IneQuation
CC BY-SA 4.0
2019-03-03T07:20:13.917Z
I don't actually know why it's called forward shading but I would speculate it's because the shaders used to draw polygons need forward knowledge of the lighting setup ? As opposed to deferred, where lighting is integrated in a separate pass.
PaulHK
CC BY-SA 4.0
2019-03-03T19:48:53.957Z
I'd say it's because the process is more or less linear. So in essence all you have to do is move forward in the pipeline like geometry -> vertex shader ... -> fragment shader -> screen and you are done. Nothing could be more simpler than that xD  Deferrred got it's name from the meaning. Deferred means to put off something to a later time and that's what we do.
gallickgunner
CC BY-SA 4.0
2019-03-04T09:31:14.400Z
It's my understanding that forward rendering (rasterisation) is opposed to backwards rendering (ray tracing), while deferred rendering simply is a specialisation of forward rendering. Forward as geometry is pushed out, on top of eachother (with regard to the z-buffer, of course) onto the image plane (as a pointer would), while ray tracing is projecting the light back to the image plane (as a kind of photography).
beyond
CC BY-SA 4.0
2019-03-04T12:07:50.093Z
@beyond - raytracing is also forward (light tracing) and backwards. I don't think the above terms has to do anything with raytracing/rasterization
gallickgunner
CC BY-SA 4.0
2019-03-04T17:20:36.067Z
@beyond In the rasterization world "forward" is definitely used as an antonym for "deferred". I can't think of any other term but "rasterization" I've heard used to contrast rasterization with raytracing.
Nathan Reed
CC BY-SA 4.0
2020-11-24T06:13:44.897Z
I think it might be because it is straightforward. In deferred, you "defer" the actual rendering of the full scene (with lights etc.) but in forward rendering, everything is straight"forward". You just render the actual geometry in a straightforward way, first the vertex shader, then the fragment shader and that's it.
Atahan Acar
<real-time><shading><deferred-rendering>
Why is Forward Rendering/Shading named this way?
LukeG
# Why is Forward Rendering/Shading named this way?

(Asked by: username_0 on 2019-03-01)

Forward rendering is the 'classic' approach to the rendering pipeline.
Nowadays it is mostly replaced by a more flexible, deferred rendering approach.

I did some research and had trouble finding something specific about the history of Forward Rendering.
It is my understanding, that Forward Shading evolved alongside the rendering pipeline. The pipeline provided the features for forward rendering and Forward Rendering incorporated the features of the pipeline.

I was wondering: When did a name for the classical shading approach come up and why was this specific name chosen?

**Tags:** real-time, shading, deferred-rendering

> **Comments:**
> **username_1**: I can't really put a finger on the moment when the christening happened, but I'm under the impression that it came about solely because it never needed a name before, but now it did, in order to be distinguished from "deferred".  I never understood, though, why something more linguistically consistent wasn't chosen instead (e.g. "immediate"). I guess the industry somehow aligned on "forward" and that was that.  
> **username_2**: I don't actually know why it's called forward shading but I would speculate it's because the shaders used to draw polygons need forward knowledge of the lighting setup ? As opposed to deferred, where lighting is integrated in a separate pass.  
> **username_3**: I'd say it's because the process is more or less linear. So in essence all you have to do is move forward in the pipeline like geometry -> vertex shader ... -> fragment shader -> screen and you are done. Nothing could be more simpler than that xD  Deferrred got it's name from the meaning. Deferred means to put off something to a later time and that's what we do.  
> **username_4**: It's my understanding that forward rendering (rasterisation) is opposed to backwards rendering (ray tracing), while deferred rendering simply is a specialisation of forward rendering. Forward as geometry is pushed out, on top of eachother (with regard to the z-buffer, of course) onto the image plane (as a pointer would), while ray tracing is projecting the light back to the image plane (as a kind of photography).  
> **username_3**: @username_4 - raytracing is also forward (light tracing) and backwards. I don't think the above terms has to do anything with raytracing/rasterization  
> **username_5**: @username_4 In the rasterization world "forward" is definitely used as an antonym for "deferred". I can't think of any other term but "rasterization" I've heard used to contrast rasterization with raytracing.  
> **username_6**: I think it might be because it is straightforward. In deferred, you "defer" the actual rendering of the full scene (with lights etc.) but in forward rendering, everything is straight"forward". You just render the actual geometry in a straightforward way, first the vertex shader, then the fragment shader and that's it.  

---

## 0 answers

