- Timestamp:
- 06/27/06 10:21:48 (19 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
GTP/trunk/Lib/Illum/IllumModule/OgreIllumModule/src/RenderTechniques/OgreHierarchicalParticleSystemTechnique.cpp
r1055 r1062 24 24 this->childPSysScriptName = childPSysScriptName; 25 25 this->impostorMaterialName = impostorMaterialName; 26 26 this->useOwnMaterial = useOwnMaterial; 27 28 //create the Particle system 29 childPSysName = parentOgreRenderable->getName() + "_small_PSYS"; 30 ParticleSystem* psys = Root::getSingleton()._getCurrentSceneManager()->createParticleSystem(childPSysName, childPSysScriptName); 31 SceneNode* node = Root::getSingleton()._getCurrentSceneManager()->getRootSceneNode()->createChildSceneNode(); 32 node->attachObject(psys); 33 psys->setVisible(false); 27 34 28 35 if(sharedRuns->getRun(ILLUMRUN_HPP_IMPOSTOR) == 0) 29 36 sharedRuns->addRun(ILLUMRUN_HPP_IMPOSTOR, createChildPSysRenderingRun()); 30 37 31 //create the Particle system 32 String name = parentOgreRenderable->getName() + "_small_PSYS"; 33 ParticleSystem* psys = Root::getSingleton()._getCurrentSceneManager()->createParticleSystem(name, childPSysScriptName); 34 SceneNode* node = Root::getSingleton()._getCurrentSceneManager()->getRootSceneNode()->createChildSceneNode(); 35 node->attachObject(psys); 36 psys->setVisible(false); 38 impostorChanged(sharedRuns->getRun(ILLUMRUN_HPP_IMPOSTOR)); 37 39 } 38 40 … … 41 43 { 42 44 45 } 46 47 void OgreHierarchicalParticleSystemTechnique::impostorChanged(RenderingRun* run) 48 { 49 OgreChildPSystemRenderingRun* r = (OgreChildPSystemRenderingRun*) run->asOgreRenderingRun(); 50 pass->getTextureUnitState(impostorTexID)->setTextureName(r->getImpostorTextureName()); 43 51 } 44 52 … … 178 186 } 179 187 188
Note: See TracChangeset
for help on using the changeset viewer.