Crysis 2 Tessellation Article

Page 19 - Seeking answers? Join the AnandTech community: where nearly half-a-million members share solutions and discuss the latest tech.

Lonbjerg

Diamond Member
Dec 6, 2009
4,419
0
0
So this thread went from a bad interpretation of a screenshots to the "bias" of a mod...oh boy, how constructive *chough*
 

badb0y

Diamond Member
Feb 22, 2010
4,015
30
91
So this thread went from a bad interpretation of a screenshots to the "bias" of a mod...oh boy, how constructive *chough*
Unfortunately your WKing for nVidia remained constant throughout!

Anyways, I still believe that if there is anyone to blame here, it's Crytek. The fact that these "enhancements" didn't ship with the game and came out with an update makes me believe that they rushed the patch.
 

Lonbjerg

Diamond Member
Dec 6, 2009
4,419
0
0
Unfortunately your WKing for nVidia remained constant throughout!

Anyways, I still believe that if there is anyone to blame here, it's Crytek. The fact that these "enhancements" didn't ship with the game and came out with an update makes me believe that they rushed the patch.

The only two constant in this thread are:

- Lack of evidence that NVIDIA did anything foul.
- Posts ignoring this fact, like you own, tyring to make it sound like it ineeded is a fact that NVDIA did something foul.

I really don't care what you think or feel when you have no facts supporting your assertations.

We are on page 19 in this thread and all i see is "safe whining".

"Safe whining" = lots of fallacies and no balls to contact CryTek for confermation/denial.

Imagine of only 10% of the energy used to go "BAAH" like sheeps in this thread had been directed towards getting relevant information from CryTek...then this thread might be educational, instead of a sad, sad whine feast...due to AMD's el crappo tessellation implementation.
 

3DVagabond

Lifer
Aug 10, 2009
11,951
204
106
It isn't. Saying that someone is condescending for showing how ridiculous an argument is, doesn't automatically make it so.

Again, lets not make this personal. Don't worry about how I feel, etc. etc. Don't worry about what makes me believe my opinion matters.
Whether I am biased or not, and I've made it plainly know forever and a month of Sundays now, that I much prefer Nvidia products. And not by just a little. Dude, you should know by now, that during an argument, one person suddenly goes after the other personally (my feelings, My opinion doesn't count, you're condescing, etc. etc.) you've lost. It means you have nothing left and it's a last resort. Can't best the argument, then let me go after his credibility. Well, fine. I'll accept that. It's a natural course of action when backed into a corner. But don't think it goes without a price.

Be well.

Keys

What are you going on about? I'm not making it personal. You're the one trying to belittle people. I'm just asking you why you have to do that. It's not necessary.
 

3DVagabond

Lifer
Aug 10, 2009
11,951
204
106
I am not blind, but I do know a bit about graphics. The believe is that it is a waste to build a city on top of an ocean where the ocean itself is dynamically tessellated and not visible, and thus wasting computation. The inherent believe is that performance will be better if the ocean was not there if it is not visible. The problem is, most of the posters here lack the ability to generate the scene in question. In fact, most do not even know how to generate a scene, let alone a dynically tessellated scene. Because people do not have an idea of how it is done, they will not have the idea of the amount of computation needed between methods. Those who have the expertises can criticizes the method, but so far, all I see is laymen talks and conspiracy theroies.

I can go on and start explaining how things work, but then it will simply turn into senseless arguements as it really does not answer the question, is it actually a waste of build a city on top of a tessellated ocean. The only real way of killing this debate is to recreate the entire scene with another method and compare the performance and quality, which is not the direction where the debate is going. Nvidia attackers are claiming that either Nvidia paid crytek or TWIMTBP inserted code/ideas kills ALL video card except GTX 570/580/590 in crysis 2. In fact, everytime where AMD cards underperform, it is because of Nvidia. Really, if AMD suck because of Nvidia and Nvidia do not suck because of AMD, then clearly, Nvidia wins. If video cards of AMD lack the tessellation capacity compare to video cards Nvidia, then eventually Nvidia will beat AMD on newer games as tessellation is such a big thing now. Sorry, the tessellation level is going to increase as time goes by and if tessellation is a weakness of AMD, then eventually, they will under perform until AMD fixes it through new hardware or software. Sorry, IMO telling game dev to reduce the use of tessellation is not the way to go and the spread of conspiracy theory is getting really old.

