Search code examples
renderingvector-graphicsraytracingrasterizingraster-graphics

What image synthesis techniques does the term "rendering" apply to?


I am a little (much) confused about the term "rendering". My understanding is that it should apply to every process of creating an image - of whatever type, i.e. raster image/vector image/magical other ways of storing images - from some geometric model (Wikipedia calls it "Rendering or image synthesis is the process of generating a photorealistic or non-photorealistic image from a 2D or 3D model by means of a computer program"), but the specific rendering techniques that I find online (rasterization, ray tracing, ray casting) seem to collectively synthesize raster images. I only found one so-called SVGRenderer.

I'm really afraid of having some fundamental flaw in my understanding of the terminology - and thus the topic, so:

  • Does rendering exclusively mean "synthesis of RASTER images" or does it mean the creation of any type of image? E.g., can I call the projection of a 3D scene onto a 2D vector image "rendering" in good conscience?
  • Does the model have to be a 2D/3D scene or is any process of creating one description of an image from another description of it also "rendering" (e.g. the conversion of a png file to an svg file)?
  • While I'm at it, does rasterization only mean the creation of a raster image from a 2D vector image or can I call the whole process of converting a 3D scene into a 2D raster image rasterization?

Thanks a lot in advance!


Solution

    1. If you render to an oscilloscope (e.g. Rendering Blender scenes on an oscilloscope using osci-render ) you do not have a raster. So I would say rendering does not mean exclusively "synthesis to an raster image". Nevertheless, most often we end up on a raster display (e.g. OLED displays).

    2. Neural rending can generate images from text (e.g. Stable Diffusion, Midjourney, etc.). Three are also image-to-image generators and AI denoisers such as OIDN (https://www.openimagedenoise.org/). You can consider also those techniques as rendering (also the term image synthesis would make sense here)

    3. Both! You can call the 2D process where 2D triangle is rasterized as "Rasterization" or the whole 3D Rasterization pipeline.