#25 

20-11-2008 15:26:46

tmyke
Administrateur
Date d'inscription: 24-03-2008
Messages: 1025

achoura :

petite question en + , ou je peut mettre des photos et fichier zip pour les faires partager sur le forum.


Va dans la section 'Info membres' et le post 'Nouveau membres, à lire. Il y a un espace dedie pour la communaute francophone pour y mettre tes images et tes
archives si tu le souhaite. C'est super simple a employer, alors n'hesite pas
wink


Force et sagesse...

Hors ligne


#26 

20-11-2008 15:48:14

achoura
Membre
Date d'inscription: 30-10-2008
Messages: 41

voila j'ai essayé de suivre vos étapes mais,,,mon modèle contient plusieurs élément dont chacun se sélectionne seul: voila l'imprime écran :

Dernière modification par achoura (20-11-2008 15:49:22)


Le vrai savoir c'est ce qu'il reste dans le cerveau après tous oubliés.

Hors ligne


#27 

20-11-2008 15:51:04

achoura
Membre
Date d'inscription: 30-10-2008
Messages: 41

je pense que je doit unifier tous les body-parts de l'objet afin d'avoir un seul block n'est ce pas !!!??


Le vrai savoir c'est ce qu'il reste dans le cerveau après tous oubliés.

Hors ligne


#28 

20-11-2008 16:09:29

achoura
Membre
Date d'inscription: 30-10-2008
Messages: 41

Le vrai savoir c'est ce qu'il reste dans le cerveau après tous oubliés.

Hors ligne


#29 

20-11-2008 18:38:51

tmyke
Administrateur
Date d'inscription: 24-03-2008
Messages: 1025

Bon, je prends un peu en cours de route, mais si je comprends bien, ton soucis est d'arriver à intégrer des textures sur ton modèle.
Avec Blender, je ne sais pas comment on fait, Ramis semble plutôt au fait du truc, donc je le laisserais continuer à te guider.
Par contre, pour ce qui est de l'import sous Irrlicht, il suffit d'importer ton modèle, les textures sont quand à elle automatiquement
chargé (pour peu bien sûr quelles soit au même endroit que ton modèle). Donc tu n'a pas trop à te soucier de cela pour ce qui est
du coté du moteur.
Autre petit conseil, ton modèle est vraiment superbe, j'espère que pour son emploi par contre dans ton appli Irrlicht (donc 3D temps réél)
tu seras faire baisser le nombre de polygones, car 166368 faces ( près de 4Mo), hmmm, cela fait vraiment beaucoup.... wink


Force et sagesse...

Hors ligne


#30 

21-11-2008 10:35:39

achoura
Membre
Date d'inscription: 30-10-2008
Messages: 41

bonjour,smile
humm,,, j'ai pas fait attention coté optimisation du polygone merci pour votre conseil wink, on faite il y a dans 3dsmax des modificateurs d'optimisation concu spécialement à diminuer le nombre de face. j'avance un peu dans la compréhension du code pour laisser un peu de temps pour une assistance coté graphique. je reste dans les parages, merci encore et @bientôt big_smile


Le vrai savoir c'est ce qu'il reste dans le cerveau après tous oubliés.

Hors ligne


#31 

27-11-2008 13:39:01

achoura
Membre
Date d'inscription: 30-10-2008
Messages: 41

bonjour , I miss all of you,,,,smile

voila je plente !!!!!!!!!!!!!!!! CTRL - ALT - SUPP  sad  pourtant c'est un code basique, une simple bouton pour faire quitter(closeDevice) mais dés que je met le curseur sur le bouton un message style billGates ""arrêt du processus par windows"",,,,,,,,,,, ce qui me semble étrange que j'ai suivi le meme démarche qu'avec le code de l'exemple sdk irrlicht N°5:userInterface. please help et merci

Code:

#include <irrlicht.h>
#include <iostream.h>
#include <conio.h>
#include <stdio.h>
#include <windows.h>

using namespace irr;
using namespace core;
using namespace scene;
using namespace video;
using namespace io;
using namespace gui;
using namespace std;

#pragma comment(lib, "Irrlicht.lib")
IrrlichtDevice *device = 0;
core::stringc StartUpModelFile;
core::stringw MessageText;
core::stringw Caption;
/*------------------------------------------------------*/
class MyEventListener : public IEventReceiver
{
public:
    virtual bool OnEvent(const SEvent& event) //on surcharge la methode OnEvent
    {
        if (event.EventType == EET_GUI_EVENT)
        {
                s32 id = event.GUIEvent.Caller->getID();
                IGUIEnvironment* gui_environment = device->getGUIEnvironment();

                                switch(event.GUIEvent.EventType)
                                        {
                                            case EGET_BUTTON_CLICKED:

                                                    if (id == 101)
                                                                {
                                                                    device->closeDevice();
                                                                    cout << "erreur ici !!" << endl;
                                                                    return true;
                                                                }

                                            default:
                                            break;

                                        }

        }

    return false;
    }
};

