Nothing is stopping Nvidia from "making their own mantle" but it would be a tough sell even though I'm sure they would see gains similar to what AMD is seeing with Mantle. While there are way too many posts with the sole purpose to put AMD/Mantle down, there were legit concerns too, for example comparisons to Glide to point out why it may go the same way.
Just from what we know so far it has a couple of things going for it to think it's fate will differ from Glide. GPU market is a duopoly now and the architecture that Mantle is made for will be exclusive on the 2 most lucrative platforms for at least 5 years, assuming that's the minimum lifespan for the upcoming consoles as well controlling roughly half the PC market. 3dfx didn't even remotely have such foothold. AMD does and with the reduction of the gaming market to basically the PC and 2 consoles, they are in position to take advantage of a dominant architecture. It's clear what they went for, starting with code writing for 1 GCN is writing for 3GCN. Mantle is supposed to reduce overhead and allow more freedom with coding and make porting to other platforms easier than ever. The final benefit is to the gamer in a more efficient and possibly better looking way. Another important part to pitch developers is easier porting to the PC, even if it continues to be a meager market, with less effort to consistently port to the PC dev houses may port more of their titles more often..
There will probably be a few that may ignore the Mantle, even without Microsoft/Sony involved. However, the (imminent) presence of GCN across (now is the right time to adopt it) biggest money makers, the appeal of more efficient work, enabling tools and easier PC market entry should, emphasize should be enough to get 5 major houses to get into. I just can't the notion that this is exactly what capable devs, the ones that matter have been asking for.
Before I start handing out the Kool-Aid, this interesting announcement quote caight my eye:
Sounds eerily similar to me. Another old Glide article here:
http://www.gamespot.com/news/3dfx-unveils-glide-30-2464752
Hopefully 2-3 capable dev houses adopt Mantle soon to get the ball rolling. The "partnership" between AMD and Crytek doesn't mean much since Crytek is partnered with everyone but it would be huge if they get on board next. Anyone launching cross platform titles is bound to give it a serious consideration at the least.
1) There are three GPU makers out there in the PC space. You forgot the one with the biggest marketshare (thoughnot the loudest marketing or best performance): Intel. It's a threeway, not a twoway. And look at the recent noise about their new driver plus GRID 2 optimizations. They're chasing the gaming market. It doesn't have to be the best performer to be worth remembering that there are people out there gaming with Intel GPU's.
2) To my eye, Mantle is like Glide in that the company that perceives itself to have dominance in GPU market share is trying to capitalize on that dominance by shutting the other people out of the "high performance" niche. High performance space is where the marketing for the lower end products happens; people hear the R9 290X is the best of the best, so the R7 260 sells better, etc. Mantle is about selling the high end AMD card as the only card capable of hitting the highest of the high end on the "benchmark" titles that AMD has been targeting for the last year with Gaming Evolved.
3) Some will argue that the market is different. Back in the day, DirectX was still really immature (even pre-Direct3d?) and OpenGL was still being developed. Glide came from that, bringing a heavily optimized subset of OpenGL to the masses to provide 3d gaming at its infancy. While true there were lots of other companies and lots of other specialized API's for all these different cards, the problem was not that developers had to code for all these API's. It was that they didn't. People are truly not remembering things very well here.
Glide was by and large the only one that gained any traction in the market besides eventually DirectX and OpenGL. The others had minor gains that led nowhere, each company eventually getting behind DirectX because Glide just had too much marketshare and led to such an impressive performance advantage for any game that used Glide. This was especially true for any game that then tried to code in Direct3D afterward.
But it was somewhat fair that Glide gained such traction because 3dfx was by and large the company that truly brought 3d gaming to PC. That Glide took preeminence was a result of the fact that 3dfx did the work to get developers making 3d games and as such Glide was prioritized for a while. Still, the market preferred having a standard with one code path than having multiple ones to support. Even two was too many.
4) That brings us to Mantle and DirectX/OpenGL. Two is too many codepaths. You speak of porting from Xbone/PS4 to PC like it's nothing, but it is not nothing. Even if the exact same code from Xbone low-level to Mantle could work, it would not be an inconsequential amount of money, time, or support to maintain a second, separate codepath for a new API. Sure, let's say hypothetically it's COMPLETELY identical to the Xbone's low level API (this is speculative and unlikely as "completely identical" seems iffy), you'd still have to code for PC optimizations, right? I mean, lots of talk about Mantle implies that GCN 2.0 is the same as GCN 1.0, that the Xbone version of the game is as good as the PC version is going to be (resolution? better textures? farther draw distance? faster framerate?) with no customization or improvements.
Somehow, I doubt that EVERY self-respecting PC gamer is going to take an untouched, unimproved port of Battlefield 4 running at the Xbone's resolution of 720p/1080p and be content with that. Certainly, PC gamers are going to want more. That doesn't just magically appear after you code for Mantle. You've got to code even more for Mantle to make that happen and work well. Who works on the Mantle code? The same guy working on Direct3d for PC? Or the guy working on the Xbone low level API? What if the PC version gets a new feature, does the Mantle version get it? So the PC version guy does it, right?
What if the low level Xbone API gets further optimized? I guess now the Xbone API guy goes in and alters Mantle, but what if that breaks some of the PC-specific code in Mantle for the PC version of Battlefield 4 Mantle? Who fixes what? Clearly, money is invested to maintain different parts of the code and since Mantle is a whole new API, you have to maintain it somehow. At best, a developer might have a whole other group handling Mantle smoothing and at worst you'll have the same overworked employee doing both Direct3D and Mantle, splitting his time between them both rather than just plain optimizing Direct3d alone.
5) This brings us back to the past and Glide. Even developers who favored Glide in a Glide vs Direct3d vs OpenGl threeway were forced to eventually code to the standards. In due course, it became clear that holding such a place of dominance with Glide had led 3dfx to avoid changes that might imperil their dominance-assuring technology, Glide. But those changes led to inferior technical leaps when they long, long clung to ideas for 3d tech that were far behind the curve. Developers who'd long stayed with Glide eventually realized they had to move to DirectX or OpenGL to keep up with the changing pace.
Suddenly, 3dfx's reliance on Glide and their reluctance to leave it behind had led to them being way, way behind in technical design. In a panic, they then made a series of boneheaded business decisions that ended them abruptly.
But the lesson to be learned is still that letting one house control an API in the interests of "superior performance" leads to stagnation and a reliance on that specialized API to maintain their lead and eventually to keep up.
Regardless, that matters little. Glide made sense not because other companies had their own API's back then, but because Direct3d and OpenGL were not ready when it first showed up. Glide was a way of bringing OpenGL into the modern before it was done. That's the only reason it existed.
Mantle is not about bringing 3d to gaming like Glide was. In this way, AMD is worse than 3dfx. AMD wants to own the market, plain and simple. They don't want to spend obscene amounts of money maintaining a pace with companies that are far richer than them: nVidia and Intel. They know they will lose that war eventually as they'll run out of money long before they get there. It's cheaper to give MS and Sony good deals on next gen hardware, then use that as a way to win over more developers to their own specialized API across all platforms. It's clever, if disastrous in the long term since nVidia and Intel will respond in kind. Any money saved by a developer/publisher by "just coding" for Mantle could be more than compensated by either nVidia or Intel, both of whom have a lot more money than AMD.
That's assuming any developer would want to support two API's.
So they want to change the rules of the game. They get to spend less and still be far ahead. Plus, they can finally have a chance of having games and PC's use HUMA, which was heretofore unlikely when nVidia and Intel have little reason to support it. But Mantle sidesteps that entirely, for the first time offering a compelling reason for gamers to buy into an all-AMD PC. Again, it's a clever workaround to the fact that Intel and nVidia refuse to work with them, plus MS is throwing their hands up about PC gaming in general.
6) Direct3d and OpenGL were a response to multiple API's. Everyone who talks about Mantle acts like nVidia and Intel couldn't make their own, initiating an API war. If you think Intel doing it is a joke, you really need to look at how much money that company is sitting on and how many GPU's it's selling per year. Do you look forward to a day when publishers are outright paid to focus only on the Intel GPU codepath, leaving the Direct3d one to be the "safemode?" Or unsupported? Perhaps nonexistent? How many gamers right now with a discrete GPU made by nVidia or AMD have an Intel GPU on their CPU, waiting for its day? Lying in wait, like sleeper agents.
AMD is doing a clever move with Mantle, but if you think developers/publishers aren't going to support other GPU vendors because Mantle's so much easier, you really need to remember that the 360 version of games were often the first version and that had AMD hardware for eight years now. How many of those AMD-first games were then ported over to nVidia hardware and suddenly became TWIMTBP'ed? It was only in the last year-ish that Gaming Evolved actually evolved into something worthwhile and it wasn't because of b/c with the AMD GPU in the 360 (or Wii). It was because money talks. Suddenly, these companies had deals for thousands and thousands of licenses of games from these companies. AMD paid them money and they made Gaming Evolved for AMD.
So what makes you think that the pittance of savings of some code that Mantle offers will be more tempting than the truckloads of money Intel or nVidia could hypothetically offer? It may be easy to forget AMD is in extreme financial straits, but there's still a lot of talk about them going out of business and even if that is (somewhat) overblown, they don't have a ton of money to push Mantle with.
And their competitors do.
7) But all that comes back to the obvious. If money is not a factor (because AMD's competitors are far richer) in AMD's favor, then ease of use and performance improvement would have to be incredible to be compelling to developers to use a SECOND additional API for PC gaming than the seemingly required DirectX/OpenGL one.
Even if a developer went out of his way to use Mantle for the next gen consoles (or if Xbone's low level API were based on Mantle), that doesn't mean they'd go to the trouble of applying that to PC gaming. "Why wouldn't they, it's easy as pie?" It's not. It's really not. Anyone who says that doesn't get what it takes to make a game.
More than that, the performance improvement would have to be incredible to warrant such an investment for any developer, which almost assuredly locks out most developers who just want compatibility. Of the select few who are making high end niche benchmark titles, you've got some that are nVidia-friendly and some that are mercs, up to the highest bidder. Money, again, speaks louder. If nVidia senses a real threat on its homefront, nVidia will turn around and start spraying money like it's confetti.
So the market that will use Mantle remains small. It may be (somewhat) easier to code to from the next gen consoles, but it's still a second API. It's not the primary one, not like Glide was. The other API's are mature, stable, works with everything. Not like when Glide was king. And games are already in the stable with DirectX.
AMD has to make a case for why anyone should chase after such a small percentage of the market as AMD represents. Hell, even their own APU's won't support Mantle by and large yet. That's the one area where Mantle makes more sense since it could be used to create PS4/Xbone-like optimized games for low end PC hardware...
8) AMD wants Mantle for the same reasons that 3dfx clung to Glide, but Mantle is going to fail for all the reasons 3dfx was supplanted by DirectX. Not because Glide suffered for all the alternate API's. In most cases, it won out because it was the first and rather than deal with the chaos, developers just went with the most mature (Glide). No, Glide just didn't keep up with the times and maintaining its features kept 3dfx from evolving.
That's what's going to happen to AMD if they aren't very, very cautious because when you code games "to the metal," then you can't really change much about the layout of said metal or things start breaking.
9) Mantle is a move of desperation by a company that doesn't see itself changing much in the way of its technology over the next ten years. It's clever and it's going to send some shudders through the PC gaming space, but in the end I think something like Valve's Steambox based on Linux will have more impact on finally freeing us of the tyranny of an OS run by a company obsessed with gaming consoles and not PC gaming.