How about putting it where it will count? Why have invisible tessellated objects? There has to be a script call made for the ocean model to be in the scene, doesn't there? Why have it there? It's not too much tessellation, it's tessellation that serves no purpose, except that it makes nVidia cards win in benches. There is no good reason to tessellate the curbing around the sidewalk. A lot of what people are crediting as tessellation in this game is actually POM, not tessellation. Most of the tessellation serves no real visual benefit, that I can see. I've seen nobody come up with a reason to justify the way tessellation was done in this game. Tom's is the only site I've seen report on it that didn't come to the same conclusion as this thread has put forward.
 

Keysplayr

Elite Member
Jan 16, 2003
21,209
50
91
What are you going on about? I'm not making it personal. You're the one trying to belittle people. I'm just asking you why you have to do that. It's not necessary.

This is what I'm "on" about 3DVagabond.

"Again, why so condescending to people? Does it make you feel like you got one over on someone? What makes you believe your opinion matters when you get free stuff from the accused? It's not like you could in any way be considered unbiased."

I'm going to assume that when you look at your own words here, you cannot see what I'm "on" about.

I'm not belittling people. However, I am absolutely belittling their arguments because they are lacking in any sort of substance. If you can't, or won't acknowledge this difference, that really isn't a concern of mine. Defend your argument if you can, but be prepared to get called if it's unsubstantiated or unfounded.
 
Last edited:

3DVagabond

Lifer
Aug 10, 2009
11,951
204
106
This is what I'm "on" about 3DVagabond.

"Again, why so condescending to people? Does it make you feel like you got one over on someone? What makes you believe your opinion matters when you get free stuff from the accused? It's not like you could in any way be considered unbiased."

I'm going to assume that when you look at your own words here, you cannot see what I'm "on" about.

I'm not belittling people. However, I am absolutely belittling their arguments because they are lacking in any sort of substance. If you can't, or won't acknowledge this difference, that really isn't a concern of mine. Defend your argument if you can, but be prepared to get called if it's unsubstantiated or unfounded.

You call it belittling their argument, I see it different. No need for us to carry on about it. Positions aren't going to change.
 

BFG10K

Lifer
Aug 14, 2000
22,709
2,995
126
The believe is that it is a waste to build a city on top of an ocean where the ocean itself is dynamically tessellated and not visible, and thus wasting computation. The inherent believe is that performance will be better if the ocean was not there if it is not visible.
It does waste computation. This has been proven by altering the water quality setting and observing a performance change in areas where no water is visible.

We don’t see invisible ground and building meshes in the ocean do we? Of course not, because the map data doesn’t contain it. They don’t stick ground and buildings into the ocean areas when they build the maps. The same should apply for the ocean in ground areas.
 

SirPauly

Diamond Member
Apr 28, 2009
5,187
1
0
No, it's called a mistake. It was SirPauly. I'm not sure how I confused who posted it. Sorry about that.

http://forums.anandtech.com/showpost.php?p=32262440&postcount=365

Actually, I wasn't the originator of the link and data.

Just like Dragon Age 2 with nVidia, that needed some time to get performance equal or close to AMD; with some AMD driver work and getting the tessellation double throughput working on HD 6900 series cards (according to Behardware), performance may go up.

I don't see the problem really, AMD has a tessellation slider for the customers that desire more performance. Can understand the positives here from the AMD side even though I don't like going behind the developers back, no matter how subtle.

