Sur neogaf il ya un thread qui explique très bien et de manière digeste sur le fonctionnement des jeux notamment la partie sur la ram et le disque dur.
Cela fonctionnait bien avant, pourquoi avons-nous besoin d'une nouvelle solution de stockage A.K.A SSD?
Non, ça ne fonctionnait pas bien, c'était une corvée pour tout autre chose que des petites cartes multijoueurs ou des jeux de combat.
Parlons chiffres. Malheureusement, peu de jeux ont publié leurs pools de RAM et leurs pools d'asset au public, mais certains l'ont fait.
Killzone : Présentation de la démo de Shadowfall par Guerrilla
https://www.guerrilla-games.com/read/killzone-shadow-fall-demo-postmortem

Nous avons à peu près ce qui suit (Allocation de la RAM):

(pour Vulgariser un peu, streaming =le chargement des éléments à afficher aux yeux du joueurs)
Nous sommes intéressés par les chiffres du "streaming pool" ici (mais nous parlerons aussi des autres)
Nous avons ~500MB de données qui sont chargées au fur et à mesure de la démo, à la volée.
L'ensemble des données que le jeu échantillonne (pour ce processus de streaming) est de 1600 Mo.
La vitesse de chargement du disque dure de la PS4 est de (données compressées) < 50MB/sec (non compressées < 20MB/sec), c'est-à-dire qu'il faudra > 30sec pour charger cela au moins.
Il semble que ce n'est un gros problème, et c'est d'ailleurs le cas pour la démo. Mais qu'en est-il du jeu ?
La taille du jeu est d'environ 40 Go, vous disposez de 6,5 Go de RAM utilisable, vous ne pouvez pas charger le jeu en entier, même si vous essayez.
Alors que reste-t-il ? Nous pouvons soit diffuser des choses en streaming, soit faire un écran de chargement entre chaque nouvelle zone.
Essayons l'approche la plus simple : faire un temps de chargement
Nous avons 6,5 Go de RAM, et l'ensemble permanent est d'environ 2 Go d'après le tableau ci-dessus (Le travail GPU + CPU). Nous avons donc besoin de charger 4,5 Go à chaque fois. C'est 90 secondes, c'est assez ennuyeux, mais c'est le meilleur cas. Chaque fois que vous devez charger des choses non séquentielles, vous devrez fouillez le disque dur et le temps augmentera.
Vous ne pouvez pas revenir en arrière, car cela va recharger les choses et -un autre écran de chargement.
Vous ne pouvez pas utiliser plus de 4,5 Go de ressources dans toute votre zone de jeu, ou vous aurez besoin d'un autre écran de chargement.
Cela devient encore plus ridicule si vos niveaux sont dynamiques : vous avez laissé un objet dans la zone précédente ? Le temps de chargement augmentera (l'objet n'est pas intégré dans le monde du jeu, nous chargeons le monde, puis nous recherchons chaque objet/groupe d'objets sur le disque).
Vous vous souvenez de Skyrim ? Le chargement dans chaque maison ? C'est ce qui va se passer.
Donc, les temps de chargement sont faciles, mais si votre jeu n'est pas un ultra linéaire, statique, de style parc à thème, cela devient absurde assez rapidement.
Comment faire alors pour streamer (afficher) les données en continue (assets, textures, objets, pnj..) ?
Nous avons une partie de la mémoire (500 Mo) réservée au streaming sur le disque dur .
Avec notre vitesse de 50 Mo/sec, nous la remplissons toutes les 10 secondes.
Ainsi, toutes les 10 secondes, nous pouvons avoir des données totalement nouvelles dans la RAM.
Faisons quelques mesures, par exemple : combien de nouvelles choses pouvons-nous montrer au joueur en 1 minute ? Facile : 6*500 = 3GB
Combien d'anciennes données voit-on chaque minute ? Encore plus facile : 1400+450+450+45=~ 2,5 Go
Nous avons donc un rapport de 50/50 entre vielles et nouvelles données à l'écran ( rappel: objets, PNJ, textures. etc...)
Des monstres réutilisés ? des assets ? des textures ? Des PNJ ? tout ce que vous voulez. Vous avez les voyez en 50/50 en permanence.
(Vous vous souvenez les PNJ jumeaux qui ont la même tronche dans les jeux

)
Mais la PS4 a 6,5 Go de RAM, nous n'avons utilisé que 4,5 Go jusqu'à présent, qu'en est-il des 2 Go restants ?
Excellente question !
La réponse est : ça va aux données anciennes (déjà affichées) . Car si nous augmentons le tampon de streaming à 1,5 Go, cela ne changera rien pour la vitesse de 50 Mo/sec.
Avec les 6,5 Go, nous arrivons en 1 minute à 6 Go d'anciennes données contre 3 Go de nouvelles. Ce qui est un rapport de 2:1,
(augmentant ainsi le pourcentage de PNJ jumeaux

)
]Mais qu'en est-il de 10 minutes ?
Bien, bien. C'est parti !
En 10 minutes, on peut arriver à 30 Go de nouvelle données contre 6 Go anciennes.
Et c'est comme ça, que les jeux fonctionnaient jusqu'à aujourd'hui.
En tant que joueur, vous avez été introduit aux nouvelles éléments d'un jeu très progressivement.
Ou alors, il y avait des compromis qu'ils utilisaient : le personnage qui ouvre une porte lancement, le coup de l'appel d'un PNJ pour obliger le joueur à marcher lentement , se faufiler entre les murs .

