// 添加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];