This commit is contained in:
Miloslav Ciz 2023-11-13 16:29:28 +01:00
parent ba42573522
commit 62ed2dfb7e
9 changed files with 22 additions and 14 deletions

View file

@ -16,6 +16,7 @@ We can divide computer graphics in different ways, traditionally e.g.:
- by speed:
- **[real time](real_time.md)**: Trying to work with images in real time, e.g. being able to produce or analyze 60 frames per second.
- **offline**: Processes or creates images over longer time-spans, even hours or days, e.g. in 3D movie rendering.
- ...
Since the 90s computers started using a dedicated hardware to accelerate graphics: so called [graphics processing units](gpu.md) (GPUs). These have allowed rendering of high quality images in high [FPS](fps.md), and due to the entertainment and media industry (especially gaming), GPUs have been pushed towards greater performance each year. Nowadays they are one of the most consumerist [hardware](hardware.md), also due to the emergence of general purpose computations being moved to GPUs (GPGPU), lately especially mining of [cryptocurrencies](crypto.md) and training of [AI](ai.md). Most lazy programs dealing with graphics nowadays simply expect and require a GPU, which creates a bad [dependency](dependency.md) and [bloat](bloat.md). At [LRS](lrs.md) we try to prefer the [suckless](suckless.md) **[software rendering](sw_rendering.md)**, i.e. rendering on the [CPU](cpu.md), without GPU, or at least offer this as an option in case GPU isn't available. This many times leads us towards the adventure of using old and forgotten algorithms used in times before GPUs.