Ce prototype à été réalisé durant une gamejam où le thème était "You shouldn't be here". J'ai profité de ce thème afin de créer un jeu d'infiltration où la principale caractéristique est un champ de vision limité, qui se réduit lorsque le personnage se cache.
gif montrant le FOV se réduire
Ma principale inspiration a été le jeu Among Us. Je voulais avoir un résultat similaire à la vision que le joueur possède dans ce jeu.
résultat voulue
Comme toutes mes gamejams, je la réalise sur un moteur de jeu, ici Unity. Je suis assez chanceux car Among Us a été réalisé sur ce moteur aussi. La documentation a donc été assez simple à trouver, et j'ai simplement eu à suivre cette vidéo de Code Monkey.
Pour expliquer rapidement comment cela fonctionne, le jeu va être séparé en 3 layers: la vision du joueur, les éléments bloquant la vision du joueur et les éléments révélés par la vision du joueur. Ainsi, un masque est appliqué sur tout l'écran, cachant les éléments, et le FOV du joueur va le désactiver permettant de révéler les élements du jeu.
gif du jeu où le joueur révèle un élément
Pour l'aspect technique du FOV, celui-ci est réalisé grâce à du raycast et des mesh. Le but va d'être d'envoyer pleins de rayons, qui s'arrêteront soit à un élément bloquant comme un mur, soit à la limite fixée. Nous relierons ensuite 2 extrémités de rayons et le joueur créant ainsi un triangle, ou mesh.
comparaison entre le résultat et la forme du FOV composé de triangles
Lors de cette gamejam, ce FOV a été ma principale préoccupation. Je me suis occupé rapidement de créeer une forme de gameplay avec les sous-thèmes proposé: "fast paced" et "banana". Le joueur incarne donc un singe cherchant à retrouver une fabuleuse banane protégé par des rhinocéros, puis à se diriger vers la sortie.
Ce gameplay très rudimentaire est la raison pour laquelle je préfère dire que c'est un prototype.
entrevue rapide du gameplay