Cela fait maintenant une semaine que la version Unity de HopDrop est sur les étals de itchio, et plus d'un an et demi que la migration a débuté. Changer de moteur de jeu si c'est pour au final ne rien changer à part la fluidité du gameplay et la résolution, ça serait dommage. Il y a beaucoup de choses à en dire, alors cette semaine faisons le point sur les changements techniques majeurs qui se sont opérés dans le projet.
1- Le plus évident, la résolution et le framerate
C'est forcément quelques choses qui saute aux yeux et aux mains, la résolution de HopDrop sur RPG Maker VXace était vraiment pourave (544*416 pixels) et était fixe, y jouer sur un écran 2K à 120 fps est une épreuve de chaque instant. Or, maintenant la résolution du jeu s'adapte à l'écran du joueur. Si le jeu est à 60 fps constants et pas plus énergivore que la version RPG Maker, il peut être joué à n'importe quelle résolution qui soit du 16:9. Il serait possible de pouvoir y jouer à 120 fps, mais en l'absence de tests, de matos nécessaire pour cela et de nécessité pour ce genre de jeu, 60 fps constants c'est très bien... Bien qu'une partie à 120 fps ne soit pas à exclure pour des portages sur consoles.
2- L'utilisation du moteur physique
La fluidité du gameplay va de paire avec la résolution et le taux de rafraichissement stable. Ajoutons à cela que RPG Maker, qu'importe la version, ne possède pas de moteur physique, ou alors il est très limité. Ce moteur est conçu pour du case par case, et en faire abstraction est très difficile ou sinon suicidaire. Faire un jeu de plateformes dans ses conditions était risqué. Qu'importe l'inclinaison du stick, il y avait une touche pour courir et c'est pas très intuitif. Or, avec Unity on est maintenant sur du pixel par pixel et la vitesse de pointe est déterminée par l'inclinaison du stick, ce qui est déjà plus intuitif. Enfin, la présence d'un véritable moteur physique change pas mal de choses.
3- Le GPU est le meilleur allié du graphisme
Cela peut sonner comme une aberration chez certaines personnes, mais les jeux RPG Maker ne sont pas conçu pour tirer parti du GPU. Il y a bien RPG Maker MZ qui demande une carte graphique, mais c'est pour l'utilisation d'Effekseer... Qui exporte des spritesheets, donc au final les jeux n'utilisent pas vraiment le GPU.
Or, sur Unity le GPU (ou la partie dédiée au graphisme dans le microprocesseur/SoC) et le rendu des visuels vont de paire. Sans moteur graphique plus poussé, impossible donc de faire de jolis post-process, de beaux shaders, le lumière et de particules en temps réel.
Prenons un exemple très concret: l'eau. Sur RPG Maker, il s'agissait d'une animation qui tenait en 3 frames qui changeait de frames toutes les 20 frames, et cela devenait donc vite répétitif et pas très classe à la fin... Surtout quand vous avez un monde océanique assez tôt dans le jeu (l'Archipel Pacifique) cela devient assez flagrant. Or sur Unity, j'ai un shader pour faire l'eau, qui n'a pas la contrainte du nombre de frames car la seule image utilisée est un masque pour animer les bords. Pour créer cette apparence d'eau, il s'agit donc de bruits voronoï qui se déplace aléatoirement pour donner un effet plus organique. Voici des vidéos pour comparer:
Voilà pour cette semaine. La semaine prochaine on s'attaquera aux différences de l'univers. Restez à l'écoute!
Comments