Historique des modifications - Message

Message #11504

Sujet: C++ Autre Camera 3ieme personne


Type Date Auteur Contenu
Création du message 16-03-2014 11:58:42 Magun
le soucis de l'utilisation des namespaces dans les header c'est surtout que rien ne garantie qu'un namespace du même nom n'existe pas ailleur dans le projet host
par exemple core, video, scene, ... sont des nom asser usuel or si tu utilise <<using namespace irr>> il y a de forte probabiliter qu'il y est des conflits

les fonctions virtuel permette de pouvoir utiliser le polymorphisme
si tu dérive une class et que tu redefini une fonctions virtuel, peut import la déclaration que tu utilise (fils ou mère)
la fonction utiliser seras celle de l'instance de la class
si tu ne le fait pas c'est celle de la déclaration qui seras usé

(peut-être que je ne suis pas asser claire)
ça permet d'étendre ton code sans toucher au base

pour finir, l'interet de passer par un animator c'est de décharger le programmeur sur la mise a jours de la position de la camera et evenement
et de plus de pouvoir l'exporter simplement dans les scenes *.irr avec une class a deriver pour l'importation (irr::scene::ISceneUserDataSerializer)

il suffie alors de faire un code de ce style:

Code c++ :


ICameraSceneNode *cam = smgr->addCameraSceneNode();
ISceneNodeAnimator *rpg = new Camera();
cam->addAnimator(rpg);
rpg->drop();

rien de plus

wink

une dernier chose

Code c++ :


            if(event.KeyInput.Key == irr::KEY_KEY_S)
                {
                    if(event.KeyInput.PressedDown == true)
                        cameraV_Negatif = true; //-------------------------------------------------> Mouvement vertical negatif
                    else cameraV_Negatif = false;
                }
equivalent a

Code c++ :


cameraV_Positif = event.KeyInput.Key == irr::KEY_KEY_S && event.KeyInput.PressedDown;

Retour

Options Liens officiels Caractéristiques Statistiques Communauté
Préférences cookies
Corrections
irrlicht
irrklang
irredit
irrxml
Propulsé par Django
xhtml 1.0
css 2.1
884 membres
1440 sujets
11337 messages
Dernier membre inscrit: Saidov17
512 invités en ligne
membre en ligne: -
RSS Feed