Fix MaterialCacheKey comparisons creating garbage.
List.AddRange(List) makes a copy, as it turns out. :|