108 comments

[ 2.6 ms ] story [ 166 ms ] thread
"...AMD's chief gaming scientist..." this is some fancy position
Well he does have a fancy degree in chemistry and that makes him a scientist!!!
From all that I read, the game itself performs very well on AMD cards. The only exception is the Hairworks feature. But that has such a large impact even on high-end Nvidia cards that this is the first thing that one disables. It is probably the single most expensive setting in the game, and for a relatively small benefit.
There was an article back in March wherein a Stack Overflow (or Quora?) user comment about the hilariously porous boundary between game engines, drivers and actual hardware on GPUs. I'll see if I can find it because as much as I love a good ole shitshow of industry skulduggery, I can completely see a best-intentions effort leading to these sorts of unintended consequences (doing their best to get tessellation working, and so forth).

Disclaimer of non-fanboy-ism: I don't play video games anymore, and only have graphics via Intel on my machine. No stock in Nvidia or AMD either.

Edit: Found it, and my memory completely sucks. It was an article on gamedev.net about lower-level graphics APIs: http://www.gamedev.net/topic/666419-what-are-your-opinions-o...

I remember reading that link and thinking about how the standards are not working.

It also concerns me for the future of the open source graphics stack. If the proprietary drivers are being updated to fix game specific problems, how are the open source drivers going to fair when the general rule for open source is not to have hacks within a code base.

I can only hope that the Mesa 3D stack comes to Windows in a meaningful way to ensure a common open 3D graphics library. Vulcan might shift the problem to the game engine from the driver but that's a long way off yet.

> . If the proprietary drivers are being updated to fix game specific problems, how are the open source drivers going to fair when the general rule for open source is not to have hacks within a code base.

I'm an outsider, so it's easy for me to sit back and make blanket statements. That being said, the responsibility should lie on game developers to insure their games behave properly on hardware. Making proprietary drivers to address specific games is a bad development practice. Hardware markers should be responsible for insuring their drivers are accurately supporting standards.

It just sounds like the whole games industry has fallen into some really bad development practices.

The thing is, as referenced in the article I linked, there is a blurred line in functionality between what the GPU can do, via what the driver exposes, and what the GPU can do, if only they would write something for you to help massage it a bit and enable in the way you need.

Without access to the engineer's knowledge of the GPU's hardware, it's hard for the open source developers to even know what they ought to be able to implement. It follows that game studios (and consumers) would be crazy to rely on the coin-flip-odds that an open source implementation will figure out the right thing to do for a particular optimization of the GPU's internals

I am also an outsider, but have had a few friends work on various graphics projects (game engines, CAD software, one of them use to have a map of the OpenGL state machine above his bed). To hear them tell it, trying to maintain absolute "best practices" and only use truly cross-platform, cross-vendor code in your libraries while still hitting deadlines for games is like the mythical web startup that somehow ships despite also investing time in 100% unit test coverage, 100% integration tests, with a little bit of mutation testing and generative testing on top to help test-drive the test suite. That is: it's more of an ideal to strive for than a reality to be lived.

As a Linux user I weep at this state of affairs, but given the way GPUs are made, I don't know what could change.

> the general rule for open source is not to have hacks within a code base.

The Linux kernel devs must have missed a memo then, as they seem quite willing to accept "hacks" if it means that user space can continue running.

The user space middleware seem more willing to blame other tiers when something breaks though.

If AMD's platform is really as good as they claim, why does everything run on the nVidia one? Also, I don't think this is an issue worth getting upset about, especially if you can just turn the feature off in-game. If the particular engine I'm using runs better on nVidia cards, then of course I'm going to prioritize their platform as a base for my hair simulations or whatever fancy extra stuff I want to have in there for people with high-end GPUs.
> why does everything run on the nVidia one?

What is "everything"? PC Gaming is nVidia centric because they put a lot of money behind it. AMD supplies the chips for all next gen consoles so by pure market penetration in the gaming market, I'm pretty sure they are doing quite well.

You're right, my wording wasn't clear. I was talking about the market they're complaining about.

I just feel like it would be more beneficial to improve communication and developer support instead of generating negative PR by saying things like nvidia "completely sabotaged" performance when in fact all they really did according to developers is they had a good product and they were always available.

Solution: AMD optimizes HairWorks. Reality: complaining is easier.

