Don't even think about the i3 there. You are comparing a 2 vs 6 cores CPU.
Why I am saying this? Well literally games atm need CPUs with 4 cores to run at the highest settings.
With the AMD FX-6300, you are good to go for future gaming, while with the i3 you can't say the same thing. This CPU can be overclocked, while the i3 is locked and you can't do anything with it, so it's stuck @3,4GHz. (The FX-6300 goes up to 5GHz in some cases, but I think a boost of 1GHz would be fairly enough, so from 3,5GHz to 4,5GHz)
The FX-6300 is the best solution for budget gaming, with a combination of a Gigabyte GA-970A-UD3P motherboard or something similar, you are gonna run every game on high settings if you have at least a R7 260X/750Ti GPU. (Prefer the 260X here though)
I hope you can make your decision now and that I helped and explained everything you wanted to know
Regards.