It's not the levels or amount of tessellation that bother me a bit -- personally desire more tessellation and if your hardware can do it - where is the problem? It is some areas chosen, specifically the street curbing -- more care in where in placing the tessellation to have more of a visual impact would be welcomed. Certainly not ideal placement and not all ideal examples of showcasing tessellation but still very welcomed as a whole to me because they were trying and achieving to some, raising the bar - steps forward.
 

Keysplayr

Elite Member
Jan 16, 2003
21,209
50
91
You call it belittling their argument, I see it different. No need for us to carry on about it. Positions aren't going to change.

It isn't just what I call it. It's what it actually is. Whether you accept that or not isn't my concern nor does it change my meaning. And I am perfectly fine with agreeing to disagree, which will most likely be our eternal meme.
Cheers
 

Zanovar

Diamond Member
Jan 21, 2011
3,446
232
106
http://forums.anandtech.com/showpost.php?p=32262440&postcount=365

Actually, I wasn't the originator of the link and data.

Just like Dragon Age 2 with nVidia, that needed some time to get performance equal or close to AMD; with some AMD driver work and getting the tessellation double throughput working on HD 6900 series cards (according to Behardware), performance may go up.

I don't see the problem really, AMD has a tessellation slider for the customers that desire more performance. Can understand the positives here from the AMD side even though I don't like going behind the developers back, no matter how subtle.

It's not the levels or amount of tessellation that bother me a bit -- personally desire more tessellation and if your hardware can do it - where is the problem? It is some areas chosen, specifically the street curbing -- more care in where in placing the tessellation to have more of a visual impact would be welcomed. Certainly not ideal placement and not all ideal examples of showcasing tessellation but still very welcomed as a whole to me because they were trying and achieving to some, raising the bar - steps forward.
Wtf is behind the developers back you keep on spewing?,i could understand your point if this wasnt optional.
 

SirPauly

Diamond Member
Apr 28, 2009
5,187
1
0
except that it makes nVidia cards win in benches.

So what?

I think nVidia was going to win in benches based on nVidia cards handle tessellation more efficiently than AMD. That's a given to me. What do you expect nVidia to do -- not try to add tessellation in titles and wait for AMD? Of course they're going to add more tessellation for their customers and try to raise the bar to showcase. Why wouldn't they try?

It's not the above idea but some of the areas may be deemed too subtle and not enough image quality gain for the resources spent, which to me is a valid point and agree with Behardware's conclusion. Think some of the constructive negatives are valid and worth investigating more. We don't live in a perfect or ideal world and really enjoyed Behardware's wording... "

In a perfect world we would obviously prefer these issues simply to be technical or artistic ones

I realize some like to blame but for some of this is just one side of blame -- their tessellation is not as efficient; their drivers are not using the double throughput in the 69XX series, according to Behardware. I couldn't believe that point wasn't raised.

How about some balance?

,
 
Last edited:

SirPauly

Diamond Member
Apr 28, 2009
5,187
1
0
Wtf is behind the developers back you keep on spewing?,i could understand your point if this wasnt optional.

If you can't understand trading image quality for performance behind the developers back and how this may be a slippery slope -- there isn't much I can do for you. Some have the ability -- enjoy the feature.
 
Last edited:

Zanovar

Diamond Member
Jan 21, 2011
3,446
232
106
If you can't understand trading image quality for performance behind the developers back and how this may be a slippery slope -- there isn't much I can do for you. Some have the ability -- enjoy the feature.
You didnt answer my question*laughs*,what exactly is behind the developers back?...
 

SirPauly

Diamond Member
Apr 28, 2009
5,187
1
0
The developer's application.

The main beef was AMD was lowering quality with FP 16 render targets, not only behind the developers back but behind the gamers back. Thankfully, they allowed the gamer to choose after it was exposed and a feature in CCC, and at least it's not behind the gamers back anymore.

I'm not a fan of these kinds of optimizations obviously, and never have been and was very vocal and tough on nVidia in the past as well. Going behind the developers back to replace image quality for performance is a slippery slope and depends on how far each IHV desires to slide down. To me these kinds of optimizations are added because the hardware has trouble competing in certain aspects.
 

