#0 

25-06-2008 23:31:16

epsilon99
Petit nouveau
Date d'inscription: 25-06-2008
Messages: 7

Bonjour,
J'ai un problem avec les texture
Il ne les affiche pas, les objet restent noir

voivi le code :

int main(void)
{

    IrrlichtDevice* device = createDevice(video::EDT_OPENGL, core::dimension2d<s32>(640,480),32,false,true,false,0);
    video::IVideoDriver* driver = device->getVideoDriver ();
    scene::ISceneManager *scenegraph = device->getSceneManager ();

    //On rend invisible le curseur
    device->getCursorControl ()-> setVisible (true);

     //On recupere un pointeur vers la gui
    IGUIEnvironment *gui = device->getGUIEnvironment();

     irr::core::vector3df posCam;
     wchar_t titre[100];

    scene::IAnimatedMesh* sol;
    sol = scenegraph->getMesh("OBJET/sol.3ds");
    scene::ImeshSceneNode *Nsol = scenegraph->addMeshSceneNode(sol->getMesh(0));
    Nsol->setPosition(irr::core::vector3df(0,0,0));



    scene::IAnimatedMesh* cube;
    cube = scenegraph->getMesh("OBJET/cube.3ds");
    scene::ImeshSceneNode *Ncube = scenegraph->addMeshSceneNode(cube->getMesh(0));
    Ncube->setPosition(irr::core::vector3df(0,5,0));
    //On modifie les propriétés de Sydney
    Ncube->setMaterialTexture( 0, driver->getTexture("IMAGE/sol.jpg") );


    //La caméra
    ICameraSceneNode *camera;
    camera = scenegraph->addCameraSceneNodeFPS (0,100.0f,20.0f, -1, 0, 5, true, 0.4);
    camera->setPosition(irr::core::vector3df(4, 1, 4));

    //lumiere
    irr::scene::ILightSceneNode* lumiere;
    lumiere = scenegraph->addLightSceneNode(camera, irr::core::vector3df(0,0,0),
    irr::video::SColorf(50.0f, 50.0f, 50.0f, 10.0f), 5.0f);

    irr::scene::ITriangleSelector *selectorCube = 0;
    if(Ncube)
    {
        selectorCube = scenegraph->createOctTreeTriangleSelector(cube->getMesh(0), Ncube);
        Ncube->setTriangleSelector(selectorCube);
        selectorCube->drop();
    }
    irr::scene::ITriangleSelector *selectorSol = 0;
    if(Nsol)
    {
        selectorSol = scenegraph->createOctTreeTriangleSelector(sol->getMesh(0), Nsol);
        Nsol->setTriangleSelector(selectorSol);
        selectorSol->drop();
    }

IMetaTriangleSelector* metaSelectorSol = scenegraph->createMetaTriangleSelector();
metaSelectorSol->addTriangleSelector(selectorSol);

scene::ISceneNodeAnimatorCollisionResponse* gestionSol = scenegraph->createCollisionResponseAnimator(metaSelectorSol, camera,vector3df(500,500, 500),vector3df(0,-100.0f, 0), vector3df(0,0, 0), 0.0005f);
camera->addAnimator(gestionSol);

    //La boucle de rendu
    while (device->run())
    {
        posCam = camera->getPosition();
        swprintf(titre, L"FPS : %d (mode debug) |  PosCam :  "
        "X : %f Y : %f Z : %f", driver->getFPS(), posCam.X, posCam.Y, posCam.Z);
        device->setWindowCaption(titre);
        driver->beginScene(true,true,video::SColor(0,0,0,0));
        scenegraph->drawAll ();
        driver->endScene ();
    }

    device->drop ();
    return 0;
}

J'ai essayé différent format d'objet et Image mais c'est toujours pareille
help me please

Hors ligne


#1 

25-06-2008 23:42:22

Aranoth
Abonné
Lieu: Toulouse
Date d'inscription: 25-09-2006
Messages: 242
Site web

Des objets noirs c'est typiquement un problème de lumière.

Je vois que tu as ajouté une lumière à ta scène, c'est déjà ça, mais peut être est-elle mal calibrée et n'éclaire en réalité rien.

Hors ligne


#2 

25-06-2008 23:45:29

epsilon99
Petit nouveau
Date d'inscription: 25-06-2008
Messages: 7

J'est testé avec une lumiere qui sui la caméra
j'ai tourné autour des objet mais rien du tou

Hors ligne


#3 

26-06-2008 10:53:16

Aranoth
Abonné
Lieu: Toulouse
Date d'inscription: 25-09-2006
Messages: 242
Site web

T'as essayé de désactiver la lumière sur tes objets ? Histoire qu'on sache si ça vient de là.

Hors ligne


#4 

26-06-2008 16:51:41

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

essey avec sa pour ta lumiere ^^

ILightSceneNode* light = smgr->addLightSceneNode(0, core::vector3df(0,0,0),SColorf(255, 255, 255, 255), 1000.0f); /** 1000.0f = distance d'effect pour la lumiere wink je te conseille entre 80.f et 150.f pour ton truc ^^" **/
    SLight ldata = light->getLightData();
        ldata.AmbientColor = video::SColorf(0.2,0.2,0.2);
    ldata.DiffuseColor = video::SColorf(1,1,1);
    ldata.Type = ELT_DIRECTIONAL;
    ldata.Position = core::vector3df(-10,5,-5);
    light->setLightData(ldata);

Hors ligne


#5 

26-06-2008 18:48:13

