Jump to content
Sign in to follow this  
iaiotom

How to extract a RE_Material from a SHOP_Node?

Recommended Posts

iaiotom    2

Hi,

it's some time that I'm trying to extract a RE_Material from a SHOP_Node in order to bind it to a custom glsl shader. I've seen so far that I can get the RE_Material from a SHOP_ReData object. In the SHOP_Nopde there is a method called buildShaderData(SHOP_ReData& data, fpreal now, UT_Options* options,...). I'm trying to use this function but I always get a null material from this. I tried with a null or empty UT_Options. I dind't find anything on the documentation. Does someone know how use this method?

Cheers

Alan

 

Share this post


Link to post
Share on other sites
iaiotom    2

Never mind, I've just found the solution ;)

SHOP_ReData shaderData;
SHOP_Node* nodeShop = OPgetDirector()->findSHOPNode("/shop/agentShader");
if (nodeShop)
{
  UT_Options options;
  nodeShop->buildShaderData(shaderData, 0, &options, 0, 0, SHOP_SURFACE);
  const RE_MaterialPtr& shadMat = shaderData.getMaterial();
}

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×