/* **********************************************************************************************************************  */
/* **********************************************************************************************************************  */
int main()
{
cout << "\tpfa_____Esprit-3D-Simulation________realised by Achraf _&_ Wajdi\n";
cout << "\n\n\n\t\t*********** Welcome to our test console ***********";
/*variable to save the user driver choice*/
E_DRIVER_TYPE userDevice;
printf("\n\nPlease choose your driver type :");
printf("\n (1) Direct3D 9.0c\n (2) Direct3D 8.1\n (3) OpenGL 1.5\n"\
        " (4) Software Renderer\n (5) Burning's Software Renderer\n"\
        " (6) NullDevice\n (otherKey) exit\n\n");


int i;
cin >>i;
switch(i)
    {
        case 1: userDevice = video::EDT_DIRECT3D9;break;
        case 2: userDevice = video::EDT_DIRECT3D8;break;
        case 3: userDevice = video::EDT_OPENGL;   break;
        case 4: userDevice = video::EDT_SOFTWARE; break;
        case 5: userDevice = video::EDT_BURNINGSVIDEO;break;
        case 6: userDevice = video::EDT_NULL;     break;
        default: return 1;
    }

IrrlichtDevice *device = createDevice(userDevice,dimension2d<s32>(1024,768),32,
                false, false, false, 0);

/* Title for the window created*/
device->setWindowCaption(L"Virtuel Esprit-3D-Simulation");
device->setResizeAble(true);

IVideoDriver  *driver = device->getVideoDriver();
ISceneManager *scene_manager = device->getSceneManager();
IGUIEnvironment *gui_environment = device->getGUIEnvironment();
/*Remember :  driver ----- scene_manager  ------ gui_environement */

MyEventListener receiver; //objet de la calsse crée MyEventReciever
    device->setEventReceiver(&receiver);

/* **********************************************************************************************************************  */
/* **********************************************************************************************************************  */
/* Description : les éléments de la scene */
/* **********************************************************************************************************************  */
/* **********************************************************************************************************************  */

// read configuration from xml file

    io::IXMLReader* xml = device->getFileSystem()->createXMLReader(
        "achraf_config.xml");

    while(xml && xml->read())
    {
        switch(xml->getNodeType())
        {
        case io::EXN_TEXT:
            // in this xml file, the only text which occurs is the messageText
            MessageText = xml->getNodeData();
            break;
        case io::EXN_ELEMENT:
            {
                if (core::stringw("startUpModel") == xml->getNodeName())
                    StartUpModelFile = xml->getAttributeValue(L"file");
                else
                if (core::stringw("messageText") == xml->getNodeName())
                    Caption = xml->getAttributeValue(L"caption");
            }
            break;
        }
    }

    if (xml)
        xml->drop(); // don't forget to delete the xml reader



// add the blue screen wallpaper
ITexture *wallpaper = driver->getTexture("../../media/blue_screen.jpg"); // instance pour contenir l'image & ajouter le lien de l'image
if (!wallpaper){
cout << "probleme de chargement de l'image blue_screen" << endl;
return 1;
}
ITexture *esprit_logo = driver->getTexture("../../media/esprit_logo.jpg");
if (!esprit_logo) {
cout << "probleme de chargement de l'image esprit_logo" << endl;
return 1;
}
//driver->makeColorKeyTexture (esprit_logo, video::SColor (0,255,255,255)); choose a color to be transparent

IGUISkin* skin = gui_environment->getSkin();
    IGUIFont* font = gui_environment->getFont("../../media/fonthaettenschweiler.bmp");
    if (font)
        skin->setFont(font);

    skin->setFont(gui_environment->getBuiltInFont(), EGDF_TOOLTIP);


    gui_environment->addButton(rect<s32>(900,710,1000,710 + 32), 0, 101, L"Quitter", L"Quitter l'application");
    //gui_environment->addButton(rect<s32>(10,280,110,280 + 32), 0, 102, L"New Window", L"Launches a new Window");
    //gui_environment->addButton(rect<s32>(10,320,110,320 + 32), 0, 103, L"File Open", L"Opens a file");

/* **********************************************************************************************************************  */
/* **********************************************************************************************************************  */

while(device->run() && driver)
{
    if (device->isWindowActive())
    {
    driver->beginScene(true, true, SColor(255,218,218,218));

    driver->draw2DImage(wallpaper,core::position2d<s32> (0,100));
    driver->draw2DImage(esprit_logo,core::position2d<s32> (0,0));

    scene_manager->drawAll();
    gui_environment->drawAll();

    driver->endScene();
}
else
            device->yield();
    }

device->drop();

return 0;
}

