[C#] GLWireframe

Cette section est destinée aux scripts partagés par la communauté. Chaque post est destiné à un script. Suivez bien les recommandations.
Avatar de l’utilisateur
axel
Messages : 1924
Inscription : 26 Avr 2012 09:10
Localisation : Lille - Dunkerque
Contact :

Re: [C#] GLWireframe

Message par axel » 21 Fév 2013 12:14

Je vais essayer, car j'avais testé la version précédente sur une maquette, et le framerate était catastrophique (2 fps), ce qui rendait le script inutilisable.
Je te tiens au courant, merci :)

Avatar de l’utilisateur
artemisart
Messages : 1893
Inscription : 21 Juin 2011 19:51
Localisation : Centre
Contact :

Re: [C#] GLWireframe

Message par artemisart » 21 Fév 2013 12:22

Max a écrit :C'est vrai qu'on sentait bien que les perf en prenaient vite un gros cout :mrgreen:
Dans unity ou dans le jeu buildé ? Et combien de fps environ ?
axel a écrit :Je vais essayer, car j'avais testé la version précédente sur une maquette, et le framerate était catastrophique (2 fps), ce qui rendait le script inutilisable.
Ouch :mrgreen: quelques infos sur la plateforme, le nombre de meshes et de vertices ? (pour comparer avec la nouvelle version).

Avatar de l’utilisateur
axel
Messages : 1924
Inscription : 26 Avr 2012 09:10
Localisation : Lille - Dunkerque
Contact :

Re: [C#] GLWireframe

Message par axel » 21 Fév 2013 12:36

Je te dirais, dès que j'aurais repris la main, j'ai lancé le play dans Unity, et le pré-traitement est plutôt long, ça fait bien 10mn qu'il mouline... :mrgreen:

Avatar de l’utilisateur
Max
Messages : 8771
Inscription : 30 Juil 2011 13:57
Contact :

Re: [C#] GLWireframe

Message par Max » 21 Fév 2013 12:42

artemisart a écrit :
Max a écrit :C'est vrai qu'on sentait bien que les perf en prenaient vite un gros cout :mrgreen:
Dans unity ou dans le jeu buildé ? Et combien de fps environ ?
Ben quand je lance une petite scene de rien du tout à partir de l'éditeur (aucun objects tagués static), c'est vite la catha... (fps<10)

Image

Par contre, dès que je passe l'ensemble en static, cela respire déjà nettement mieux..... (fps revient à 60 fps sur la scene ci-dessus)
Après faudrais que je fasse un ou deux test en build pour voir....
Image
Pas d'aide par MP, le forum est là pour ça.
En cas de doute sur les bonnes pratiques à adopter sur le forum, consulter la Charte et sa FAQ

Avatar de l’utilisateur
artemisart
Messages : 1893
Inscription : 21 Juin 2011 19:51
Localisation : Centre
Contact :

Re: [C#] GLWireframe

Message par artemisart » 21 Fév 2013 13:20

axel a écrit :Je te dirais, dès que j'aurais repris la main, j'ai lancé le play dans Unity, et le pré-traitement est plutôt long, ça fait bien 10mn qu'il mouline... :mrgreen:
Oo 10mn ! moi il prend que quelques dizaines de millisecondes (bon la scène est pas super chargée mais...).
Pour alléger tu peux remplacer Bake () par SpeedBake () dans la fonction GetSetMeshes (les edges en doubles seront pas supprimés, et c'est ça qui prend beaucoup de temps).
Max a écrit :
artemisart a écrit :
Max a écrit :C'est vrai qu'on sentait bien que les perf en prenaient vite un gros cout :mrgreen:
Dans unity ou dans le jeu buildé ? Et combien de fps environ ?
Ben quand je lance une petite scene de rien du tout à partir de l'éditeur (aucun objects tagués static), c'est vite la catha... (fps<10)

Image

Par contre, dès que je passe l'ensemble en static, cela respire déjà nettement mieux..... (fps revient à 60 fps sur la scene ci-dessus)
Après faudrais que je fasse un ou deux test en build pour voir....
Bizarre, t'es sûr que c'est la dernière version du script ?
Parce que cette dernière version ne prend plus en compte le flag static mais les valeurs du transform.
Dernière édition par artemisart le 21 Fév 2013 13:51, édité 1 fois.

Avatar de l’utilisateur
Max
Messages : 8771
Inscription : 30 Juil 2011 13:57
Contact :

Re: [C#] GLWireframe

Message par Max » 21 Fév 2013 13:22

artemisart a écrit :Bizarre, t'es sûr que c'est la dernière version du script ?
Parce que cette dernière version ne prend plus en compte le flag static mais les valeurs du transform.
je me suis peut-être mélangé les crayons, je vais vérifier ;)
Image
Pas d'aide par MP, le forum est là pour ça.
En cas de doute sur les bonnes pratiques à adopter sur le forum, consulter la Charte et sa FAQ

Avatar de l’utilisateur
Max
Messages : 8771
Inscription : 30 Juil 2011 13:57
Contact :

Re: [C#] GLWireframe

Message par Max » 21 Fév 2013 13:34

Tu avais raisons, j'ai du faire une fausse manip.
Cette fois en m'assurant bien que j’emploie le bon script, effectivement cela change la donne.
Et cette fois pas de chutte de FPS. Après, il faudrait que je build une scène plus 'costaud' voir ce que cela peut donner
pour éprouver un peu mieux la chose. ;)
Image
Pas d'aide par MP, le forum est là pour ça.
En cas de doute sur les bonnes pratiques à adopter sur le forum, consulter la Charte et sa FAQ

Avatar de l’utilisateur
artemisart
Messages : 1893
Inscription : 21 Juin 2011 19:51
Localisation : Centre
Contact :

Re: [C#] GLWireframe

Message par artemisart » 21 Fév 2013 13:51

Désolé c'est de ma faute, j'avais mis à jour le post mais pas le script, ce qui explique les post au dessus :oops: .

Avatar de l’utilisateur
axel
Messages : 1924
Inscription : 26 Avr 2012 09:10
Localisation : Lille - Dunkerque
Contact :

Re: [C#] GLWireframe

Message par axel » 21 Fév 2013 14:39

J'ai retesté avec la bonne nouvelle version ;) .
Plutôt que de le faire sur toute ma scène, j'ai testé juste pour un bâtiment (environ 22 000 sommets).
Le "baking" a duré 55 secondes, j'ai activé le speed bake comme tu me l'a conseillé. J'ai également rajouté une ligne dans ton script pour masquer la géométrie dans le GetSetMeshes.
Ensuite dans la scène, la chute de performance est indéniable (cela doit venir aussi du fait que j'ai fais un speedbake),mais c'est bien mieux qu'avant.

Le wire à 23.5FPS
Image

sans le wire à 64FPS
Image


Sinon, concernant le baking, Unity a forcément ces informations quelque part en mémoire. Il ne serait pas possible d'aller les rechercher directement?

Également, j'ai relancé ma scène en désactivant le script sur la caméra, et il effectue quand même le baking!?

Avatar de l’utilisateur
axel
Messages : 1924
Inscription : 26 Avr 2012 09:10
Localisation : Lille - Dunkerque
Contact :

Re: [C#] GLWireframe

Message par axel » 21 Fév 2013 15:17

Par curiosité, j'ai retester avec la fonction bake, et le framerate passe à 38FPS, pour un temps de baking aux environs des 2 mn

Répondre

Revenir vers « Scripts »