Graphics‎ > ‎Graphic API‎ > ‎

Software

Everybody needs to make a spinning cube.

Software rendering is the noble art of living without a GPU.

Basic
The basic setup needed is a buffer for all the pixels and a way to set and get a single pixel. If one is true one use a palette color mode with 256 colors only :).

2D

Lines

Palette Map
A palette map is used to modify a palette index. It can be used to set the light level of images of to get a transparent color.

ColorMap: This maps a single palette index into another. Ex one can have 16 light level colormaps that map a image from full bright CM1 to dark CM16. Each colormap is 256 bytes long and map one palette index to another.

ColorTable: Takes two palette index and lookup a table for a new index. Can be used to get a transparent color.




3D

Surface Rendering
Fill Edge List
  1. Find top vertex.
  2. Find left edge and right edge from top vertex.
  3. Use line algorithm to trace each line down and fill in start, end in edge table for line- When hit a new vertex on each edge change to the new line segment.
  4. Run until at end vertex
Draw Edge List
  1. Loop scanlines
  2. Draw along line from start to end from edge list.
Shading
Texture Mapping
Clipping
Cull
Reference

Rasterization: a Practical Implementation



Comments