Projet

Général

Profil

Actions

Simulateur du drone » Historique » Révision 4

« Précédent | Révision 4/9 (diff) | Suivant »
Anonyme, 12/03/2012 20:39


1 Simulateur du drone

1.1 Présentation générale de cette partie du projet :

Le simulateur du drone a pour objectif final de reproduire exactement les mouvements du drone afin de le tester dans un environnement virtuel, ce qui réduit les risques de destructions inopinées.
Le drone, dans l'espace de simulation, peut-être contrôlé de deux manières : Par le clavier, ou par une tablette sous Android dont on reçoit les consignes via wi-fi.

Nous sommes donc partis d'un existant datant de l'année dernière, et nous sommes appuyés sur le Wiki de Raydium disponible sur internet, contenant des descriptions des fonctions, ainsi que des exemples.

Les principaux outils utilisés pour développer le simulateur sont :

Raydium :

Raydium est une bibliothèque regroupant plusieurs bibliothèques plus bas niveau ayant toutes une application dans le domaine du jeu vidéo 3D. De plus, Raydium propose une API composée de fonctions haut niveau ayant pour but de faciliter l'ecriture de morceaux de code communs à tous les jeux vidéos. Raydium dispose donc de moteurs pour gérer tout ce qui est relatif aux jeux vidéos, des graphismes au son, en passant par la physique et le réseau. Dans le cadre du simulateur, nous nous sommes surtout attachés aux moteurs qui gèrent la physique et les graphismes, respectivement ODE et OpenGL.

Code::Blocks :

Code::Blocks est l'environnement de développement intégré au SDK de Raydium. Il nous a donc fallu apprendre à l'utiliser, vu qu'il est nécessaire. C'est un IDE assez facile à prendre en main grâce à son compilateur intégré et son interface modifiable à souhait.

1.2 Particularités d'un programme incluant Raydium

Raydium étant codé en C, une fonction main est nécessaire à tout programme l'incluant. De plus, Raydium a besoin d'une fonction d'affichage, et nous avons utilisé une autre fonction propre à Raydium (plus précisément à ODE), destinée à être appelée de façon très régulière : step().

main : La fonction main servira à initialiser des paramètres propres à Raydium concernant l'application, notamment la résolution de la fenêtre, le filtre des textures, le champ de vision, la (non-)activation des ombres, tout ce qui est relatif à la lumière, les .tri à utiliser, la gravité, ainsi qu'à définir quelles fonctions correspondront à la fonction d'affichage et la fonction appelée de façon récurrente.

affichage : Tâche effectuée par la fonction display(), dans le cas de notre simulateur. Sert à rafraîchir la caméra ainsi que les différents viewports. On appelle aussi la fonction servant à la gestion du clavier dans display().

Mis à jour par Anonyme il y a plus de 13 ans · 4 révisions