real-time rendering and offline rendering
offline rendering a computationally intensive process that is typically used for movie creation, while real-time rendering is often done for 3D video games which rely on the use of graphics cards with 3D hardware accelerators.
software rendering only use cpu,
hardware rendering but also use gpu
rendered image can be understood in terms of a number of visible features. Rendering research and development has been largely motivated by finding ways to simulate these efficiently. Some relate directly to particular algorithms and techniques, while others are produced together.
shading — how the color and brightness of a surface varies with lighting
texture-mapping — a method of applying detail to surfaces
bump-mapping — a method of simulating small-scale bumpiness on surfaces
fogging/participating medium — how light dims when passing through non-clear atmosphere or air
shadows — the effect of obstructing light
soft shadows — varying darkness caused by partially obscured light sources
reflection — mirror-like or highly glossy reflection
transparency — sharp transmission of light through solid objects
translucency — highly scattered transmission of light through solid objects
refraction — bending of light associated with transparency
indirect illumination — surfaces illuminated by light reflected off other surfaces, rather than directly from a light source
caustics (a form of indirect illumination) — reflection of light off a shiny object, or focusing of light through a transparent object, to produce bright highlights on another object
depth of field — objects appear blurry or out of focus when too far in front of or behind the object in focus
motion blur — objects appear blurry due to high-speed motion, or the motion of the camera
photorealistic morphing — photoshopping 3D renderings to appear more life-like
non-photorealistic rendering — rendering of scenes in an artistic style, intended to look like a painting or drawing