F@B a écrit :
Pour ton histoire d'hardEdge avec le doublement de vertice je ne comprends pas ce que tu veux dire, plus il y a de vertex plus le vertex shader et la rasterization doit passer du temps sur chacun ? en quoi ça optimise de dédoubler ces derniers plutôt que d'avoir un smoothangle a 0? et donc les normal traités par le vertexshader ? ou alors je n'ai pas pigé ce que tu voulais dire.
Explication :
Un GPU ne traite qu'une normale par vertex.
Dans le cas d'un cube avec lissage, il n'y a qu'une normale pour chaque vertex, qui part en diagonale :
- smooth_normals.png (18.69 Kio) Consulté 3720 fois
Donc là tu n'as bien 8 vertices dans ce cube.
Par contre, en rendu flat, comme il ne peut il y avoir qu'une normal par vertex... il faut les dupliquer (c'est géré en interne bien entendu) autant de fois qu'il sont reliés à une face avec une normale différente :
- flat_normals.png (11.01 Kio) Consulté 3720 fois
Et donc on se retrouve ici avec 4 vertices * 6 faces = 24 vertices !
Voilà pourquoi c'est plus lourd (en terme d'occupation mémoire) d'avoir du flat que du smooth >_<
Pour ce qui est de ton souci de LOD, pour ma part je ne ferais des fenêtre modélisées que pour les bâtiments proches, et des textures ou même rien du tout pour ceux qui sont éloignés.