//----------------------------------------------------------------------- PUForceFieldCalculationFactory* PUForceField::createForceFieldCalculationFactory(ForceFieldType type) { _forceFieldType = type; if (type == FF_MATRIX_CALC) { // Use precreated matrix //setForceFieldCalculationFactory(new (std::nothrow) MatrixForceFieldCalculationFactory()); return getForceFieldCalculationFactory(); } else { // Use realtime calculation setForceFieldCalculationFactory(new (std::nothrow) PURealTimeForceFieldCalculationFactory()); return getForceFieldCalculationFactory(); } }
//----------------------------------------------------------------------- ForceFieldCalculationFactory* ForceField::createForceFieldCalculationFactory(ForceFieldType type) { mForceFieldType = type; if (type == FF_MATRIX_CALC) { // Use precreated matrix setForceFieldCalculationFactory(OGRE_NEW MatrixForceFieldCalculationFactory()); return getForceFieldCalculationFactory(); } else { // Use realtime calculation setForceFieldCalculationFactory(OGRE_NEW RealTimeForceFieldCalculationFactory()); return getForceFieldCalculationFactory(); } }