Well it seems as though you're applying a default material and shader to UITexture's, whereas before you were happy to leave them as null if that's the way I created them. I was detecting the null material and then creating a dynamic material at runtime and applying it. Detecting the name of the default material's shader seems like a perfectly acceptable solution for now, but I can no longer render my UITexture with a transparent background. I've tried but I cannot seem to find any kind of solution for this. My shader, material, etc. are all fine because it works perfectly with earlier versions of NGUI. However, with 2.7.0, my UITexture has an opaque white background. It's almost as though it's not using my shader, even though the material assignment at runtime appears to suggest that it is.
EDIT: I found two properties which sounded relevant, but they're both read-only, so I cannot change them. The values are as follows:
PreMultipliedAlpha: False
HasDynamicMaterial: False
Are these values correct for trying to render a RenderSurface which has a transparent background? If not, how do I go about changing them?
I'm setting the UITexture->Material to my material, which already has my custom shader attached to it. It all works perfectly in old versions of NGUI.