Une implémentation d'une caméra simple utilisée pour naviguer dans un monde 3D. Il est possible de faire pivoter la caméra en mouvement de la souris et de se déplacer en utilisant les touches W, A, S et D (ESC pour fermer l'application).
Il peut être utilisé, par exemple, dans les jeux à la première personne ou dans les applications de CAO.
En tant que petite vitrine, nous avons créé un labyrinthe très simple.
L'herbe et les murs sont rendus à l'aide de shaders.
Nous avons également implémenté un système de collision, tel que l'utilisateur n'ira pas "à l'intérieur" d'un mur, mais il s'arrêtera juste devant lui.
Projet final pour le cours sur l'infographie (AY 2020/2021) de l'Université de Ferrara.
Teacher: Antonino Casile
Students: Alberto Paparella Badge number: 144261
Martina Tenani Badge number: 144739
Il y a deux façons de passer à un point dans l'espace.
Le premier consiste à modifier la position de la caméra et à le déplacer à ce point (impossible dans OpenGL), l'autre modifie la position du point et le ramenait à la caméra.
En parlant simplement, pour produire l'effet d'aller de l'avant, vous allez soit-il vous-même, soit ramener le monde en arrière.
Donc, pour produire l'effet d'aller au point (x, y) dans l'espace, il est possible de traduire le monde au point (-x, -y) à la place, et il sera indiscernable.
Si vous souhaitez regarder vers le côté droit, faites pivoter le monde vers la gauche.
C'est pourquoi nous utilisons les valeurs négatives des angles pendant la rotation.
REMARQUE IMPORTANT: TOUTEZ TOUJOURS D'abord puis traduire.
Pour le système de collision, nous avons implémenté la logique de suivi: vérifiez si l'étape suivante localisera l'objet autour de vous; Si tel est le cas, ne mettez pas à jour les matrices dans cette direction.
Accédez au répertoire principal du projet sfpg/ avec la ligne de commande et lancez la commande make .
Le projet créera un exécutable dans le même répertoire appelé sfpg qui peut être lancé avec ./sfpg .
Tous les fichiers .o sont stockés dans l' obj/ Directory, pour garder les choses propres.