Présentation

Le rendu logiciel consiste à laisser le processeur central calculer chaque pixel d’une scène 3D. L’auteur décrit une expérience où Quake fonctionne en mode logiciel à une résolution de 800 × 600 avec un verrouillage de 60 fps sur un Dell OptiPlex 380. Cette configuration montre que les limites graphiques des jeux DOS des années 90 peuvent être dépassées avec du matériel moderne.

Fonctionnement du rendu logiciel

Dans un moteur logiciel, le code du jeu parcourt la géométrie, applique les transformations et écrit directement les valeurs de couleur dans la mémoire vidéo. Aucun GPU n’est sollicité, ce qui implique que chaque pixel représente un calcul complet du pipeline de rasterisation. Les textures sont échantillonnées « pixel par pixel », conservant la forme carrée des texels. Cette approche contraste avec les cartes 3D des années 90 qui appliquaient un filtrage bilinéaire, adoucissant les textures et introduisant un flou que l’auteur juge aujourd’hui indésirable.

Les jeux cités – Doom, Duke Nukem 3D, Blood et le Quake original – utilisent tous une palette de 256 couleurs. L’éclairage repose sur des tables de recherche (lookup tables) qui traduisent des valeurs d’intensité en indices de palette. Le résultat est un rendu à bandes de couleur (colour banding) où les ombres apparaissent en étapes visibles. Cette contrainte technique, héritée des limitations matérielles de l’époque, confère aux scènes un aspect « gritty » que l’auteur apprécie.

Performances et exigences matérielles

Le facteur limitant du rendu logiciel est la puissance du CPU. Chaque pixel supplémentaire multiplie le nombre d’opérations arithmétiques, de tests de visibilité et d’accès mémoire. Sur l’OptiPlex 380, le processeur actuel suffit à maintenir 60 fps à 800 × 600, mais les titres plus lourds, comme Shadow Warrior, exigent davantage. Une référence indique qu’un Xeon 3.3 GHz quad‑core ne parvient pas à atteindre le plein 1600 × 1200 en temps réel, soulignant la courbe de charge exponentielle liée à la résolution.

Les résolutions VESA élevées proposées par les jeux tardifs dépassaient largement les capacités des PC de l’époque, expliquant pourquoi ces modes restaient rarement exploités. Aujourd’hui, les processeurs multi‑cœurs modernes offrent une marge suffisante pour la plupart des titres, mais la charge reste proportionnelle à largeur × hauteur × fréquence d’images. Ainsi, choisir la résolution optimale implique de balancer la fluidité visuelle et la charge CPU.

Limitations et perspectives

Le rendu logiciel nécessite un environnement DOS natif pour reproduire fidèlement le comportement d’origine. Les émulateurs comme DOSBox offrent une alternative, mais certains jeux affichent des incompatibilités ou des différences de timing. De plus, le son pose problème : les cartes son modernes ne supportent pas les interfaces matérielles attendues par les titres DOS, ce qui peut entraîner l’absence d’audio ou des artefacts.

Le phénomène persiste avec des titres récents comme Ion Fury (2019), qui embarque encore un moteur logiciel, prouvant que le rendu CPU conserve une valeur esthétique et technique au-delà de la nostalgie. En résumé, le rendu logiciel reste viable sur du matériel contemporain, à condition de disposer d’un processeur suffisamment rapide, d’un affichage haute résolution et d’une solution audio compatible.