NVIDIA have always claimed that no exclusivity deals are signed with GameWorks. Others have [supposedly] always been welcome to assist game developers during the phases that NVIDIA gets proactively involved in.

It's just an extension of the systemic AMD problem: they [very likely] have the best hardware but their Windows drivers are horrific and not only do they not have developer support; they actually play the victim because others take the initiative. For crying out loud, even Intel has game developer support/code. Correction: it turns out that AMD do actually have some open source libraries for game devs.

The problem here isn't NVIDIA. NVIDIA set out to optimize the game as best as they could for their hardware. AMD didn't set out to do anything: once again they sabotaged themselves by not getting involved. If I'm lazy and I get left behind that is my fault, not the fault of the other guy who did what I didn't do.

From what I read, AMD doesn't have access to the GameWorks source code. These features are also designed with the capabilities of Nvidia GPUs in mind, you can't really optimize around fundamental differences in the GPUs (e.g. the newest Nvidia cards are significantly better at tesselation).
I don't see why AMD would need to source code to be able to optimise their drivers. Sure, it would be nice, but with a good GPU profiler (they should have one), one will be able to pinpoint bottlenecks and optimise for them.

Your point about hardware differences makes more sense; I don't expect AMD to admit that their hardware is simply not as suited for the task as Nvidia's is.

I find your argument lacking the real world facts.

Open Source drivers for NVIDIA suck due to lack of documentation. If AMD has a difficult time than Open Source drivers are doomed.

AMD does make good hardware and it has traditionally been a good company. The issue is the lack of a standard. I don't like non-standard solutions with closed code or hardware.

You're talking about reverse engineering. This is unfair competition, plain and simple. Depending on how you view their market (general purpose devices versus gaming), Nvidia has a majority marketshare, with over 75% of the market for gamers. That qualifies it for a monopoly status and given this story, we could easily be talking about them violating the antitrust laws.

Of course, I may be exaggerating and government interventions are rarely any good for consumers. It would be better if we, as consumers or developers, would acknowledge such abuse and punish such companies with our thoughts and wallets.

So no, AMD not having access to that source-code is not OK, plus AMD shouldn't have to patch their drivers for that game, because such a practice has far reaching consequences, affecting indie game developers (Nvidia won't patch their drivers for indie games that aren't as popular as Witcher 3), or any operating system that isn't number 1 (which on the desktop means anything non-Windows).

This hails back to the early Guild Wars 2 days, which might predate HairWorks: developers take 'responsibility' for the GameWorks code once NVIDIA leaves. They can't open source it, but they do have the source and by extension so would AMD if they ever walked through the door. Disclaimer: complete hearsay.

