En ce moment je développe (du moins j'essaie) une app web / jeu de gestion d'actifs financiers en PHP (backend) et Javascript (front) essentiellement...
Le problème est le suivant :
Pour fonctionner, mon jeu doit calculer chaque seconde a un tableau de valeurs :
(tableau de données a un instant t de l'execution du jeu) :
Ces valeurs sont les variables du jeu. Par exemple, le "score" doit être incrémenté chaque seconde par le "revenu par seconde", lui même calculer a partir d'autres valeurs..
Le calcul n'est pas le problème, le problème c'est que je ne sais pas de quelle facon afficher ces valeur avec un rafraichissement précis d'un par seconde, voir 10hz pour le score (pour voir les nombres du compteur défiler lol).
J'ai essayer avec React.js, mais c'est pas fait pour, et modifier les valeurs est, quand c'est pas impossible, source de trop de bugs.
Ces données sont calculées par le navigateur directement, côté client.
Question : Selon vous, quel serait le framework ou la technique/organisation la plus adapté pour ce genre de chose ?
Évidemment le plus léger serait le mieux, je n'ai pas besoin de grand chose à part ca.
Pour l'instant je fais ca avec une boucle
setInterval()
:
Et pour intégrer les données dans l'UI j'utilise
GetElementByID().innerHTML
c'est vraiment pas terrible :
setInterval(function (){
/*alen = nombre de A*/
let gps = 0;
let alen = getAlen(datas);
console.log(alen);
/*boucle for principal*/
for (ival=0;ival<alen;ival++) {
if (datas.a[ival] == undefined){
continue;//skip les slot vide
}
/*process des A*/
processEachA(datas,ival);
/*process du score par seconde*/
gps = gps + datas.a[ival].r;
}
datas.gps = gps;
//process du score global
datas.score += gps;
console.log(datas);
//envoyer datas vers UI...
},1000);
Si vous trouvez pas ça clair n'hésitez pas à demander...
Merci d'avoir lu !
Configuration: Windows / Firefox 87.0
A voir également:
Quel framework JS utiliser pour une UI (trés) réactive?
Salut,
Donc selon toi je ne trouverai rien de mieux que de faire tout ca en JS pur...
Tu as sûrement raison, je cherche depuis 3 jours et j'ai rien trouvé de toute façon.
Donc selon toi je ne trouverai rien de mieux que de faire tout ca en JS pur...
Tu as sûrement raison, je cherche depuis 3 jours et j'ai rien trouvé de toute façon.