Zanovar

Diamond Member
Jan 21, 2011
3,446
232
106
The developer's application.

The main beef was AMD was lowering quality with FP 16 render targets, not only behind the developers back but behind the gamers back. Thankfully, they allowed the gamer to choose after it was exposed and a feature in CCC, and at least it's not behind the gamers back anymore.

I'm not a fan of these kinds of optimizations obviously, and never have been and was very vocal and tough on nVidia in the past as well. Going behind the developers back to replace image quality for performance is a slippery slope and depends on how far each IHV desires to slide down. To me these kinds of optimizations are added because the hardware has trouble competing in certain aspects.
i wont comment on the above as its off topic,(new thraed perhaps?)im still struggling to undertand why you are against options for the gamer with settings.its baffling tbh
 

ocre

Golden Member
Dec 26, 2008
1,594
7
81
I realize some like to blame but for some of this is just one side of blame -- their tessellation is not as efficient; their drivers are not using the double throughput in the 69XX series, according to Behardware. I couldn't believe that point wasn't raised.

How about some balance?

,

So what you are saying is that AMD can actually improve this in their driver? So their driver isnt using the double throughput it should? So they could actually get 2x the tessellation through the driver?

when DA2 was fudged i was like wtf nvidia. eventually after some time they got a driver that i was waiting for and it was all good. But if AMD can fix this by as much as 2x then i see no reason why everyone is acting like this. calling nvidia sabotage when it should be "AMD??? fix this!!!"

besides it would be a lot better if i get a hd6950 too!
 

SirPauly

Diamond Member
Apr 28, 2009
5,187
1
0
So what you are saying is that AMD can actually improve this in their driver? So their driver isnt using the double throughput it should? So they could actually get 2x the tessellation through the driver?

when DA2 was fudged i was like wtf nvidia. eventually after some time they got a driver that i was waiting for and it was all good. But if AMD can fix this by as much as 2x then i see no reason why everyone is acting like this. calling nvidia sabotage when it should be "AMD??? fix this!!!"

besides it would be a lot better if i get a hd6950 too!

I asked Caveman Jim at Rage3d, he has a close relationship with AMD to expand on it but so far pretty quiet. I'm a regular at Rage3d and was a high-end ATI gamer from 2001-2007, wonderful gaming there.

What bothered me is no one bothered to post that nice data point discovered by Behardware. Damien is one of my favorite reviewers.
 

SirPauly

Diamond Member
Apr 28, 2009
5,187
1
0
i wont comment on the above as its off topic,(new thraed perhaps?)im still struggling to undertand why you are against options for the gamer with settings.its baffling tbh

I'm not alone nVidia agrees to some of it. They don't offer a tessellation slider or a surface optimization setting. I'm all for features for gamers; the ones that add image quality.
 

Zanovar

Diamond Member
Jan 21, 2011
3,446
232
106
I'm not alone nVidia agrees to some of it. They don't offer a tessellation slider or a surface optimization setting. I'm all for features for gamers; the ones that add image quality.

aha,so now only some of it?,your fluff bores me.im out
 

SirPauly

Diamond Member
Apr 28, 2009
5,187
1
0
If I had it my way, I would do away with filtering optimizations, that traded quality for performance, no matter how subtle, but obviously AMD and nVidia differ, hence, why I said some of it.
 
Last edited:

sontin

Diamond Member
Sep 12, 2011
3,273
149
106
I asked Caveman Jim at Rage3d, he has a close relationship with AMD to expand on it but so far pretty quiet. I'm a regular at Rage3d and was a high-end ATI gamer from 2001-2007, wonderful gaming there.

What bothered me is no one bothered to post that nice data point discovered by Behardware. Damien is one of my favorite reviewers.

There was one site: http://www.pcgameshardware.de/aid,8...klasse-Grafikkarten/Grafikkarte/Test/?page=12

