Rapport #84: Factorio 0.12: Optimisation II

Il y a 2 semaines kovarex nous expliquait quelles optimisations il avait intégré dans Factorio pour améliorer la fluidité du jeu.

Aujourd'hui il revient sur ce même sujet, en nous expliquant les nouvelles optimisations apportées à Factorio:

Amélioration de l'affichage de la fumée:
Le fonctionnement de la fumée est basé sur une idée simple mais très efficace: La fumée se déplace à chaque tick (60 fois par seconde). Le mouvement est calculé à partir d'un vecteur de base (nommé a par la suite). La vitesse de la fumée est décroissante à chaque tick d'un facteur q = 0.995.

Si nous souhaitons calculer la position de la fumée dans n tick dans le futur, les mouvements seront:
  • tick 1: a
  • tick 2 : a + a*q
  • tick 3 : a + a*q + (a*q)*q
  • etc.

Ce qui, après calcule, donne la formule suivante:


Grâce à cette formule simple, il est possible de connaitre la position de la fumée sans devoir la mettre à jour à chaque tick. Ainsi, dans Factorio 0.12 la position de la fumée ne sera mise à jour qu'une fois toutes les 2 secondes (120 ticks), mais le mouvement restera fluide grâce à cette formule. Cela améliore énormement les performances, d'autant plus qu'il y a beaucoup de source de fumée dans le jeu: Les trains, les chaudières, les générateurs et les fours produisent tous de la fumée.


Optimisation des circuits électriques:
Les panneaux solaires et les batteries font maintenant partie intégrante du réseau électrique, ils n'ont plus besoin d'être géré chacun individuellement. Ainsi la distribution de l'électricité est maintenant grandement simplifier, ce qui signifie que le nombre de panneau solaire et le batterie utilisés n'auront plus aucun impact sur la vitesse du jeu.


Ajout de nouveaux ennemis:
Les plus grandes usines sont en générales celles qui poluent le plus, et donc qui attire le plus les ennemis. La plupart du temps le joueur ne s'en rend même pas compte, car ses défenses automatiques tuent les ennemis avant qu'il ne s'en apperçoive. Malgré tout, le jeu doit quand même simuler les déplacements des unités, ainsi que les combats avec les tourelles de défenses, ce qui impact les performances du jeu.

Afin de limiter les ralentissements du aux attaques, un nouveau niveau de difficultés des bitters et de spitters a été ajouté: le niveau 4 (les monstres). Au lieu d'envoyer une armée de 20 gros bitters, le jeu enverra seulement 3 monstre bitter, qui seront aussi puissant, mais moins nombreux à gérer.


Conclusion:
La phase d'optimisation pour la version 0.12 de Factorio est maintenant terminé. Le temps de calcule de la mise à jour d'une usine à était divisé par 3 depuis la version 0.11, ce qui signifie qu'il sera possible de créer des usines 3 fois plus grande dans Factorio 0.12 avant que le jeu ne ralentisse ! Cependant il ne faut pas oublier que dans la version 0.12 il y aura aussi des mondes parallèles (l'espace) à gérer en plus, cela impactera également les performances.
Posté par Tronics, le 02/05/2015 à 0:22.Source
Dernière modification par Tronics le 02/05/2015 à 0:39.
Commentaires de la news Factorio
Rapport #84: Factorio 0.12: Optimisation II :

Vous devez être connecté pour laisser un commentaire.