what is a bloub ?

This commit is contained in:
tTh 2024-01-26 02:33:31 +01:00
parent 60dac4d948
commit 5b525f5949

View File

@ -17,19 +17,28 @@ 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.
Un bloub est caractérisé par un certain nombre de valeurs,
rangées dans une structure de donnée.
Ces valeurs représentent des choses comme la position,
la taille, l'age et la couleur d'un bloub.
En voici la version Fortran du _Fri Jan 26 00:58:37 UTC 2024_,
c'est à dire presque (mais pas que) complètement différente
de l'état actuel ou possible du logiciel. Il faut noter que
certains champs ne sont pas encore utilisés.
```
type t_bloubs
character(8) :: nick
logical :: alive
integer :: state
integer :: num ! ???
real :: px, py, pz
real :: vx, vy, vz
real :: radius
integer :: age
real :: density
integer :: age, agemax
integer :: red, green, blue
end type t_bloubs
```
@ -40,11 +49,37 @@ 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
D'autres, comme l'age et l'agemax, 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 ?
## La fusion des blobs
Quand deux bloubs se rencontrent (en première approche, cela veut
dire que leurs surfaces se recoupent) il y a bien entendu quelque
chose qui se déclenche. En général, c'est la fusion des deux
bloubs. Mais une fusion de bloubs, c'est quoi ?
Je pense qu'il y a une infinité de possibilités, je vais me contenter
d'expliquer la démarche que j'ai suivie.
Tout d'abord, pour la fusion de certains paramètres, comme la position
ou la vitesse, on va faire simple : une moyenne sans pondération.
Précis et efficace.
Pour d'autres (le nick & le num) je n'ai pas d'idée bien précise,
il y a peut-être la notion de « nick dominant » à définir.
Par contre, c'est peut-être sur les valeurs 'corporelles' :
taille, densité, age et couleur qu'il y a des choses à faire.
* Taille : c'est le `radius` d'une sphere -> somme des volumes
* Densité : cette valeur n'est actuellement pas gérée
* Age : (somme des deux ages) * coefficient
* Agemax : (maximum des deux agemaxs) - forfait
* Couleurs : un système de mutation selon critères ?
Il ne reste qu'à coder tout ça.
## Et pour la suite ?
Au fil du temps, le bloub évolue et se complexifie.
@ -55,6 +90,8 @@ On peut aussi envisager de les munir d'un spin non entier
dans le but assumé d'augmenter la complexité des rencontres
interbloubs.
<u>tTh, janvier 2024</u>