The last two pictures (graphs) showing the problem. I think the on chip memory stalls the geometry pipeline and the both geometry units can't proceed more triangles. That's the reason why the 6870 is slighty faster because AMD increased the memory size. Without the help of the driver cayman is only as fast as cypress.
 

Seero

Golden Member
Nov 4, 2009
1,456
0
0
How about putting it where it will count? Why have invisible tessellated objects? There has to be a script call made for the ocean model to be in the scene, doesn't there? Why have it there? It's not too much tessellation, it's tessellation that serves no purpose, except that it makes nVidia cards win in benches. There is no good reason to tessellate the curbing around the sidewalk. A lot of what people are crediting as tessellation in this game is actually POM, not tessellation. Most of the tessellation serves no real visual benefit, that I can see. I've seen nobody come up with a reason to justify the way tessellation was done in this game. Tom's is the only site I've seen report on it that didn't come to the same conclusion as this thread has put forward.
WIth the new tessellation, designer choose "What" to tessellate dynamically, but not "when" or "which part" to tessellate dynamically. I am not capable of explain this more clear than this, but you can not partially tessellate an object. You can construct one big object with multiple objects and selectively tessellate them, but it really isn't easy. This however is not the core of this problem.

However, since the ocean is constructed by recycling ocean tiles and follow a specific agorithm with different offset, therefore you can't partially tessellate the ocean either. However, since the ocean tile is being recycled, all you need to do is to tessellate one tile and the entire ocean will look as if the whole thing is tessellated. This is still not the problem.

Note that we don't tessellate the whole screen at once for 2 reasons. First, it is not wise to combine "things that moves" with "things that doesn't move" in one wire frame. That is why the landscape, which does not move is on a seperate model from the moving ocean. Second, tessellate objects seperately can maximize parallel processing as variable are not dependent to each other. So instead of running time of A + running time of B, the running time is the max of the 2 assuming there are enough parallel processing power. This one is IMO the key factor on why CUDA structure shrines.

While some may argue why tessellate something that is not visible to viewer, and the answer from the Computer is: "How the F do I know you can't see them?"

Again, viewers believed in what they see, but it is actually designers' task to fool viewers in what they see. There were no water, no guns, no bullets, just pixels and colors. Sometimes we, as viewers, laugh when we run through stuffs which should not have happened. Sometimes when we zoom close enough, the viewport ends up to be inside a character, which viewers will see the internal of an object. Not surprisingly, it is empty inside.

To maximize performance, the only way is to break a big task into pieces and compute them individually so multiple cores can be utilized. However, the down side is that each individual task does not have information about others on going tasks, or a central processing unit will be needed to keep track of the information. This tracking itself may be fair more time consuming than those tasks itself. Physics is a good example, GPU PhysX is Super fast, but it is super fast as the result is not get feed back to the game. However, to make Physics on environment affecting gameplay, then CPU will quickly becames the bottleneck while GPU sits and wait for the next instruction.

To determine if one model is behind another, you really need to compute the 2 objects together to figure out the answer. Here we are talking about hundreds, if not thousands of object instances. Note that the order may change upon every single frame and nubmer of object instances may increase or decrease. Note that tessellation must be done before rendering and ordering does occur during rendering as this information is needed to apply shades, skins, lighting, shadow etc. Such process is called culling.

