L'Histoire de la Demoscene

01 juin 2000 à 00h17
0

Les contraintes techniques

00044650-photo-demoscene-mindbomb-demo.jpg
Comme tout logiciel, une démo est tributaire de la machine sur laquelle elle fonctionne. Cela dit, la difficulté ne se pose pas en terme de nombre de face affichables, mais concerne plus la fluidité de l'animation.
A priori animer 50000 polygones sur Amiga n'est pas plus impossible que sur PC. Cependant sur une machine moins puissante, la fluidité de l'animation risque d'être nettement moins bonne (Celle-ci se mesurant en nombre d'images par seconde).

Sur un téléviseur, la fluidité absolue est de 50 images par secondes (les démomakers disent "50 frame"), car la fréquence verticale de l'écran est de 50 Hz. Je vois venir d'ici les personnes qui vont dire que l'oeil humain ne distingue pas le animations à plus de 24 images par seconde (comme c'est le cas au Cinéma). L'explication est simple: Si l'oeil ne perçoit pas au-delà de 24 images par secondes c'est parce que dans la réalité, tout mouvement passe par une infinité de position. Le cerveau ne peut pas interpréter toutes ces positions, mais seule une partie d'entre elles. Les étapes intermédiaires forment une sorte de rémanence que l'on appelle "Motion Blur".
Les animations crées sur ordinateurs ne peuvent êtres décrites que par un nombre fini de position, donc le "Motion Blur" n'existe pas réellement (ou plutôt Virtuellement). Il peut cependant être simulé de manière grossière.

C'est pourquoi durant une longue période, les programmeurs Amiga se sont imposé une vitesse de 50 images par secondes qui correspond à une limite à partir de laquelle on considère qu'une animation est fluide.

0140000000044651-photo-demoscene-rebel.jpg
Sur PC, la seule "Contrainte Technique", c'est la compatibilité. En effet il existe tellement de cartes Video/Audio qu'il s'agit de faire tourner la demo sur un maximum d'ordinateurs.
Le plus gros problème aujourd'hui se pose avec l'affichage. Avant, lorsqu'on était obligé de travailler en basse résolution (Vga ou Mode 13h ou 320x200), il n'y avait aucun problème, car toute la page vidéo tenait dans un bloc mémoire alors qu'aujourd'hui, avec la montée en puissance des chips graphique et l'augmentation de la résolution, il se révèle que sur certaines cartes, on peut allouer toute une page vidéo dans un seul bloc mémoire (Mode LFB), alors que sur certaines autres, il faut plusieurs blocs mémoires pour une seule page vidéo (Mode Banked). De plus l'accès à ces modes "haute résolution" dépendant de la carte (ou du fabricant) il se révèle souvent des incompatibilités si l'on ne s'astreint pas à utiliser le mode VESA ainsi qu'un driver VESA universel (comme Univbe).

Une demo qui ne fonctionne pas chez tout le monde est une démo qui sera peu diffusée, peu appréciée, et donc peut connue.

De toute évidence, la seule différence entre un cube et une voiture, c'est le nombre de face, mais animer et tracer 50000 faces ou 6 faces ne demande pas le même temps machine, c'est pourquoi animer 50000 face sous Dos est un Véritable exploit sur un P200, le temps de calcul pour calculer les rotations, l'éclairage ainsi que les textures pour 50000 faces à 25 images par secondes représente 1250000 faces à traiter en 1 seconde ! C'est à dire un temps de 200 cycles d'horloge par point !
Pour chaque point, il faut compter plusieurs multiplications pour créer son affichage(9 au minimum), sachant qu'une telle opération prends quelquesoit le processeur x86 une vingtaine de cycles d'horloges, auxquels il faut ajouter les temps d'attentes du possesseur lors de l'accès aux informations en mémoire et le temps de copier la scène calculée à l'écran (au moins 500000 cycles).

Le fait de déléguer le calcul 3D aux Cartes Graphiques permet aujourd'hui d'améliorer la complexité des environnements 3D car le processeur se voit soulagé de nombreux calculs que les cartes font plus rapidement (principalement le rendus graphique pour les plus vielles, et la quasi totalité pour les plus récentes avec le T&L).
0190000000044652-photo-demoscene-clic.jpg
Modifié le 01/06/2018 à 15h36
0 réponses
0 utilisateurs
Suivre la discussion

Les actualités récentes les plus commentées

Consommation de
Sans enquête antitrust, Windows Mobile aurait dominé Android... selon Bill Gates
Débat | YouTube change-t-il pour le pire ?
La Chine lutte contre l'addiction au jeu en imposant un couvre feu et une limite de temps quotidienne
Pick-up Tesla : cochez la date, le concurrent du Rivian R1S présenté dans deux semaines
Le Samsung Galaxy Fold en rupture de stock en cinq petites minutes en Chine
Un TER n’émet pas toujours moins de CO2 qu'une voiture ou un autobus !
Un bouton sur Netflix pour passer les blagues sur Donald Trump pendant un spectacle
Edge basé sur Chromium, aka Chredge, sera bien disponible sur Linux

Notre charte communautaire

1. Participez aux discussions

Nous encourageons chacun à exprimer ses idées sur les sujets qui l'intéressent, et à faire profiter l'ensemble de la communauté de son expertise sur un sujet particulier.

2. Partagez vos connaissances

Que vous soyez expert ou amateur passionné, partagez vos connaissances aux autres membres de la communauté pour enrichir le niveau d'expertise des articles.

3. Échangez vos idées

Donnez votre opinion en étayant votre propos et soyez ouverts aux idées des autres membres de la communauté, même si elles sont radicalement différentes des vôtres.

4. Faites preuve de tolérance

Qu'il s'agisse de rédacteurs professionnels ou amateurs, de lecteurs experts ou passionnés, vous devez faire preuve de tolérance et vous placer dans une démarche d'entraide.

5. Restez courtois

Particulièrement lorsque vous exprimez votre désaccord, critiquez les idées, pas les personnes. Évitez à tout prix les insultes, les attaques et autres jugements sur la forme des messages.

6. Publiez des messages utiles

Chaque participation a vocation à enrichir la discussion, aussi les partages d'humeurs personnelles ne doivent pas venir gêner le fil des échanges.

7. Soignez votre écriture

Utilisez la ponctuation, prohibez le langage SMS et les majuscules, relisez-vous afin de corriger un peu les fautes de frappe et de français : trop de fautes n’engagent ni à lire le message, ni à répondre à une question.

8. Respectez le cadre légal

Ne publiez pas de contenus irrespectueux, racistes, homophobes, obscènes ou faisant l'apologie de courants radicaux, qu'ils soient politiques ou religieux. N'utilisez pas plusieurs comptes utilisateurs.

9. Ne faites pas de promotion

Ne profitez pas d'une discussion pour faire la publicité d'un produit, d'un service ou même de votre site web personnel.

10. Ne plagiez pas

Exprimez uniquement vos opinions ou partagez des idées en citant vos sources.

scroll top