What you say about HairWorks optimization is true, but you can't hold the fact that AMD has failed invest against NVIDIA. Look at it this way, if TW3 hadn't added HairWorks everyone would have the static hair meshes. As a game developer I would integrate HairWorks so that I could shine on compatible platforms (albeit I'd probably disable it by default for AMD, instead of having a bad first experience).

It's a pity that the consumer gets caught up in all this. Who's to blame is a lot more difficult to determine than most people think. Purely in terms of graphics cards, NVIDIA has great post-sales support. If I buy an NVIDIA I know games will run well on it because NVIDIA makes sure that they do. This is a pro-consumer post-sales service that I get at absolutely no cost. They are also running up against AMD users in the way that people describe in the comments of that article.

It's not a black and white situation but AMD is certainly not helping in even an insignificant way. AMD customers should be demanding answers from AMD before (not in exclusion to) they demand answers from NVIDIA.

Well no, tressfx fills the same gap, but with far better cross platform performance.
>but you can't hold the fact that AMD has failed invest against NVIDIA. Look at it this way, if TW3 hadn't added HairWorks everyone would have the static hair meshes. As a game developer I would integrate HairWorks so that I could shine on compatible platforms (albeit I'd probably disable it by default for AMD, instead of having a bad first experience).

TressFX does the same thing, but AMD worked with Nvidia to optimise it for their GPU as well, so everyone's happy. This would have been objectively better for the user, if you disregard the money the devs received from Nvidia for implementing HairWorks instead of TressFX.

> It's just an extension of the systemic AMD problem: they [very likely] have the best hardware but their Windows drivers are horrific and not only do they not have developer support

You are strongly misrepresenting the actual situation. AMD is painfully aware that their drivers lack compared to Nvidia but they disagree with the reason. AMD does not want to put nearly as many hacks into the drivers as Nvidia does. They went quite far (by making Mantle) to make the drivers leaner and more predictable.

Nvidia traditionally detects misbehaving game code and patches it up with various degrees in the driver.

> AMD didn't set out to do anything: once again they sabotaged themselves by not getting involved.

AMD made the right step and backed the only thing that will evolve the situation from the status quo: Mantle and now Vulkan/DX12. Otherwise they would always end up playing this game of magical drivers that NVidia supports but nobody likes.

> ...as many hacks into the drivers as Nvidia does.

That sounds like an absolute nightmare to maintain.

It sucks actually because when I've written custom game engines, one doesn't know if one is using OpenGL properly because NVIDIA just makes things work even if you did a bad call. Then when you try to run it on other drivers that are more compliant, it all fails all over the place.

The solution I guess is to try and find a highly compliant, picky driver, and develop using that, because it is easier to get it right at the beginning than to go back and try to fix things.

See also: HTML.

I think there are debug wrapper for GL; too much overhead to run in production, but should tell you if you're Doing It Wrong (tm). Have you tried something like Regal?

> Mantle and now Vulkan/DX12

The issue here isn't that at all. The issue is a turn-key hair rendering solution. ~~Which AMD does not provide.~~ Correction: AMD provides TressFX, which had bad NVIDIA performance before NVIDIA stepped in and fixed it. ~~In fact I can't find any graphics code samples on their website, contrasted with the abundance on the NVIDIA website.~~ Correction: AMD does have samples.

> The issue here isn't that at all. The issue is a turn-key hair rendering solution.

That is incorrect. The issue here is hair rendering which AMD has a turn-key solution for it: TressFX.

Right, I stand corrected. However, do keep in mind that NVIDIA had similar performance issues during the Tomb Raider launch - and instead of complaining about it NVIDIA stepped in and, as I've been saying, helped the game developer improve TessFx compatibility with their cards.
Note that the source of TressFX is fully available in the DX samples. This cannot be said about whatever Nvidia does which cannot be disclosed to IHVs.
> Note that the source of TressFX is fully available in the DX samples

What does that have to do with my core point of AMD sitting back and complaining?

> This cannot be said about whatever Nvidia does which cannot be disclosed to IHVs.

NVIDIA provides restricted source to everything but TXAA, PhysX and beta libraries.[1] I'll re-iterate my point: AMD would have access to the code if they walked in the door.

[1]: http://www.pcper.com/reviews/Editorial/NVIDIA-and-AMD-Fight-...

> What does that have to do with my core point of AMD sitting back and complaining?

AMD: here is the code, optimize it.

NVidia: there is the binary blob (you can't look at the code), feel free to make your card exhibit the same performance characteristics as our geforce reference cards without infringing on our patents. No, you can't change the code. You could hot patch game executables though.

AMD is not allowed to look at the source.

(comment deleted)
(comment deleted)
I think the issue is that the licensing of GameWorks, which HairWorks is part of, prevents the game developer from sharing it's source code with anyone other than other licensees. That means AMD has to reverse engineer it if they want to optimize their drivers for it. That isn't the case for TressFX, which is freely available to anyone and allowed Nvidia to quickly add support for it after Tomb Raider released.
(comment deleted)
Do keep in mind that NVIDIA received the code for the game so they could optimize their driver for it [1].

There is no chance of the same happening with AMD and TW3, since at least at the beginning of 2014:

    According to Nvidia, developers can, under certain licensing circumstances, 
    gain access to (and optimize) the GameWorks code, but cannot share
    that code with AMD for optimization purposes.
See [2] for the source of that statement.

The situation is really that different.

[1] http://www.eurogamer.net/articles/2013-03-07-nvidia-apologis...

[2] http://www.extremetech.com/extreme/173511-nvidias-gameworks-...

It seems as though that might have changed[1] (dated 1 year after yours). In truth those in the AAA industry might only be privy to what is actually going on, as I'm seeing a lot of PR bullshit/he-says-she-says from both sides.

If NVIDIA is actively restricting access to the code for HairWorks that is indeed very scummy, however, they would technically still be within their rights.

[1]: http://www.pcper.com/reviews/Editorial/NVIDIA-and-AMD-Fight-...

Yes, the FUD seems to be everywhere, I concur. And we'll never know the truth unless a GameWorks contract gets leaked in full, aka never. Business as usual. :)

Intel was still within their right (technically) when it forced their own compiler to compile non-optimized code for AMD CPUs. That does not make it right for us, the customers, this is the point I wanted to make.

> That does not make it right for us, the customers, this is the point I wanted to make.

That's an discussion that's likely to never come to a sensible conclusion :). The AMD/NVIDIA situation is definitely one of the negative outcomes of an open/competitive marketplace.

(comment deleted)
Good luck optimizing for shader code you have no access to, because that is (was?) the situation, at least for some previous games that used it. Not even the developers of the games have any access to it. Gameworks actually prevents AMDs to optimize paths in their drivers. Exclusivity does not matter a bit.

Note that AMD also has a program that help developers write shaders and optimize their engines to work better on AMD cards. But that does not prevent NVIDIA to see the code and optimize their own drivers accordingly.

So, to me the problem here seems NVIDIA's attitude to sabotage (for no technical reason, except economics, see the physX on x86 debacle when they refused to compile code for something else that i386) performance on other platforms for their own gain. Like physX, Gameworks is already showing itself for what it is and will eventually fail and be forgotten. And people will believe that AMD is at fault for the next NVIDIA "magic technology" that brought no gain whatsoever to the gaming world.

> Solution: AMD optimizes HairWorks.

Why didn't NVIDIA make HairWorks, NVIDIA's software, run properly on AMD cards? Given that NVIDIA has the full source, that should have been possible.

"Solution: AMD optimizes HairWorks."

How do you optimize code you have no access to?

"It's just an extension of the systemic AMD problem: they [very likely] have the best hardware but their Windows drivers are horrific and not only do they not have developer support; they actually play the victim because others take the initiative."

Like how a Project Cars developer or spokesman claimed that AMD did not help for months only to be completely disputed later on? Also, ask Kepler owners about their current driver support in recent titles. They are not happy.

"NVIDIA set out to optimize the game as best as they could for their hardware."

AMD helped optimise several titles that worked just as well on NVidia (excep that one Tomb Raider fiasco, what was solvable doe to the openly available TressFX code. Can we say the same about hairworks?). But somehow many NVidia titles are optimised in a fancy way that always hits hard on AMD cards (Crisis 2 and Batman AA come in as uncovered examples).

"AMD didn't set out to do anything: once again they sabotaged themselves by not getting involved."

I guess you can back up that statement.

Edit: wording, grammar

(comment deleted)
I really don't understand the AMD driver complaints. I've been running AMD cards off and on for years (Last 2 cards were AMD, previous one was Nvidia) and I have zero problems with AMD drivers.

And Nvidia? There are a large number of reports that the latest drivers cause crashes and there have been problems in the past too.

I don't think the difference between AMD and nvidia is nearly as wide as nvidia fans want you to believe.

Don't graphic drivers already optimize themselves for specific games ? I don't really know what's optimized underneath though...
So this is the screenshot with HairWorks enabled: https://cdn.arstechnica.net/wp-content/uploads/sites/3/2015/...

Is there a comparable one with it turned off? Because that untextured hair looks completely out of place next to all the other nicely textured & shadowed parts of that scene (well, the chainmail does look amusingly flat where it goes over the shoulder). The hair might move nicely in gameplay, but it looks plain, garish, and low tech in a still.

I suspect this works much better with dark hair, where the texture is not as noticeable as the silhouette.

> Because that untextured hair looks completely out of place next to all the other nicely textured & shadowed parts of that scene

The hair has nice shape and I believe it has physics, but it totally isn't shaded properly. I'm not sure if they are not using the proper Marschner shader (http://www.ephere.com/plugins/autodesk/max/ornatrix/docs/con...) or if the issue is they are not integrating the environmental lighting properly - could be both.

Witcher 3 had looked awesome on all press photos and in-game videos til last week. The finished game looks the same on all platforms, a highend PC runs on idle (30% Gpu). Witcher 2 Enhanced Edition (2011) has a pretty similar ggraphic. Assassins Creed Unity looks like a game from the future. Witcher 3 is a good game, but the PR wasn't that good.

@down voter: do you mind to share your thoughts

I didn't downvote you.... but I bet others did because your comment doesn't speak to the debate covered in the article.
True. The game is great and still looks very good, but considerably worse than the previews. Especially the lighting and the over-saturated colors.

The PR team did good though, because visually the game has the same issues as Watch Dogs, but it isn't getting anywhere as much hate for it.

This has always been the point of NVIDIA's propertary game engine technology for more than a decade now - give it away for free or very often for big titles integrate it into game engines using NVIDIA developers (who often come to work on site.) Then once the game is released mention that it works better/looks better on NVIDIA technology than on competitors (AMD/Intel) GPU technology. And of course blame it not working well on AMD/Intel on their "inferior" technology.

NVIDIA must be loving this controversy as it was the whole game plan all along.

I read something very similar in this anonymous Slashdot post when Assassin's Creed Unity came out:

http://games.slashdot.org/comments.pl?sid=6048819&cid=483821...

Choice quote: "Nvidia literally doesn't care if bouncing ten simple particles on your screen uses 30% of your GPU performance, so long as the same effect on an AMD GPU takes 80%. Nvidia is this dirty."

(comment deleted)
The thing is, I have an nVidia card and ACU doesn't even run on it. It feels like they are not only trying to deter people from buying AMD, but that they are also trying to deter people from buying lower tier nVidia cards.

I have to get ACU down to sub-720p resolution to even get more than 20fps. It's ridiculous.

I think the problem there is just that ACU was just a very poorly made game.
>So Nvidia 'invented' TXAA- an horrifically bad AA method both in appearance and 'hit' on performance- but a method that runs far better on new Nvidia hardware than it does on new AMD hardware.

Why is that, though? Why can't AMD do whatever Nvidia's doing to make it just as fast on their system?

Because Nvidia is playing to their relative strengths. Differences in hardware can't always be overcome in software.
Sadly this is par of the course of the whole computing industry.

Just look at how Apple pretty much gets to set up a store inside university libraries. Or how the likes of Adobe or Microsoft will throw virtually free copies of their products at students.

Damn it, is swear Gates has said he would rather see people pirate Microsoft products than adopt alternatives for personal use.

These aren't good comparisons. Dev studios work out promotional deals for this tech. This tech isn't just free, they're being paid to put them in games. We saw them do this with Physx and probably with these other technologies.

Students don't walk into university libraries and get a $200 check from Apple to use OSX.

Apple probably would if they could get away with it.
"If you're a thin, attractive student at an Ivy league university, you get a free Apple suite of hardware, continually renewed until you've finished your studies!"

I don't know why they haven't already done it.

Why do it when the thin, attractive students are already buying the Apple products?
They do get discounts on Apple hardware from Apple of around 10% though (we did at my university at least).
And unfortunately it's working. If/when I buy a new GPU... it'll be nvidia. I've owned four ATI/AMD cards and only one nvidia card (integrated in a laptop), but it seems on many big-name games I want to play these days, there's always some problem on AMD. Sure it's shady business tactics, sure it's unfair competition, sure it's sabotage of their competitor, but if AMD can't do something about it, there's no logical reason to stick with AMD.

I built a custom AMD computer to meet the recommended specs for Watch Dogs and after launch I find out that the AMD recommended specs don't provide the same performance as the recommended Intel/nvidia specs. Something like 70% of the performance is gone on AMD. I don't want to worry about politics, I just want to play my game.

AMD should begin to fix his crappy drivers. I stooped to buy AMD graphics cards because give a lot of problems related only to the drivers.
First of all, AMD does release drivers and fix issues. It takes a couple weeks but it happens. And if you look at benchmarks the r9 290 still trades blows with the 970, there's no huge disparity like Nvidia wants you to believe and your 70% comment is just plain rediculous.

But second, seriously? No logical reason to stick with AMD? You have no moral dilemma here? So you want to continue buYing from the company that lies about their most popular card's specs then refuses to apologize and instead tells you how grateful you should be? A company that intentionally sabotages performance of their last generation of cards because it might make the new one look bad and it may make people buy a new card (then we'll do it again next generation!)? A company that attacks open standards and tries to create schisms in the community? Can you not see what they'd do if they didn't have a competitor? And don't forget - this is all in trade for a 5% performance improvement and some power draw reduction. That's just sad.

We all have different definitions of "sad".

"Sad" can also be accepting inferior products because of emotional and moral reasons.

We're not talking about human rights violations or something here, so not everyone has an appetite for moral grandstanding and voting with your wallet.

"A company that attacks open standards and tries to create schisms in the community? "

Amusingly, many software darlings of Silicon Valley behave poorly. Uber, Twitter, Apple, Google, Facebook all behave aggressively anti-competitively in their own immoral and unique ways. Every company I listed attacks open standards in some way or another and creates schisms in communities on a regular basis (or their entire market is based on such walled schisms of larger markets).

If you're the kind of person who assess all hardware and software from a moral perspective, then that's an interesting and rare way to approach your decisions in this space, but not everyone finds it "sad" to use "use the best available".

Considering they downgrade older cards with driver updates 'the best available' over the lifetime of the card is directly influenced by their poor behavior.

Sure, back when a card where more than doubling in speed every year this was less of an issue. However, now that things have slowed down your better off getting a high end AMD card than a mid-range nVidia with forced obsolescence.

PS: And I say this as someone that has been using nVidia cards for a while, but watching framerates drop when replaying older titles is simply unacceptable.

I'm not an evangelical snob, I can forgive transgressons obviously. But we aren't talking about a company that doesn't only attack open standards.

This isn't even really a moral argument anymore. If you buy Nvidia you can't have good faith they'll continue to develop and optimize your card the next year when new cards are out. You can't be sure that when games that push it are released you won't stutter uncontrollably, or your stay doing GPGPU work with specific hardware in mind and its not running right because they lied about specs, etc.

And again - 5% performance difference, $100 more expensive, and not the best available (that would be 980/295x2/titan x).

Morality is not logical, so my saying "no logical reasoning" does not preclude a moral reasoning. There are a lot of things that people should do morally but they choose the logical answer instead.

Like I said, I don't want to play politics. I don't care about which option is morally superior. I worry about moral choices all day, I take the moral high ground where I can, I recycle and I buy fair trade coffee and I make sure my clothes don't come from sweatshops, but at the end of the day... I just want to play my video games. I owe absolutely nothing to AMD, they've never saved my kitten from a tree, so logically why would I buy their products if there is something that works better?

I mean if you want to bring up morals, think about that power draw reduction... I'm getting that power from a coal plant down the road. Isn't the morally correct option to go with hardware that draws less power so I can save the environment?

>Morality is not logical,

This is BS. Morality is extensively covered in game theory and is all about getting the best possible outcome for every member of the group, including not fucking yourself over long-term.

We don't buy Nvidia when they do this shit, because doing otherwise will encourage them to do it and fuck us over in the long-term when they potentially put AMD out of business in the long term and then they have us by the balls. More importantly, if all of us will sacrifice a little in the short term, we will ALL be better off in the long term.

It's logical, it's just not purely selfish (but a four year old could tell you that).

There is a strange underlying assumption here that nvida is immoral and AMD is full of virtue.

I see absolutely no evidence that this is remotely true. At best there is evidence that AMD is incompetent.

So morality doesn't even enter into the discussion.

If nvidia required exclusivity that would be one thing, but they don't.

No one said AMD is virtuous. However they work hard to produce and mantain open standards that benefit everyone. The only other GPU producer is anti-competitive and anti-customer, so obviously we'll say "buy from AMD, they're better. " You bet the moment AMD starts bad practices (again?), I'll be putting the same critisisms on them.

With your last sentence, I don't see how meeting the basic "not exclusive" keyword to avoid legal trouble makes this okay? Nvidia doesn't allow the code to be shared or even communication with AMD (correct me if I'm wrong of course). I'm not really sure how AMD is supposed to work with that.

Morality is not logical, although sometimes the moral choice is the logical choice. Here's what I'm talking about: two video cards, the $200 GPU runs the game at 90+ FPS and the $300 GPU runs the game at 85FPS [1]. You're paying $100 more for less performance. How is that logical?

I don't care about hardware vendors. Like I said, AMD has never done a thing for me, so why do I owe them loyalty? Why is AMD suddenly the good guy? Just because they're the underdog doesn't mean they're inherently good.

There's no moral dilemma. None at all. Do I want to buy the fast video card or the slow video card? I want to play my video game. I want to buy the fastest card I can get for the money. I've bought AMD for years only because they had faster and cheaper cards in my price range. That's not true anymore. Maybe someday they'll be able to compete again, and then I will buy their hardware.

If morality was always the logical choice, Nintendo would have the highest selling hardware in video games and everyone would be playing Mario. Instead it's Sony, and everyone is playing EA games. Because people want to play games made by horrible companies on the PS4, not the games made by good companies on the Wii U.

But it doesn't really matter, because right now I have a brand new AMD R9.

[1] http://www.forbes.com/sites/jasonevangelho/2014/05/26/why-wa...

> Morality is not logical, although sometimes the moral choice is the logical choice.

There is no logical choice outside of a decision rule which must rest on first principals that cannot be supported by logic. Morality is a source of such first principals (aesthetics is another, though the boundary between the two is not well-defined.)

> Morality is extensively covered in game theory and is all about getting the best possible outcome for every member of the group

You can derive some rules similar to those that some moral systems hold as first principals through game theory starting with simpler first principals, like some particular operationalization of utilitarianism, but that doesn't make morality logical, it makes it possible to use logic to derive a more complex moral framework from a small set of moral axioms. (And it may provide a tool for simplifying some pre-existing moral systems, to the extent that they have a large number of moral axioms but those can be derived from a smaller set of axioms through logic.)

We really need definitions of "logical" and "morality". Sometimes what's best for the group is not the best choice for any individual member.

Often economists call it "rational self interest" or just "rational". And most people use the words "rational" and "logical" interchangeably.

Like I said, I don't want to play politics.

It's more like you are trading short term gains (I just want my games to work) for long term losses (Putting Nvidia in a position to continue it's anti-competitive practice, potentially to the point of controlling the PC gaming industry to the detriment of everyone, but themselves, involved).

Or the long term losses of continuing to buy AMD cards even though they're slower and more expensive, which gives them no incentive to improve. How long, in your opinion, do I have to buy AMD hardware before it's morally correct to switch to another vendor?

Everyone talks about voting with your wallet, but suddenly that all goes out the window... remember when AMD was the dominant force when all Intel had was the Pentium 4 and AMD squandered their technical advantage with Bulldozer and other crappy cores?

"Slower and more expensive".

Yes, $240 r9 290s all the time xs down to $260 at times. The former is very near the 970 and the latter overcomes in many games. Both are preferred at 1440+. A $320 970 is definitely worth it.

You may also want to consider that those AMD cards are years old while those are the newest Nvidia offerings (which aren't significantly better than Kepler - which now has poor driver support for because of this). AMDs 300 series coming out in 2 weeks (ish) is the competitor for maxwell. And instead of a minute cash grab update, it's a significant change.

Edit: There is no problem not buying inferior products. Sometimes there really isn't a choice because of the schism in features or performance. And sometimes the morality involved isn't worth fussing over.

In regards to that AMD comment: I honestly don't know what that has to do with this conversation. Amd isn't infallible amd their history had mistakes as well, but right now they're the best option for GPUs. I'll tell someone to buy Intel for performance everyday though. On the other hand, look at how little innovation Intel had brought up while Amd barely competes with them. Lack of competition produces high prices with little progress.

Intel has had massive progress in their chips, reducing TDP and pushing really good integrated graphics. The new quad core Atom chips can run Skyrim on a Windows tablet.
> Morality is not logical, so my saying "no logical reasoning" does not preclude a moral reasoning.

Moral reasoning is logical reasoning when the base set of axioms are moral axioms. So, "no logical reasoning" implies "no moral reasoning".

Why do game makers put up with it? You'd think that an engine that's clearly being built to work poorly on a good chunk of the GPUs out there would be off the table as an option if you're making a big game.
What about that mention of recent updates making 7xx series graphic cards performance worse? I have a 750 in my laptop and yesterday I booted pillars of eternity and was having much more performance problems than usual.
I hope the new low-level API kids on the block, like metal and vulkan, can switch the fight to actually compete in having solid GPU performance, and benefit consumers in the end.

Then, maybe a GPU independent HairThing™/intermediate level toolkits can actually flourish.

HairWorks is not something to be particularly upset about. Vast majority of players, even on high-end GPUs just keep turning off those "premium" IHV-specific features as they are just so heavy.

BTW AMD kinda started this with their TressFX hairs (notably used in new Tomb Raider).

It had similar characteristics to HairWorks - extremely expensive feature for relatively small overall visual impact, better running on AMD than Nvidia GPUs, but still running pretty bad even on high-end GPUs.

Something to keep in mind: those super-duper features you see at GPU launch events, they are mostly just marketing, "halo effect" features, not practical enough to be used in games for almost everybody.

--------

We are speaking about miniscule fraction of all players who have GPUs powerful enough to runs all bells and whistles.

Titan X, the only GPU that can run Witcher 3 fast with HairWorks enabled [1], exists in so small numbers that it doesn't even show up in Steam Hardware survey [2].

GTX 980, the next most powerful GPU, is owned by less than 0.5% of all people who use Steam. And GTX 980 runs 1080p ultra with HairWorks just ~37-40 fps.

GTX 970, the next most powerful GPU, the most popular Maxwell GPU, huge bestseller, is owned by ~3% of Steam users. It's the only remaining GPU that can stay above 30 fps with HairWorks on.

So something like 95+ percent of all gamers are not affected by this issue at all.

--------

[1] http://pclab.pl/art63116-27.html

[2] http://store.steampowered.com/hwsurvey/videocard/

> BTW AMD kinda started this

The difference is AMD's TressFX source code is open, which allowed Nvidia to resolve the performance disparity without much fuss.

Whereas the Nvidia's HairWorks source code is closed, leaving AMD unable to pitch in engineering resource for a diagnosis or solution.

Also note the dates: Tomb Raider's TressFX happened in 2013 while Crysis 2 and the 'flat-surface tessellation' happened in 2011 (with Patch 1.8 I believe).

Not something one can call a start.

(comment deleted)
I have an overclocked GTX 980 and am using it to drive three monitors, the largest of which (and the one I use for gaming) is at 1440p. The 980 has grunt, but it's still not able to push every game I want at 60FPS/1440p without settings compromises. That's partially because it only has 4GB VRAM, but mostly because the power for 1440p and especially 4K just isn't all the way there yet and many games are poorly optimized, especially past the 1080p mark. I wish more time was spent on making games run smoothly then on graphical gimmicks like better hair.
You don't want settings compromises, but you don't want graphical gimmicks like hair. You do realize that the difference between "high" and "extreme" setting is mostly graphical gimmicks, right?
I can attest to this. I have a GTX 970 and disabled HairWorks because it seemed to cost me at least 10FPS.
I'd like to point out the Slightly Mad quotes about working with AMD. I have never heard of a developer having a good experience with AMD. Even Carmak, the man with probably the most klote for a game programmer, has had a hard time getting help from them. Their support for developers has been why I've been choosing them for my PCs ever since I upgraded from my 9800 Pro.
> Their support for developers has been why I've been choosing them for my PCs ever since I upgraded from my 9800 Pro.

Don't you mean why you haven't been choosing them. Or are you choosing AMD because they (supposedly) aren't nice to developers?

It should be noted that hairworks crushes the entire game no matter what GPU you have (Nvidia or otherwise) except for one, the Titan X, which retails just north of a thousand dollars.

Everyone else is pretty much forced to turn down some setting or another to hit 60+ fps. And that's just at 1080p! I thought my GTX970 would handle it no problem, but there are still tweaks to be made.

Nvidia technologies have been heavily used in both these games:

* Watch Dogs

* The Witcher 3

Both suffer from technical problems with the graphics, don't perform as good as they could (across all systems) and look considerably worse than in the previews.

I like Nvidia cards and drivers, but as a developer I'd stay very clear of Nvidia-exclusive technologies. I guess the business guys must like the free advertising.

So what are they going to use on Linux? Supposedly Witcher 3 is being ported. Weirdly, HairWorks uses DirectCompute, which makes it unportable anywhere outside Windows.

May be with emergence of Vulkan, developers won't need to use these vendor specific APIs, since they'll have low level enough access to implement their own physics logic efficiently on all GPUs.

I was getting stoked about the Witcher 3 when I got some free time. All this talk is making me think twice about the game and not about my AMD card.