What Is Software Rasterization?
Rasterization is the process of converting an image represented in a vector graphics format into a bitmap for display or printer output.
- In general, the term rasterization can be used for any
- The most basic rasterization algorithm renders a 3D scene represented by a polygon to a 2D surface. A polygon is represented by a collection of triangles, and a triangle is represented by three vertices in three-dimensional space. In the simplest implementation, the rasterization tool maps the vertex data to the corresponding two-dimensional coordinate points on the viewer's display, and then fills the transformed two-dimensional triangles appropriately.
- For maximum performance in any rasterization engine, only a minimum number of polygons can be sent to the rendering tool. People have developed some acceleration techniques to eliminate objects that cannot be seen.
- Although the basic rasterization process has been around for decades, many of today's applications are still optimizing and increasing the scope of rasterization rendering engines.
Rasterized texture mapping
- The texture is generated at a specific resolution, but since the surface covered by the texture may be at an arbitrary distance from the observer, the texture may also have an arbitrary size on the final image. Therefore, a pixel on the screen usually does not directly correspond to a texel, but needs to use some texture filtering techniques to generate a clear image at any distance. There are many ways to consider this difference in image quality and computational complexity to accomplish this.
Rasterized environment map
- Environment mapping is a form of texture mapping where texture coordinates are related to observation points. For example, one of the commonly used applications is to simulate specular reflection. We can map the internal environment of the entire room to a metal cup in the room. As the observer moves along the cup, the texture coordinates of the cup apex also follow. Change so that you get the reflection effect.
Rasterized Concave-Convex Texture Mapping
- Concave-convex texture mapping is another form of texture mapping that changes pixel depth rather than color. Especially when used with the latest shadowing tools, convex-concave texture mapping makes the surface appear uneven related to light, which greatly improves the realism.
Rasterized level of detail
- In many of today's applications, the number of polygons in any scene is very large, but the observer in the scene can only distinguish the details of close objects. The level of detail algorithm changes the complexity of the geometry based on the distance of the object from the observer. Objects facing the observer need to be rendered very complicatedly, while objects with long distances can be dynamically simplified, and even 2D sprites can be completely replaced [4] .
Rasterized shadow
- The lighting calculation in the traditional rasterization process does not consider the occlusion of the object. Shadow maps and shadow bodies are two common techniques for generating shadows today.