I'm still looking for a graphics cards under $400, I mean I could go over but I'd prefer not too. I also want one that can run games like bf3 or gta4 at about 60fps, and future proof, as in at least 6 years.
Also if it helps I prefer Nvidia over AMD cards. Thanks
For you, a GTX 770 is the best card to get. It has the same amount of power as a 680, so plently to run current games at high settings with good framerates at 1080p. While the card won't last you six years performing that way, (No card will) if you feel like you need more power, you can just throw in another.
There is no such thing as "future proof". Particularly in graphics cards and certainly for 6 years.
Buy what you need today, and plan on selling it in the future when it no longer does the job for you.
Next year, there will be a new generation of cards with presumably stronger performance at current prices.
Today, with a $400 budget, you can buy a GTX770 superclocked like this one: http://www.newegg.com/Product/Product.aspx?Item=N82E168...
I particularly like the direct exhaust blower cooler.