cClaude.rocks ☕ Le blog

[Nouvelles technologies, sciences et coups de gueule…]

Menu

English version of this page.

Pour le 1er avril 2019, j’ai introduit une animation sur la page À propos. Ce type d’animation s’appelle une DÉMO (vient du mot dĂ©monstration) – il s’agit de techno-art, une association entre la technologie et l’art.

Cette pratique remonte aux annĂ©es 1980, juste aprĂšs que l’apparition des premiers ordinateurs personnels est certainement liĂ©e au manque de logiciels. Les utilisateurs ont commencĂ© Ă  Ă©crire des programmes souvent en langage machine (assembleur) pour afficher des images avec de la musique. Rapidement, les scrollings sont apparus, puis les effets se sont complexifiĂ©s sans nĂ©cessairement avoir des machines plus puissantes, mais en essayant d’exploiter au mieux les ressources des ordinateurs de l’époque.

Cela a donnĂ© lieu Ă  des dĂ©mos-parties (scĂšne) oĂč des personnes se rencontraient pour faire des compĂ©titions sur la base de diffĂ©rents critĂšres techniques ou artistiques. Le langage de prĂ©dilection pour type de performance est l’assembleur afin d’exploiter au mieux la puissance des machines, une autre raison, et non des moindres, est qu’historiquement il n’y avait pas vraiment de choix.

Concernant la DÉMO par elle-mĂȘme, la partie animation est 100 % en HTML/CSS. Pour le lanceur, je me suis rĂ©signĂ© Ă  utiliser du JavaScript car les navigateurs ont des comportements trop hĂ©tĂ©rogĂšnes entre les diffĂ©rents Ă©diteurs et plateformes. Ceci concerne essentiellement l’affichage de l’interface de commande des sons.

Voici à quoi sert le code JavaScript dans cette DÉMO :

  • Par dĂ©faut la DÉMO n’est pas lancĂ©e, ceci afin d’éviter un dĂ©marrage du son inopinĂ©, le code JavaScript sert Ă  attendre une action de l’utilisateur.
  • Si on coupe la musique cela arrĂȘte l’animation, et du coup l’ensemble reste synchronisĂ©,
  • En fin de musique (au bout troisiĂšme affichage du scrolling horizontal) l’animation s’arrĂȘte.
  • Une petite fonction JavaScript sert Ă  injecter du code en dehors de la zone des documents, ce qui permet d’avoir un affichage bien intĂ©grĂ© sans pour autant casser la prĂ©sentation du blog.
  • Le code prend aussi en charge l’affichage de l’avancement du tampon (buffer) de tĂ©lĂ©chargement de la musique ainsi que de la position courante du morceau.

Cette petite DÉMO permet d’explorer certaines fonctionnalitĂ©s rĂ©centes de CSS (rĂ©centes au sens oĂč elles sont, maintenant, supportĂ©es par les navigateurs les plus courant).

Les trucs à voir dans la démo

  • Fond Ă©toilĂ© avec plusieurs niveaux de scrolling, vous pouvez faire le vĂŽtre avec cette application,
  • La citation de Yoda,
  • La musique (OK, ce n’est pas Ă  voir, mais Ă  Ă©couter),
  • Le titre avec un effet de compression,
  • Une barre de raster comme il Ă©tait frĂ©quent dans les « dĂ©mos » du « C=64 »,
  • Scrolling horizontal avec effet de flash,
  • Scrolling ping-pong du logo avec effet de flash,
  • Scrolling vertical en transparence (c’est un vrai code source pour 6510 sur C64),
  • Texte “100 % CSS” avec effet de chemin, une dĂ©formation, des changements d’opacitĂ© et de couleurs,
  • 7 Ă©toiles avec des trajectoires indĂ©pendantes : bleutĂ©es (trajectoire rectiligne) – verte (trajectoire circulaire) – violette (trajectoire improbable),
  • Effets de rotation sur des caractĂšres,
  • 


Le code assembleur

Le texte contenant du code assembleur qui s’affiche sur la droite, est un vrai bout de code assembleur permettant de lancer un programme arriĂšre plan (en interruption) sur le « Commodore 64 ».

Cet extrait d’assembleur permet d’exĂ©cuter Ă  chaque balayage de l’écran un morceau de code, qui exĂ©cutera par exemple une note de musique – voir le code complet.

Limitations

  • Sur Firefox mobile, en verticale la DÉMO ne s’affiche pas, en fait elle s’affiche quelques secondes puis disparaĂźt.

  • Sur mobile Firefox et Chrome cela fonctionne Ă  supposer d’avoir un tĂ©lĂ©phone ou une tablette assez puissante et d’ĂȘtre capable d’afficher plus de 350 pixels en vertical (taille verticale de la DÉMO).

  • Il y a un petit dĂ©calage dans la mise en page entre Firefox et Chrome ce qui m’a obligĂ© Ă  faire des sacrifices de prĂ©sentation pour avoir un rendu raisonnable dans tous les cas.

  • Hum, un dernier truc qui ne va pas est que cette DÉMO casse complĂštement la logique du site qui se veut ĂȘtre Ă©conome en Ă©nergie aussi bien sur la partie serveur que cĂŽtĂ© client web, mais bon c’est juste pour se(me) faire plaisir.

Crédits / Influences / Remerciements

Pas facile, il y en a un peu partout. Pour commencer :

  • Ă  Geoff Graham pour son code sur le scrolling Star Wars,
  • Ă  Donovan Hutchinson pour son code sur un autre scrolling Star Wars – je vous invite Ă©galement Ă  voir son site d’animation CSS,
  • Ă  Roel Nieskens pour sa DÉMO c64css3 qui reprĂ©sente parfaitement le style de ce que l’on trouve sur commodore 64. Il propose d’excellents articles de son blog.
  • aux rĂ©dacteurs de la documentation de Mozilla,
  • aux dĂ©veloppeurs de Firefox pour les outils trĂšs pratiques qu’ils proposent et en particulier d’éditeur de courbe de BĂ©zier sans quoi beaucoup d’effets auraient Ă©tĂ© beaucoup plus difficile Ă  produire,
  • aux rĂ©dacteurs de la documentation w3schools,
  • les codeurs de GrafX2, un programme de dessin bitmap inspirĂ© des programmes Amiga Deluxe Paint et Brilliance. SpĂ©cialisĂ© dans le dessin en 256 couleurs, ce logiciel est adaptĂ© au pixel art, aux graphiques de jeu et, en gĂ©nĂ©ral, Ă  tous les graphiques dĂ©taillĂ©s dessinĂ©s Ă  la souris. Disponible sur Linux et Windows,
  • L’excellent C-64 charset logo generator qui permet de gĂ©nĂ©rer des logos Ă  la mode de ce que peuvent produire des ordinateurs 8 bits – code source.
  • et plein d’autre que j’ai oublié 

Pour apprendre

Pour vous aider Ă  reproduire ces effets, j’ai Ă©crit quelques articles que vous pouvez retrouver en suivant le mot clĂ© dĂ©mo.


Vos commentaires et questions sont, comme toujours, les bienvenus.

኿


â„č 2006 - 2024 | 🏠 Accueil du domaine | 🏡 Accueil du blog