Merged over some of the texture changes from the internal branch