Fortraneries/BloubWorld/doc/what-is-a-bloub.md

1.9 KiB

What is a bloub ?

Philosophie

Bonne question, mais nous n'avons pas le temps, point suivant ? En fait, si, il est tard, mais j'ai envie de raconter des conneries.

Un bloub est une entité mathématique qui vit dans un espace cartésien abstrait, bien que normé. Il peut aussi être borné, soit en mode "boite", soit en mode "tore". La notion de champ de gravité est ignoré, parce qu'un bloub se moque d'avoir une masse. Par contre les bloubs peuvent interagir entre eux de divers manières : rebond (genre billard), échange de données, fusion volumique...

Technique

Voici la version du Sat 19 Feb 2022 12:37:42 AM CET, c'est à dire complètement différente de l'état actuel du logiciel.

  type t_bloubs
    character(8)         :: nick
    logical              :: alive
    integer              :: num               ! ???
    real                 :: px, py, pz
    real                 :: vx, vy, vz
    real                 :: radius
    integer              :: age
  end type t_bloubs

Certains champs sont assez explicites, comme le nick, la position dans l'espace, le rayon (pour nous, un bloub est une entité abstraite assimilable à une bubulle) ou la vitesse sur les trois directions de l'espace bloubeux. D'autres, comme alive, sont plus délicates à expliquer, sauf si l'on considère que les bloubs sont zombifiables.

D'autres, comme l'age, sont bien plus sujettes à de diverses interprétations. doit-on incrémenter l'age à chaque tick d'horloge ou à chaque évènement discret ? Et à quel age un bloub devient-il trop vieux, à quel age va-t-il mourir ?

Et pour la suite ?

Au fil du temps, le bloub évolue et se complexifie. La prochaine itération sera dotée d'un attribut de couleur et d'amusantes fonctions pour mixer ces couleurs si deux bloubs se trouvent à fusionner. On peut aussi envisager de les munir d'un spin non entier dans le but assumé d'augmenter la complexité des rencontres interbloubs.