Vous vous souvenez par exemple dans un Uncharted avec les "ouvrons cette lourde porte pendant 15sec", c'est parce que les nouvelles choses doivent être chargées, les joueurs doivent se rendre à un nouvel endroit, mais nous ne pouvons pas le charger rapidement.
(Vous vous souvenez du ratio 50/50 nouvelles et anciennes données sur PS4 avec Killzone
Sur Next gen on est plus dans l'ordre de 60/1 au minimum !)
Alors, qu'en est-il des SSD ?
Ne vous êtes-vous jamais demandé pourquoi aucune ville ne figurait dans open world ? Une vraie ville, avec des blocs, des appartements, etc.
Parce que ce serait ennuyeux à mourir.
Vous entrerez dans chaque pièce pour voir presque exactement les mêmes accessoires et meubles.
Exactement les mêmes PNJ. Faisant les mêmes choses.
Avec les SSD, un appartement en ville peut utiliser tout l'espace RAM non-permanent pour afficher cela.
Et en charger une nouvelle lorsque vous passez d'une porte à l'autre.
Pensez-y. 5.5Gb 1sec. Derrière chaque porte, vous pouvez avoir un nouveau monde complet. Complètement différent de l'autre.
Mais, mais j'ai échangé mon disque dur contre un SSD dans ma PS4 et rien n'a changé ! Qu'est-ce qui se passe ?
Vous voyez. Revenons à l'exemple de Killzone.
Nous avons cette mémoire tampon de 500 Mo pour le streaming et nous la chargeons avec les nouvelles données en 10 secondes, sur le disque dur.
Maintenant, nous avons échangé en SSD avec 500 Mo/sec et nous chargeons ce tampon en 1 seconde !
Mais, devinez quoi, le jeu n'a pas été conçu pour cela.
Le jeu a été conçu pour demander et utiliser ces données dans les 10 prochaines secondes, pas maintenant.
Donc, quelle que soit la vitesse de votre SSD, cela ne changera rien.
Je dirais même que dans un jeu bien conçu, il ne fera qu'empirer les choses.
Pourquoi ? Parce que vous avez utilisé 500MB/sec de bande passante mémoire en ce moment, pour les données qui ne seront pas du tout nécessaires jusqu'à ce que le jeu en ait besoin 10 secondes plus tard, vous avez gaspillé 500Mb/sec pour rien au lieu de les donner au GPU !
Voila je pense qu'il explique assez bien le bordel sans trop rendre ça indigeste
En conclusion ça veut dire quoi tout ça ?
il ne s'agit pas de chargements plus rapides, c'est la façon même de concevoir le jeu qui va changer. Le level design et gamedesign vont se complexifier, les mondes vont êtres beaucoup plus riches et variées, dans une même scène vous allez avoir énormément d'objets, assets, pnj....différents.
Un élément qui va aussi être impacté c'est le niveau de détail. Comme vous le savez les moteurs gèrent plusieurs niv LOD (level of detail ) des assets, vous avez sans doute déjà remarquer dans 99% des jeux notamment les open world plus vous vous éloigner d'un objet , plus il perd en détail.
C'est le compromis entre open world vs linéaire. Dans le premier cas tu as plus d'éléments affichés mais les détails sont plus faibles (au niveau micro). Mais certains développeurs arrivent à pondre des jeux comme RDR 2 qui a une distance d’affichage et un niveau de détails des éléments dans le paysages plus détaillés que tout les open world parce qu'ils gèrent extrêmement bien leur streaming (RAM, disque dur)
PS: J'ai volontairement supprimer la partie sur la comparaison théoriques des deux consoles pour se concentrer sur l'essentiel et à l'heure actuelle ce n'est que de la spéculation.
Et pour finir voici ci dessous un exemple concret de ce que peut faire lles jeux full next gen
