Come si è evoluta la programmazione grafica nel tempo? [chiuso]

2

Non esiste un singolo blog / sito che mostri come le tecnologie grafiche si siano evolute nel tempo, come e perché siano diventate ciò che sono ora. Se qualcuno può far luce su di esso, sarebbe fantastico.

Vedi, a fine anni '80, Logo / Turtle è stato abbastanza impressionante da farmi saltare la testa. Avevo 6 anni e sembrava davvero fuori dal mondo per me. Poi da qualche parte verso la fine degli anni '90 con FPU on-chip, Pentium, MMX mi sono imbattuto in VESA ed ero felice di spingere i pixel con INT 10h . Sono persino arrivato al punto di creare un rudimentale sistema di finestre impilate solo per divertimento (il che era comunque pessimo per il ritaglio). All'inizio del millennio ho iniziato a sentire parole di fantascienza come OpenGL, DirectX, NVIDIA e non potevo più seguire queste tecnologie. La mia matematica del liceo non mi ha preparato per questo. E quella era la fine.

Ultimamente, ho deciso, darò un ultimo tentativo e ho iniziato a installare libSDL. Con mia sorpresa, ci sono molte più tecnologie di quante riesca a capire a malapena. Non scherzo!

$ sudo apt-get install libsdl2-dev

Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  libasound2-dev libdbus-1-dev libdrm-dev libegl1-mesa-dev libgl1-mesa-dev libgles2-mesa-dev libglib2.0-dev libglu1-mesa-dev
  libice-dev libmirclient-dev libmircommon-dev libmircookie-dev libmircookie2 libmircore-dev libprotobuf-dev libpthread-stubs0-dev
  libpulse-dev libsdl2-2.0-0 libsm-dev libsndio-dev libsndio6.1 libudev-dev libwayland-bin libwayland-dev libx11-dev libx11-xcb-dev
  libxau-dev libxcb-dri2-0-dev libxcb-dri3-dev libxcb-glx0-dev libxcb-present-dev libxcb-randr0-dev libxcb-render0-dev
  libxcb-shape0-dev libxcb-sync-dev libxcb-xfixes0-dev libxcb1-dev libxcursor-dev libxdamage-dev libxdmcp-dev libxext-dev
  libxfixes-dev libxi-dev libxinerama-dev libxkbcommon-dev libxrandr-dev libxrender-dev libxshmfence-dev libxss-dev libxt-dev
  libxv-dev libxxf86vm-dev mesa-common-dev x11proto-core-dev x11proto-damage-dev x11proto-dri2-dev x11proto-fixes-dev
  x11proto-gl-dev x11proto-input-dev x11proto-kb-dev x11proto-randr-dev x11proto-render-dev x11proto-scrnsaver-dev
  x11proto-video-dev x11proto-xext-dev x11proto-xf86vidmode-dev x11proto-xinerama-dev xorg-sgml-doctools xtrans-dev

So che alcuni sono legati a D-Bus e U-dev e probabilmente non correlati a questa domanda. Ma quello che non capisco è come si integrano le altre tecnologie.

Imparare come si sono evoluti nel tempo mi aiuterebbe a capire come tutte queste tecnologie formano l'ecosistema in cui lavorano. Come effetto collaterale, mi aiuterà anche ad apprezzare la natura complessa delle librerie e dell'hardware sottostante. Da qui la domanda.

    
posta Unmanned Player 01.05.2018 - 00:45
fonte

1 risposta

2

Una panoramica accademica può essere trovata leggendo i documenti SIGGRAPH in ordine cronologico.

Ma in realtà la lunga lista di tecnologie sottolinea solo che la programmazione grafica è diventata un argomento estremamente vasto. Non sono sicuro che l'ordine cronologico aiuti molto. Ci sono vari tutorial 3D là fuori, e siti Web per aiutare come Shadertoy. E guasti di singoli motori di gioco, come questa analisi di un frame da DOOM .

(Gran parte della tua lunga lista riflette solo una stranezza del mondo Ubuntu / Debian di sistemi complessi come X11 come piccoli frammenti. Mir e Wayland sono alternative a X11 .Mesa e le varie librerie GL sono lì per gestire 3D.)

    
risposta data 01.05.2018 - 01:03
fonte

Leggi altre domande sui tag