| 108 | | osg::notify(osg::FATAL) << "how got here?" << std::endl; |
| | 108 | for( unsigned int shaderIndex=0; shaderIndex < rhs.getNumShaders(); ++shaderIndex ) |
| | 109 | { |
| | 110 | addShader( new osg::Shader( *rhs.getShader( shaderIndex ), copyop ) ); |
| | 111 | } |
| | 112 | |
| | 113 | const osg::Program::AttribBindingList &abl = rhs.getAttribBindingList(); |
| | 114 | for( osg::Program::AttribBindingList::const_iterator attribute = abl.begin(); attribute != abl.end(); ++attribute ) |
| | 115 | { |
| | 116 | addBindAttribLocation( attribute->first, attribute->second ); |
| | 117 | } |
| | 118 | |
| | 119 | const osg::Program::FragDataBindingList &fdl = rhs.getFragDataBindingList(); |
| | 120 | for( osg::Program::FragDataBindingList::const_iterator fragdata = fdl.begin(); fragdata != fdl.end(); ++fragdata ) |
| | 121 | { |
| | 122 | addBindFragDataLocation( fragdata->first, fragdata->second ); |
| | 123 | } |
| | 124 | |