internal static MaterialPropertyHandler GetHandler(Shader shader, string name)
{
MaterialPropertyHandler shaderPropertyHandler;
if (shader == null)
{
return null;
}
string propertyString = GetPropertyString(shader, name);
if (!s_PropertyHandlers.TryGetValue(propertyString, out shaderPropertyHandler))
{
shaderPropertyHandler = GetShaderPropertyHandler(shader, name);
if ((shaderPropertyHandler != null) && shaderPropertyHandler.IsEmpty())
{
shaderPropertyHandler = null;
}
s_PropertyHandlers[propertyString] = shaderPropertyHandler;
}
return shaderPropertyHandler;
}