// 添加shader中的uniform ss->addUniform(new osg::Uniform("test1", false)); //设置shader中的uniform值 //ss->getUniform("test1")->set(false); ss->addUniform(new osg::Uniform("test2", 63.0f));//注意float类型的uniform,这里一定要加上后缀f // 数组类型的uniform,数组大小必须与.glsl中的数组大小保持一致 osg::FloatArray* g_GaussNum = new osg::FloatArray(10); osg::Uniform* gauss_num = new osg::Uniform(osg::Uniform::FLOAT, "gauss_num", g_GaussNum->size()); gauss_num->setArray(g_GaussNum);
uniform bool test1=true;
uniform float test2=15.0;
uniform float gauss_num[10];