Hi Goran,

In standard OSG (3.2.x, 3.4.0 or the 3.5.x dev series) there isn't any
way to automatically remap osg::Material to uniforms so you'll have to
run a traverser through the scene graph and replace the osg::Material
to osg::Uniform's.

If you are willing to experiment with bleeding edge experimental code
then have a look at the shader_pipeline branch of the OSG, in this
branch I'm working on a new scheme for automatically mapping old fixed
function state like osg::Material to uniforms and #define settings
that can then be used by #pragma(tic) shader composition to provide a
fully integrated shader+fixed function state solution.

Robert.

On 15 May 2017 at 14:18, Goran Pantar <[email protected]> wrote:
> Hi,
>
> I'm using OpenGL ES 2.0 and having dificulties to pass the old style material 
> properties (ambient, difusse, specular, shininess) to the uniforms used in my 
> fragment shader.
>
> For the 3d model I use models in 3ds format with multiple materials and 
> multiple drawables.
>
>
> As a dirty hack I changed the Material.cpp Material::apply(State&) function. 
> This worked properly and I was able to modify this several global uniforms 
> used by my shader.
>
> Now I'm trying to do this the OSG way using updateCallbacks and visitors but 
> the uniform are not updated during the rendering. Probably only the last 
> drawable material properties are set to the uniform and than this is used 
> when rendering.
>
>
> I expect that there is some perfectly elegant way to do this, so please point 
> me in the right direction.
>
> Thank you!
>
> Cheers,
> Goran
>
> ------------------
> Read this topic online here:
> http://forum.openscenegraph.org/viewtopic.php?p=70931#70931
>
>
>
>
>
> _______________________________________________
> osg-users mailing list
> [email protected]
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to