epsilon99
Petit nouveau
Date d'inscription: 25-06-2008
Messages: 7

même avec ca ya toujours pas les textures

C'est comme si elle été pas coller sur les objet

Si je prend des fichier BMP il me met des couleur unie qui non rien a voir

#include <irrlicht.h>
#include "Const.h"
#include "CEventReceiver.h"

using namespace irr;

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



int main(void)
{

    IrrlichtDevice* device = createDevice(video::EDT_OPENGL, core::dimension2d<s32>(640,480),32,false,true,false,0);
    video::IVideoDriver* driver = device->getVideoDriver ();
    scene::ISceneManager *scenegraph = device->getSceneManager ();

    //On rend invisible le curseur
    device->getCursorControl ()-> setVisible (true);

     //On recupere un pointeur vers la gui
    IGUIEnvironment *gui = device->getGUIEnvironment();

    irr::core::vector3df posCam;
    wchar_t titre[100];

    scene::IAnimatedMesh* sol;
    sol = scenegraph->getMesh("OBJET/sol.3ds");
    scene::ImeshSceneNode *Nsol = scenegraph->addMeshSceneNode(sol->getMesh(0));
    Nsol->setPosition(irr::core::vector3df(0,0,0));
    Nsol->setMaterialTexture( 0, driver->getTexture("IMAGE/sol2.bmp") );


    scene::IAnimatedMesh* cube;
    cube = scenegraph->getMesh("OBJET/cube.3ds");
    scene::ImeshSceneNode *Ncube = scenegraph->addMeshSceneNode(cube->getMesh(0));
    Ncube->setPosition(irr::core::vector3df(0,5,0));
    //On modifie les propriétés de Sydney
    Ncube->setMaterialTexture( 0, driver->getTexture("IMAGE/face.bmp") );


    //La caméra
    ICameraSceneNode *camera;
    camera = scenegraph->addCameraSceneNodeFPS (0,100.0f,20.0f, -1, 0, 5, true, 0.4);
    camera->setPosition(irr::core::vector3df(4, 1, 4));

    //lumiere
    irr::scene::ILightSceneNode* lumiere;
    lumiere = scenegraph->addLightSceneNode(0,irr::core::vector3df(4,3,4),irr::video::SColorf(1.0f, 1.0f, 1.0f), 1000.0f);


    irr::scene::ITriangleSelector *selectorCube = 0;
    if(Ncube)
    {
        selectorCube = scenegraph->createOctTreeTriangleSelector(cube->getMesh(0), Ncube);
        Ncube->setTriangleSelector(selectorCube);
        selectorCube->drop();
    }
    irr::scene::ITriangleSelector *selectorSol = 0;
    if(Nsol)
    {
        selectorSol = scenegraph->createOctTreeTriangleSelector(sol->getMesh(0), Nsol);
        Nsol->setTriangleSelector(selectorSol);
        selectorSol->drop();
    }

IMetaTriangleSelector* metaSelectorSol = scenegraph->createMetaTriangleSelector();
metaSelectorSol->addTriangleSelector(selectorSol);

scene::ISceneNodeAnimatorCollisionResponse* gestionSol = scenegraph->createCollisionResponseAnimator(metaSelectorSol, camera,vector3df(500,500, 500),vector3df(0,-100.0f, 0), vector3df(0,0, 0), 0.0005f);
camera->addAnimator(gestionSol);

    //La boucle de rendu
    while (device->run())
    {
        posCam = camera->getPosition();
        swprintf(titre, L"FPS : %d (mode debug) |  PosCam :  "
        "X : %f Y : %f Z : %f", driver->getFPS(), posCam.X, posCam.Y, posCam.Z);
        device->setWindowCaption(titre);
        driver->beginScene(true,true,video::SColor(0,0,0,0));
        scenegraph->drawAll ();
        driver->endScene ();
    }

    device->drop ();
    return 0;
}

Hors ligne


#6 

27-06-2008 12:01:31

Aranoth
Abonné
Lieu: Toulouse
Date d'inscription: 25-09-2006
Messages: 242
Site web

Si je prend des fichier BMP il me met des couleur unie qui non rien a voir


Ca doit venir des coordonnées de texture alors, essayes de voir ton modèle dans le MeshViewer d'Irrlicht, pour voir si ça vient de ton code ou du modèle en lui même.

Hors ligne


#7 

27-06-2008 17:14:35

epsilon99
Petit nouveau
Date d'inscription: 25-06-2008
Messages: 7

J'ai deux fichier un vert unie et une texture de sol
ils sont tous les deux dans IMAGE/
si je met le vert sur le cube il s'affiche mais pas la texture
aucun des deux ne s'affiche sur le sol

sad

Hors ligne


#8 

03-07-2008 20:14:02

Corvet
Petit nouveau
Lieu: France, Grenoble
Date d'inscription: 01-07-2008
Messages: 7

Tu pourrais utiliser le BBCode pour tes codes source
Les balises de BBcode.

Hors ligne


#9 

03-07-2008 20:52:53

epsilon99
Petit nouveau
Date d'inscription: 25-06-2008
Messages: 7

C'est bon j'ai trouvé
si ma camera, au démarage est trop proche du au niveau du sol (a moins de 1) le sol ne s'affiche pas
et j'ai pris d'autre texture en JPG
merci pour vos réponses

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
881 membres
1427 sujets
11117 messages
Dernier membre inscrit: Bidule
28 invités en ligne
Aucun membre connecté
RSS Feed