18-01-2009 09:57:05
- ayboangelus
- Membres

- Date d'inscription:
- Messages: 53
- IP: 81.56.210.72
- Courriel
Bonjour,
Actuellement j'ai 2 problèmes. Le premier est la gestion de mon éclairage je souhaite une lumière ambiante pas trop forte mais suffisement pour que l'on voit bien l'environnement et un éclairage dynamique plus puissant.
Mais en fait j'ai trop de lumière sur la zone éclairé et rien sur la zone d'ombre. J'ai essayé de jouer sur la luminosité de l'ombre mais je dois avoir des soucis de paramétrages. Voici mon code:
// create light
scenegraph->setAmbientLight(video::SColorf(1.0, 1.0, 1.0,1.0));
node = smgr->addLightSceneNode(0, core::vector3df(0,0,0),
video::SColorf(1.0f, 0.6f, 0.7f, 1.0f), 800.0f);
scene::ISceneNodeAnimator* anim = 0;
scenegraph -> setShadowColor (video::SColor(200,250,250,250));
anim = smgr->createFlyStraightAnimator (core::vector3df(-50,150,-50),core::vector3df(450,150,450),36000,true);
node->addAnimator(anim);
anim->drop();
// attach billboard to light
node = smgr->addBillboardSceneNode(node, core::dimension2d<f32>(50, 50));
node->setMaterialFlag(video::EMF_LIGHTING, false);
node->setMaterialType(video::EMT_TRANSPARENT_ADD_COLOR);
node->setMaterialTexture(0, driver->getTexture("images/particlewhite.bmp"));et enfin j'essaie de faire de la fumée pour mon volcan mais je dirais que c'est un peu la catastrophe. On m'a conseillé de passer par la gestion des particules, mais le résultat n'est pas là:
particule
scene::IParticleSystemSceneNode* ps = smgr->addParticleSystemSceneNode(false);
ps->setPosition(core::vector3df(0,20,0));
ps->setScale(core::vector3df(1,1,1));
ps->setParticleSize(core::dimension2d<f32>(20.0f, 20.0f));
scene::IParticleEmitter* em = ps->createBoxEmitter(
core::aabbox3d<f32>(0,0,0,0.01f,0.01f,0.01f), // emitter size
core::vector3df(0.0f,1,0.0f), // initial direction
500,1000, // emit rate
video::SColor(255,128,128,128), // darkest color
video::SColor(255,192,192,192), // brightest color
100,500,15, // min and max age, angle
core::dimension2df(0.1f,0.1f), // min size
core::dimension2df(100,100)); // max size
ps->setEmitter(em); // this grabs the emitter
em->drop(); // so we can drop it here without deleting it
scene::IParticleAffector* paf = ps->createFadeOutParticleAffector();
ps->addAffector(paf); // same goes for the affector
paf->drop();
ps->setMaterialFlag(video::EMF_LIGHTING, false);
ps->setMaterialFlag(video::EMF_ZWRITE_ENABLE, false);
ps->setMaterialTexture(0, driver->getTexture("images/smoke.png"));
ps->setMaterialType(video::EMT_TRANSPARENT_V00ERTEX_ALPHA);Si ça en inspire certain ^^, merci d'avance pour l'aide.
Akhynia - MMORPG en projet => http://www.akhynia.fr
Hors ligne
18-01-2009 11:33:04
- johnplayer
- Membres

- Date d'inscription:
- Messages: 431
- IP: 86.192.69.73
- Courriel
Un conseil : n'utilise pas scenegraph->setAmbienteLight().
Utilise plutot les SLight :
// Le soleil
ILightSceneNode * Soleil = smgr->addLightSceneNode(0, vector3df(-1000,1000,0), SColorf(1.0f,1.0f,1.0f,1.0f), 10000.0f, -1);
SLight soleil_data;
soleil_data = Soleil->getLightData();
soleil_data.AmbientColor = SColor(0,25,25,25); // couleur ambiente
Soleil->setLightData(soleil_data);
refere toi a la doc pour plus de proprietes de SLight.
core i7 4970K @ 4GHz - 32GB ddr3 19200(2400MHz) - ssd samsung 840 evo 250GB - GTX1080Ti (4K) - Cooler master storm stryker blanc.
"L'alcool, c'est comme Activia, c'est actif à l'intérieur et ça se voit à l'extérieur."
Hors ligne
18-01-2009 16:19:40
- ayboangelus
- Membres

- Date d'inscription:
- Messages: 53
- IP: 81.56.210.72
- Courriel
Merci je regarde cela de suite.
Akhynia - MMORPG en projet => http://www.akhynia.fr
Hors ligne
18-01-2009 21:58:18
- ayboangelus
- Membres

- Date d'inscription:
- Messages: 53
- IP: 81.56.210.72
- Courriel
Merci Johnplayer pour le tuyau ca fonctionne maintenant. En fait j'avais un autre soucis c'était l'exportation de mon perso qui merdait.
Maya > obj mal géré. transformé en .b3d nickel. C'est validé je reste sur ce format.
Bonne soirée @ tous.
Akhynia - MMORPG en projet => http://www.akhynia.fr
Hors ligne



