Historique des modifications - Message

Message #10494

Sujet: Optimiser les fps avec plusieurs centaines de scenenodes ?


Type Date Auteur Contenu
Création du message 28-05-2012 19:29:29 Akabane87
Bonjour @tous,

Depuis quelques jours déjà je tente de rester au dessus de la barre des 100fps avec mon nouveau projet mais je crois que j'arrive à la limite de ce que peut donner ce moteur.

Mon but est de créer un jeu de shoot spatial dont les vaisseaux sont des sortes d'amas atomiques ; chaque "atome" correspondant à un objet spécifique (canon, réacteur, container etc etc). L’intérêt de la manip est de créer in-game un vaisseau totalement custom selon des règles particulières.
Coté code, il apparait évident et inévitable de créer une node par objet puisque chaque objet d'un type donné a un mesh différent (au pire il pourra être le même pour tous les vaisseaux, mais se déclinera en plusieurs versions). Mais quelle que soit la solution utilisée pour les mesh, celle concernant les nodes me semble inévitable : 1 node par objet (dites moi si je me trompe).

Sachant qu'un vaisseau peut comporter en moyenne une vingtaine d'objets (voire beaucoup plus si je trouve un moyen de gagner des fps), et je j'envisage des combats avec au moins une vingtaine de vaisseaux à l'écran, on arrive facilement à 400 nodes pour les vaisseaux (plus le décor).

Cela me fait arriver au problème suivant : les fps. En effet avec 400 nodes (contenant pour l'instant des spheres low poly), je tombe déjà à un framerate en dessous de 200 fps avec un core i7 (bon ok ya rien de multithreadé) qui si tout est affiché à l'écran peut descendre en dessous de 100 fps.
Ayant codé par dessus tout ça un moteur physique ultra léger qui arrive à prendre à lui tout seul moins de 1ms pour gérer 1000 vaisseaux de 20 spheres chacuns, je suis (comment dire...) frustré de voire que le rendu de 400 nodes prend 9ms...
J'ai déjà fait un système qui débranche les nodes non visibles à l'écran du graphe de scene afin d'arriver à ce minimum de 400 nodes à gérer pour le graph de scene... je ne vois plus quoi faire d'autre là.

Donc si quelqu'un ici à une suggestion à me faire, je suis preneur ^^.

Merci d'avance.

Aka

Retour

Options Liens officiels Caractéristiques Statistiques Communauté
Préférences cookies
Corrections
irrlicht
irrklang
irredit
irrxml
Propulsé par Django
xhtml 1.0
css 2.1
884 membres
1440 sujets
11337 messages
Dernier membre inscrit: Saidov17
121 invités en ligne
membre en ligne: -
RSS Feed