Changeset 2057 for GTP/trunk/App/Demos/Illum/Ogre/src/GameToolsRaytraceDemo/include/GameToolsRaytraceDemo.h
- Timestamp:
- 01/24/07 21:46:05 (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
GTP/trunk/App/Demos/Illum/Ogre/src/GameToolsRaytraceDemo/include/GameToolsRaytraceDemo.h
r2025 r2057 30 30 31 31 float causize = 10; 32 float cauintens = 40;32 float cauintens = 1; 33 33 34 34 // Listener class for frame updates … … 66 66 } 67 67 bool processUnbufferedKeyInput(const FrameEvent& evt) 68 { /*69 MaterialPtr mat = MaterialManager::getSingleton().getByName("G ameTools/Cauathene_SE_0_clone");68 { 69 MaterialPtr mat = MaterialManager::getSingleton().getByName("GTP/Caustic/CauCube_PointSpritecenterHead_SE_0_clone"); 70 70 GpuProgramParameters* Vparams = mat->getTechnique(0)->getPass(0)->getVertexProgramParameters().getPointer(); 71 71 GpuProgramParameters* Fparams = mat->getTechnique(0)->getPass(0)->getFragmentProgramParameters().getPointer(); … … 75 75 cauintens -= 0.5; 76 76 cauintens = std::max(cauintens, 1.0f); 77 float intensity = pow( cauintens / 100.0f, 2 ); 78 Fparams->setNamedConstant("CauSpriteIntens", intensity); 77 float intensity = cauintens; 78 float causticColor[] = {1.0, 1.0, 1.0, intensity}; 79 Fparams->setNamedConstant("CausticColor", causticColor, 4); 79 80 } 80 81 if (mInputDevice->isKeyDown(KC_ADD)) … … 83 84 cauintens = std::min(cauintens, 100.0f); 84 85 float intensity = pow( cauintens / 100.0f, 2 ); 85 Fparams->setNamedConstant("CauSpriteIntens", intensity); 86 float causticColor[] = {1.0, 1.0, 1.0, intensity}; 87 Fparams->setNamedConstant("CausticColor", causticColor, 4); 86 88 } 87 89 if (mInputDevice->isKeyDown(KC_MULTIPLY)) … … 95 97 Vparams->setNamedConstant("CauSpriteSize", causize); 96 98 } 97 */ 98 if (mInputDevice->isKeyDown(KC_SPACE)) 99 { 100 mTimeUntilNextToggle = 2; 101 static bool first = true; 102 first = !first; 103 goldSphereNode->setVisible(first,true); 104 goldSphereNode->setVisible(!first,false); 105 aluSphereNode->setVisible(first,true); 106 aluSphereNode->setVisible(!first,false); 107 silverSphereNode->setVisible(first,true); 108 silverSphereNode->setVisible(!first,false); 109 copperSphereNode->setVisible(first,true); 110 copperSphereNode->setVisible(!first,false); 111 centerSphereNode->setVisible(first,true); 112 centerSphereNode->setVisible(!first,false); 113 114 115 } 116 99 117 100 return ExampleFrameListener::processUnbufferedKeyInput(evt); 118 101 } … … 120 103 { 121 104 static bool first = true; 122 /*if(first)105 if(first) 123 106 { 124 MaterialPtr mat = MaterialManager::getSingleton().getByName("G ameTools/Cauathene_SE_0_clone");107 MaterialPtr mat = MaterialManager::getSingleton().getByName("GTP/Caustic/CauCube_PointSpritecenterHead_SE_0_clone"); 125 108 GpuProgramParameters* Vparams = mat->getTechnique(0)->getPass(0)->getVertexProgramParameters().getPointer(); 126 109 GpuProgramParameters* Fparams = mat->getTechnique(0)->getPass(0)->getFragmentProgramParameters().getPointer(); 127 float intensity = pow( cauintens / 100.0f, 2 ); 128 Fparams->setNamedConstant("CauSpriteIntens", intensity); 110 float intensity = cauintens; 111 float causticColor[] = {1.0, 1.0, 1.0, intensity}; 112 Fparams->setNamedConstant("CausticColor", causticColor, 4); 129 113 Vparams->setNamedConstant("CauSpriteSize", causize); 130 114 first = false; 131 } */115 } 132 116 133 117 lightNode->setPosition( 100.0 * Vector3(cos(-(float)framecount/500.0),2.0,sin(-(float)framecount/500.0))); … … 187 171 ResourceGroupManager::getSingleton().initialiseResourceGroup("Bootstrap"); 188 172 ResourceGroupManager::getSingleton().initialiseResourceGroup("General"); 173 ResourceGroupManager::getSingleton().initialiseResourceGroup("GTP_Basic"); 189 174 ResourceGroupManager::getSingleton().initialiseResourceGroup("PostProc"); 175 ResourceGroupManager::getSingleton().initialiseResourceGroup("GTP_EnvMap"); 176 ResourceGroupManager::getSingleton().initialiseResourceGroup("GTP_Caustic"); 190 177 } 191 178 … … 212 199 OgreIlluminationManager::getSingleton().setMainViewport(mWindow->getViewport(0)); 213 200 214 OgreIlluminationManager::getSingleton().setMaxJoinRadius( 420);201 OgreIlluminationManager::getSingleton().setMaxJoinRadius(1000); 215 202 216 203 Root::getSingleton()._setCurrentSceneManager(mSceneMgr); … … 237 224 Entity* aluHead = mSceneMgr->createEntity("aluHead", "head.mesh"); 238 225 239 Entity* centerSphere = mSceneMgr->createEntity("centerSphere", "sphere.mesh");240 Entity* goldSphere = mSceneMgr->createEntity("goldSphere", "sphere.mesh");241 Entity* silverSphere = mSceneMgr->createEntity("silverSphere", "sphere.mesh");242 Entity* copperSphere = mSceneMgr->createEntity("copperSphere", "sphere.mesh");243 Entity* aluSphere = mSceneMgr->createEntity("aluSphere", "sphere.mesh");244 245 246 247 226 kupola->setCastShadows(false); 248 //lod 249 //MeshPtr amesh = athene->getMesh(); 250 //Mesh::LodDistanceList distances; 251 //distances.push_back(1); 252 //distances.push_back(2); 253 //distances.push_back(3); 254 //distances.push_back(4); 255 ////distances.push_back(5); 256 //amesh->generateLodLevels(distances,ProgressiveMesh::VertexReductionQuota::VRQ_PROPORTIONAL,0.6); 257 //athene->setMeshLodBias(50000.0,0); 258 //tangents 259 //amesh->buildTangentVectors(0,1); 227 260 228 MeshPtr kmesh = kupola->getMesh(); 261 229 kmesh->buildTangentVectors(0,1); … … 270 238 271 239 centerSphereNode = rootNode->createChildSceneNode("centerSphere"); 272 SceneNode* centerHeadNode = centerSphereNode->createChildSceneNode("centerHead");273 240 centerSphereNode->setPosition(0, 100,0); 274 centerHeadNode->attachObject(centerHead); 275 centerSphereNode->attachObject(centerSphere); 276 centerSphereNode->setScale(0.4,0.4,0.4); 277 centerHeadNode->setScale(8,8,8); 278 centerHeadNode->setVisible(false, false); 279 280 241 centerSphereNode->attachObject(centerHead); 242 centerSphereNode->setScale(3.2, 3.2, 3.2); 243 281 244 goldSphereNode = rootNode->createChildSceneNode( "goldSphere" ); 282 SceneNode* goldHeadNode = goldSphereNode->createChildSceneNode( "goldHead" ); 283 goldSphereNode->scale(0.3,0.3,0.3); 284 goldHeadNode->setScale(8,8,8); 285 goldHeadNode->setVisible(false, false); 286 245 goldSphereNode->scale(2.4, 2.4, 2.4); 246 goldSphereNode->attachObject(goldHead); 247 287 248 silverSphereNode = rootNode->createChildSceneNode( "silverSphere" ); 288 SceneNode* silverHeadNode = silverSphereNode->createChildSceneNode( "silverHead" ); 289 silverSphereNode->scale(0.3,0.3,0.3); 290 silverHeadNode->setScale(8,8,8); 291 silverHeadNode->setVisible(false, false); 292 249 silverSphereNode->scale(2.4, 2.4, 2.4); 250 silverSphereNode->attachObject(silverHead); 251 293 252 aluSphereNode = rootNode->createChildSceneNode( "aluSphere" ); 294 SceneNode* aluHeadNode = aluSphereNode->createChildSceneNode( "aluHead" ); 295 aluSphereNode->scale(0.3,0.3,0.3); 296 aluHeadNode->setScale(8,8,8); 297 aluHeadNode->setVisible(false, false); 298 253 aluSphereNode->scale(2.4, 2.4, 2.4); 254 aluSphereNode->attachObject(aluHead); 255 299 256 copperSphereNode = rootNode->createChildSceneNode( "copperSphere" ); 300 SceneNode* copperHeadNode = copperSphereNode->createChildSceneNode( "copperHead" ); 301 copperSphereNode->scale(0.3,0.3,0.3); 302 copperHeadNode->setScale(8,8,8); 303 copperHeadNode->setVisible(false, false); 304 305 306 goldSphereNode->attachObject(goldSphere); 307 silverSphereNode->attachObject(silverSphere); 308 aluSphereNode->attachObject(aluSphere); 309 copperSphereNode->attachObject(copperSphere); 310 311 goldHeadNode->attachObject(goldHead); 312 silverHeadNode->attachObject(silverHead); 313 aluHeadNode->attachObject(aluHead); 314 copperHeadNode->attachObject(copperHead); 315 316 257 copperSphereNode->scale(2.4, 2.4, 2.4); 258 copperSphereNode->attachObject(copperHead); 259 317 260 goldSphereNode->_updateBounds(); 318 261 silverSphereNode->_updateBounds(); … … 320 263 copperSphereNode->_updateBounds(); 321 264 322 goldHeadNode->_updateBounds(); 323 silverHeadNode->_updateBounds(); 324 aluHeadNode->_updateBounds(); 325 copperHeadNode->_updateBounds(); 326 265 327 266 kupolaNode->_updateBounds(); 328 267 centerSphereNode->_updateBounds(); 329 centerHeadNode->_updateBounds(); 330 268 331 269 //Init lights 332 270 mainLight = mSceneMgr->createLight("MainLight"); … … 345 283 mainLightNode->attachObject(bbs); 346 284 347 silverSphere->setMaterialName("EnvMetals/Silver"); 348 copperSphere->setMaterialName("EnvMetals/Copper"); 349 goldSphere->setMaterialName("EnvMetals/Gold"); 350 aluSphere->setMaterialName("EnvMetals/Alu"); 351 352 aluHead->setMaterialName("EnvMetals/Alu"); 353 copperHead->setMaterialName("EnvMetals/Copper"); 354 goldHead->setMaterialName("EnvMetals/Gold"); 355 silverHead->setMaterialName("EnvMetals/Silver"); 356 357 358 centerSphere->setMaterialName("GameTools/CausticGlass"); 359 centerHead->setMaterialName("GameTools/CausticGlass"); 360 361 OgreIlluminationManager::getSingleton().initTechniques(); 362 363 285 286 aluHead->setMaterialName("GTP/EnvMap/Alu"); 287 copperHead->setMaterialName("GTP/EnvMap/Copper"); 288 goldHead->setMaterialName("GTP/EnvMap/Gold"); 289 silverHead->setMaterialName("GTP/EnvMap/Silver"); 290 centerHead->setMaterialName("GTP/Caustic/Glass"); 291 292 /*aluHead->setVisible(false); 293 copperHead->setVisible(false); 294 goldHead->setVisible(false); 295 silverHead->setVisible(false); 296 centerHead->setVisible(false);*/ 297 298 OgreIlluminationManager::getSingleton().initTechniques(); 364 299 } 365 300
Note: See TracChangeset
for help on using the changeset viewer.