Hi there

Noticed a strange issue where when I switch off a panel which has clipping, the draw call from that panel gets recycled (from the inactive list) to be used by a new panel. However the clipping setting does not get changed, so I'm seeing a panel with no clipping trying to submit a draw call with clipping. This causes it to throw errors when things in that panel don't have the appropriate clipping shaders.
Locally, I fixed this by adding a clipping setting line in the UIDrawCall 'Create' method:
static UIDrawCall Create (string name, UIPanel pan, Material mat, Texture tex, Shader shader)
{
UIDrawCall dc = Create(name);
dc.gameObject.layer = pan.cachedGameObject.layer;
dc.clipping = pan.clipping; // this one
dc.baseMaterial = mat;
dc.mainTexture = tex;
dc.shader = shader;
dc.renderQueue = pan.startingRenderQueue;
dc.manager = pan;
return dc;
}
I would be very interested to hear peoples' thoughts on this issue as well as a more appropriate fix if anyone has one!
Thanks.