I recently switched from gtx 770 to rx570, because the GPU has been used for about 5 years and the performance on that GPU was not so good, so I switched to rx570. With gtx 770 on destiny 2, I had 50-60 fps on medium-low settings. Now with rx570, I get 20-30 fps on destiny 2, but GTA 5, Rainbow 6 runs very good, better than with gtx 770 I only have problems with destiny 2. I thought that there were faulty drivers, so I re-installed the AMD drivers again, but nothing changed, same 20-30 fps. In AMD software I picked the standard profile because some games don't support third-party interference, but nothing changed. Then I rolled back the AMD drivers, but that didn't fix it either. I have tried to delete the shader cache and nothing changed, but i noticed that all the files where 64kb, if I'm right, then that means something is wrong. So I reset shader cache, but it still generates 64kb files, I tried to delete them manually, some of those files won't delete, because the AMD software host services ar running. I have tried to optimize the game with the radion software, but no changes to destiny 2, still 20-30 fps. For testing purposes, I put my gtx 770 back with all the drivers installed and destiny 2 ran just fine with 50-60fps. I don't know what to do anymore, I can't fix it.
I don't have the best pc but it works for me just fine:
CPU: AMD Anthlon X4 880K
NOTE: Before I switched to rx570 I booted my pc into safe-mode and used DDU to uninstall the Nvidia display drivers and I installed the latest windows update.