updated with bug fixes for async texture loads