improved transform caching