Le vrai savoir c'est ce qu'il reste dans le cerveau après tous oubliés.

Hors ligne


#32 

27-11-2008 13:57:25

tmyke
Administrateur
Date d'inscription: 24-03-2008
Messages: 1025

Heeeuu, juste vite fait comme ça, un '    device->drop();' plutot qu'un closedevice , non ?

(j'suis au boulot et en plus j'ai pas les media pour tester ton code wink  )


Force et sagesse...

Hors ligne


#33 

28-11-2008 21:52:18

achoura
Membre
Date d'inscription: 30-10-2008
Messages: 41

Bonjour,
voila je me suis débrouiller pour que le code marche,,,, on faite j'ai repris l'exemple 5 de irrlicht (userInterface) et j'ai juste changer quelque bouton,position, meme supprimer des choses et par magie ça marche pourtant c le meme code (( je pense que c l'histoir de link des bibliotheque)) et de ce topo j'aime poser une question plus detailler,,,,, je travaille avec codeBlocks :: je ne sais pas par exemple ajouter un exemple de irrKlang(audio) dans un exemple irrlicht !!?? autre chose ,,, comment par exemple passer d'un interface d''acceuil vers un autre tout a fait différent on cliquant sur button NEXT par exemple... comment partager les fonctions dans différantes classe et les intégérer dans le boucle de rendu.... svp si quelqun a compris un peu ce chao de question qu'il essay de m'aider [ point de vue gestion et organisation surtout car vraiment c'est ca ce qui me manque] . si quelqun un fait un projet en 3D qu'il m'aide surtout les étapes à suivre pour tout organiser,,, j'ai des bouts de code qui se balade et j'arrive pas a les unifiers en un seul grand projet... merci de vouloir m'aider


Le vrai savoir c'est ce qu'il reste dans le cerveau après tous oubliés.

Hors ligne


#34 

29-11-2008 09:13:50

tmyke
Administrateur
Date d'inscription: 24-03-2008
Messages: 1025

Holà, holà, pas trop vite wink

Au vue de toutes tes interrogations, je te conseillerais de prendre chaque problème les uns après les autres. Tu semble en plus encore en pleine phase
de formation sur une bonne partie des éléments nécessaire à la réalisation de ton projet, a savoir l'utilisation d'un compilateur, la maitrise de modeleur,
les base de mise en oeuvre d'un moteur 3D, etc...

Donc ne cherche pas à bruler les étapes.

Pour régler chacun de tes soucis, cherches avant tout à faire à chaque fois un petit code, indépendant, avec une minimum d'élément mais mettant bien
en lumière ce que tu souhaites faire. Plus un code est cours et aéré, plus c'est facile de s'y retrouver et donc de trouver les solutions aux problèmes qu'il
comporte.
De plus, il te sera alors facile d'expliquer et de poster ce code ici, ce qui est toujours beaucoup plus simple pour nous pour te donner notre avis et debbuguer
tes listings.

Alors, au boulot wink


Force et sagesse...

Hors ligne


#35 

09-12-2008 02:06:40

achoura
Membre
Date d'inscription: 30-10-2008
Messages: 41

Bonjour, votre conseil me donne de l'adrénaline tu sais !!!! big_smile ,,,,, et j'aime ça . je me suis débrouillé dans pas mal de chose dans je trouvais difficile avant,,, j'ai intégrer irrKlang avec un exemple irrlicht, j'ai fait mon interface bera et mon encadreur est heureux de notre progrès. reste une chose,, est ce que tu peut m'aider dans ça, voila je lance le challange smile . ... j'aime passer d'une scene (une map) vers une autre en passant par exemple par une porte où on trouve un bar de chargement et hopp ,,, on se trouve avec une autre map . le procedure pour integrer une map avec tous ça gestion c possible mais comme faire pour deux.. please please please at least some hints to how to do it


Le vrai savoir c'est ce qu'il reste dans le cerveau après tous oubliés.

Hors ligne


#36 

09-12-2008 10:53:07

Stobbyo
Membre
Date d'inscription: 06-12-2008
Messages: 16

Salut,

Pour appliquer une texture sur ton personnage, il y a un tutoriel en anglais ici.

Une seule précision, le "Face Select Mode" n'existe plus dans la nouvelle version de blender, tout se fait en "Edit Mode".

En gros, il faut faire des points de couture sur ton personnage à des endroits stratégiques, puis faire un "Unwrap" dans blender. Tout est expliqué dans le tutoriel.

A plus,

PS :  Personnellement je galère avec l'animation, aux niveaux des articulations, mon mesh se déforme mal.

PS2 : Il y a d'autres tutoriels sur le site cité précédemment, qui mérite d'être lus.

Hors ligne


#37 

09-12-2008 11:01:55

Stobbyo
Membre
Date d'inscription: 06-12-2008
Messages: 16

Ah, une autre précision, concernant l'exportation de ton personnage vers le moteur Irrlicht, je te conseille le format "b3d", il y a déjà un sujet sur le forum ici.

Pour que l'export fonctionne il ne faut pas utiliser le modifier armature de blender mais parenter, l'armature à ton mesh, avec l'ancienne méthode " CTRL + P ".

A plus,

Désolé si je suis hors sujet wink

Hors ligne


#38 

09-12-2008 14:02:57

achoura
Membre
Date d'inscription: 30-10-2008
Messages: 41

grand merci pour toi, un coup de pouce !! c'est ça ce qui me manquais !!! thanks . reste le challenge que j'ai lancé à propos de passer d'une map vers un autre !!!???!!! anyone strong enough to answer lol


Le vrai savoir c'est ce qu'il reste dans le cerveau après tous oubliés.

Hors ligne


#39 

09-12-2008 18:47:25

tmyke
Administrateur
Date d'inscription: 24-03-2008
Messages: 1025

Bonsoir achoura

Quel sujet intéressant que cette histoire de gestion de map. Dans certaines catégories de jeux, c'est d'ailleurs un enjeux technique
majeur. Manager les map, sans que le joueur sans rende compte, minimiser les accès disque, sans ralentissement niveau fluidité, bref un
challenge technique passionnant.
L'un des aspect les plus retord, c'est quand tu veux faire des passage interieur/exterieur, genre passage du moteur de terrain vers un
level type BSP. Mais cela se fait très bien, PowerRender gère par exemple parfaitement ce genre de technique.

Sinon, pour répondre à ta question de manière précise, il n'y a pas de réponse absolue. Certaines techniques ancestrales employaient des
zones tampon, qui permettaient de décharger une zone, et d'en charger une autre. Mais dans les jeux modernes, ce n'est pas toujours très
satisfaisant, d'autant qu'on donne une liberté totale aux joueur, donc ...
Sinon, si ta map est vraiment trop grande, tu peux sectoriser ton environnement, et ne charger que les 9 secteurs centraux lié à la position
de ton observateur, cela peux être efficace si tu n'as qu'un joueur actif.

Bref, il y a pleins d'autres techniques, à chacun de faire part ici de son expérience et de ses idées...

Quel est le poids de ton level global ? Car une gestion BSP reste très efficace dans une grande partie des cas pour peu que ton niveau ne
soit pas gigantesque... wink


Force et sagesse...

Hors ligne


#40 

09-12-2008 22:54:53

achoura
Membre
Date d'inscription: 30-10-2008
Messages: 41

bonsoir (bonjour),
voila pour le map je te laisse imaginer l'espace pour faire une école de 3 étages, terrain de basquett à l'arrière et un petit parking en avant,,, c a peu prés à l'équivalant dans notre monde de (150 metre * 80 metre) . mais j'aime par exemple que le map de l'exterieur soit séparer de l'intérieur de l'école ,,,,, que passer d'un étage à un autre soit séparer (((( pour moi coté conception/modelisation 3D , ça sera plus facile , et pour ma carte graphique aussi (elle risque d'exploser!!) ))))


Le vrai savoir c'est ce qu'il reste dans le cerveau après tous oubliés.

Hors ligne


#41 

16-12-2008 19:45:59

achoura
Membre
Date d'inscription: 30-10-2008
Messages: 41

bonjour,,,
est ce que vous pouvez m'aider dans ça : est ce que je peux setectionner quelque chose (mesch, objet 3d) dans la scene du jeu. mon objectif est de pouvoir selectionner un mur (avec une texture d'image) et comme réaction il m'affiche une fenetre pour télécharger une fichier. merci smile


Le vrai savoir c'est ce qu'il reste dans le cerveau après tous oubliés.

Hors ligne


#42 

16-12-2008 19:59:28

tmyke
Administrateur
Date d'inscription: 24-03-2008
Messages: 1025

As-tu regardé du coté des systemes de picking ?


Force et sagesse...

Hors ligne


#43 

17-12-2008 10:24:57

achoura
Membre
Date d'inscription: 30-10-2008
Messages: 41

smile ....oui le terme "picking" se trouve par exemple dans l'exemple 7:collision. je cherche encore pour pas vous énerver trop mais ce que je veus réellement c'est l'interaction entre objet pas au point de vue collision,,,plutot ::(ex: selection d'une image plaquer sur le mur pour avoir un menu ou ouverture d'une page web ,,,etc). merci comme même


Le vrai savoir c'est ce qu'il reste dans le cerveau après tous oubliés.

Hors ligne


#44 

17-12-2008 10:53:00

tmyke
Administrateur
Date d'inscription: 24-03-2008
Messages: 1025

Je comprends, je pense, plus ou moins ce que tu cherches à faire. En fait, tu souhaiterais simplement qu'il y ai une interaction du player
avec son environnement, comme prendre des truc, ou encore si on click sur une affiche, on en visualise le contenue ou cela amène
à un lien vers une page Web...
Dans tous les cas, une des seules solution en passe par un test de collision. Ton image sur le mur dans ce cas peut se définir comme
un cadre contenant l'image (donc un mesh 3D). Dans ce cas un test de col dessus est très réalisable, et donc cela te permettra d'enclencher l'événement
que tu souhaite quand une collision sera détectée avec ce cadre, non ?


Force et sagesse...

Hors ligne


#45 

18-12-2008 10:50:44

achoura
Membre
Date d'inscription: 30-10-2008
Messages: 41

ah oui ok,,,,,bien. c bien de t'avoir tu sais big_smile . ok je fera mes recherches pour appliquer ça et on verra aprés. thanks for your help bye


Le vrai savoir c'est ce qu'il reste dans le cerveau après tous oubliés.

Hors ligne


#46 

09-01-2009 12:44:42

achoura
Membre
Date d'inscription: 30-10-2008
Messages: 41

bonjour,,, bonne nanéé 2009 pour tous les fun de irrLicht !!!
fini les vacances, travaillons un peu. j'ai séparré mon code sur des différents class ( c-a-d les menu à part,, mon map 3d à part etc...).
je cherche à ajouter des animations dans l'interface de  l'acceuill (comme les animations swf de flash ou autre format pour les applications C++) mais je ne sais pas en c++ comme ajouter ça ??? ou ajouter une cinematique video *.avi ou *.wmv . est ce que vous avez une idée ou un exemple d'inplementation de tels fichiers dans mon projet irrL??!! ah à propos mes nouvelles,,, l'administration ma fournie enfin le plan autocad DWG réelle de l'école,,, j'ai commencé à travaillé le vrai map et je vous promets bientot de poster mes screenshot ver. Beta ha ha big_smile. j'ai confiance en vous alors j'attend vos instructions et merci.@bientôt

Dernière modification par achoura (09-01-2009 12:46:33)


Le vrai savoir c'est ce qu'il reste dans le cerveau après tous oubliés.

Hors ligne


#47 

14-01-2009 10:43:15

achoura
Membre
Date d'inscription: 30-10-2008
Messages: 41

coucou,,, y a kel-kun !!!!??? je vois que tous le monde travaille sad .... j'attend comme même


Le vrai savoir c'est ce qu'il reste dans le cerveau après tous oubliés.

Hors ligne


#48 

14-01-2009 13:27:10

Magun
SleekThink Producer
Lieu: Punakha
Date d'inscription: 18-11-2007
Messages: 910
Corrections: 2
Site web

oui je suis la 17h/24h au besoin big_smile
si je peut aidé demande toujours mais au risque que je me trompe smile

Hors ligne


#49 

14-01-2009 18:38:48

tmyke
Administrateur
Date d'inscription: 24-03-2008
Messages: 1025

Pour les video je n'ai pas de code sous la main, mais cela ne dois pas être trop compliqué de trouver cela sur la toile.
Après, tout dépends de ton intégration de ces video dans ton projet, si il s'agit juste de video de présentation, alors cela ne devrait
pas être trop difficile, si par contre tu veux intégrer ces video dans des scene IRrlicht, là faudra voir wink


Force et sagesse...

Hors ligne


Options Liens officiels Caractéristiques Statistiques Communauté
Corrections
irrlicht
irrklang
irredit
irrxml
xhtml 1.0
css 2.1
Propulsé par FluxBB
Traduit par FluxBB.fr
883 membres
1429 sujets
11121 messages
Dernier membre inscrit: Saidov17
122 invités en ligne
Aucun membre connecté
RSS Feed