As laymen, some will argue why tessellation happens before culling, and the answer is simple, the result of tessellation will be off wildly. A single wired frame may appears to be multiple, seperate wired frames due to the objects at the front. Trying to tessellate the whole sence will fuse objects together. So to really prevent tessellation, 2 culling must occur while the first culling is not really a culling(the technique used is not the same). As to the actually tessellation, not only it needs the model that needs to be tessellated, but all models that are in front of this models, and they must be tessellated in order to ensure accuracy. This method will result in a better looking wired frame as a whole, but not necessary faster. The key factors are, is the running time saved by not tessellating things that are not visible + culling + the time to figure out the pixels/polygons that are not blocked more than to tessellate everything that is to be tesselated independently? How much more work does it need at the design stages(clipping is one of the things that designers must take care off. You don't want your toons arm somehow disconnected from the body while swinging the sword).

As you can see, the more I go on, the more complicated it will get and the fundamental question is still not answered. It is or is it not better to tesselate the invisible ocean.

It does waste computation. This has been proven by altering the water quality setting and observing a performance change in areas where no water is visible.

We don’t see invisible ground and building meshes in the ocean do we? Of course not, because the map data doesn’t contain it. They don’t stick ground and buildings into the ocean areas when they build the maps. The same should apply for the ocean in ground areas.
If it is okay for you, you can swich tesselation on and off while you play. If you have quick fingers, the average FPS will increase by switching it manually.

To answer the second part of your question, there are no buildings behind the ocean, so there are no wireframe of buildings. Crytek could have made mesh for the seabed to make ocean look even more realistic, and the wired frame of the seabed will still be there even if it is not visible. If they do however, it really doesn't resolve the original problem we started with, why tesselate things user won't see? Well, that really isn't a problem as we don't see what goes through RAM, CPU and GPU anyways. The question is, is there another way that produces the same scene without unnecessary tesselation, and the answer is yes, do not tessellate dynamically. This is not the what you are going after. What you are really going after is, will applying tessellation only on the parts that are visible through the viewport faster than applying tessellation everything? The time to figure out which polygon is visible to user, figure out which model this polygon belongs to, find adjustment polygon from this model, tessellate, reattach to the original non-tessellated model for each model that is within the scene, for each and every single frame, does not sound faster to me although the wired frame may look better.
 
Last edited:
sale-70-410-exam    | Exam-200-125-pdf    | we-sale-70-410-exam    | hot-sale-70-410-exam    | Latest-exam-700-603-Dumps    | Dumps-98-363-exams-date    | Certs-200-125-date    | Dumps-300-075-exams-date    | hot-sale-book-C8010-726-book    | Hot-Sale-200-310-Exam    | Exam-Description-200-310-dumps?    | hot-sale-book-200-125-book    | Latest-Updated-300-209-Exam    | Dumps-210-260-exams-date    | Download-200-125-Exam-PDF    | Exam-Description-300-101-dumps    | Certs-300-101-date    | Hot-Sale-300-075-Exam    | Latest-exam-200-125-Dumps    | Exam-Description-200-125-dumps    | Latest-Updated-300-075-Exam    | hot-sale-book-210-260-book    | Dumps-200-901-exams-date    | Certs-200-901-date    | Latest-exam-1Z0-062-Dumps    | Hot-Sale-1Z0-062-Exam    | Certs-CSSLP-date    | 100%-Pass-70-383-Exams    | Latest-JN0-360-real-exam-questions    | 100%-Pass-4A0-100-Real-Exam-Questions    | Dumps-300-135-exams-date    | Passed-200-105-Tech-Exams    | Latest-Updated-200-310-Exam    | Download-300-070-Exam-PDF    | Hot-Sale-JN0-360-Exam    | 100%-Pass-JN0-360-Exams    | 100%-Pass-JN0-360-Real-Exam-Questions    | Dumps-JN0-360-exams-date    | Exam-Description-1Z0-876-dumps    | Latest-exam-1Z0-876-Dumps    | Dumps-HPE0-Y53-exams-date    | 2017-Latest-HPE0-Y53-Exam    | 100%-Pass-HPE0-Y53-Real-Exam-Questions    | Pass-4A0-100-Exam    | Latest-4A0-100-Questions    | Dumps-98-365-exams-date    | 2017-Latest-98-365-Exam    | 100%-Pass-VCS-254-Exams    | 2017-Latest-VCS-273-Exam    | Dumps-200-355-exams-date    | 2017-Latest-300-320-Exam    | Pass-300-101-Exam    | 100%-Pass-300-115-Exams    |
http://www.portvapes.co.uk/    | http://www.portvapes.co.uk/    |