-----------------------------------------------------------------------
| 975 | } |
| 976 | //----------------------------------------------------------------------- |
| 977 | void Pass::setComputeProgram( const String &name, bool resetParams ) |
| 978 | { |
| 979 | OGRE_LOCK_MUTEX( mGpuProgramChangeMutex ); |
| 980 | |
| 981 | if( getComputeProgramName() != name ) |
| 982 | { |
| 983 | // Turn off compute program if name blank |
| 984 | if( name.empty() ) |
| 985 | { |
| 986 | OGRE_DELETE mComputeProgramUsage; |
| 987 | mComputeProgramUsage = NULL; |
| 988 | } |
| 989 | else |
| 990 | { |
| 991 | if( !mComputeProgramUsage ) |
| 992 | { |
| 993 | mComputeProgramUsage = OGRE_NEW GpuProgramUsage( GPT_COMPUTE_PROGRAM, this ); |
| 994 | } |
| 995 | mComputeProgramUsage->setProgramName( name, resetParams ); |
| 996 | } |
| 997 | // Needs recompilation |
| 998 | mParent->_notifyNeedsRecompile(); |
| 999 | } |
| 1000 | } |
| 1001 | //----------------------------------------------------------------------- |
| 1002 | void Pass::setComputeProgramParameters( GpuProgramParametersSharedPtr params ) |
| 1003 | { |
no test coverage detected