As I understand it, the ID Buffer was a Sony invention/request. It may appear in future AMD designs but there's nothing to suggest the idea was around for XBOX development or that MS have permission to use Sony's design.I'm sure Xbox One X has ID buffer feature in the gpu states in DF Scorpio reveal. Who says it doesn't?
Slightly ambiguous, but to date only Sony have talked about an ID buffer. I don't know of any related patents - you'd think someone would have one, AMD or Sony.Digital Foundry said:Right now, post-process anti-aliasing techniques like FXAA or SMAA have their limits. Edge detection accuracy varies dramatically. Searches based on high contrast differentials, depth or normal maps - or a combination - all have limitations. Sony had fashioned its own, highly innovative solution.
"We'd really like to know where the object and triangle boundaries are when performing spatial anti-aliasing, but contrast, Z [depth] and normal are all imperfect solutions," Cerny says. "We'd also like to track the information from frame to frame because we're performing temporal anti-aliasing. It would be great to know the relationship between the previous frame and the current frame better. Our solution to this long-standing problem in computer graphics is the ID buffer. It's like a super-stencil. It's a separate buffer written by custom hardware that contains the object ID."
According to this GAF post, there are 2 others custom hardware features on Pro:
*image snipped*
And apparently this feature, "texture gradient adjustement" has being patented by Mark Cerny with the name:
Gradient adjustment for texture mapping to non-orthonormal grid
Could those 2 new features be part of future AMD Navi features ? Even "Texture gradient adjustement" because of the patent ?
I think Arc is referring to this piece from DFAs I understand it, the ID Buffer was a Sony invention/request. It may appear in future AMD designs but there's nothing to suggest the idea was around for XBOX development or that MS have permission to use Sony's design.
http://www.eurogamer.net/articles/d...tation-4-pro-how-sony-made-a-4k-games-machine
Slightly ambiguous, but to date only Sony have talked about an ID buffer. I don't know of any related patents - you'd think someone would have one, AMD or Sony.
* See bolded as a supplement to your commentary.Microsoft didn't delve too deeply into specifics on the checkerboarding support that Scorpio possesses at the hardware level. However, Andrew Goossen tells us that the GPU supports extensions that allow depth and ID buffers to be efficiently rendered at full native resolution, while colour buffers can be rendered at half resolution with full pixel shader efficiency. Based on conversations last year with Mark Cerny, there is some commonality in approach here with some of the aspects of PlayStation 4 Pro's design, but we can expect some variation in customisations - despite both working with AMD, we're reliably informed that neither Sony or Microsoft are at all aware of each other's designs before they are publicly unveiled.
Patent from sony...Slightly ambiguous, but to date only Sony have talked about an ID buffer. I don't know of any related patents - you'd think someone would have one, AMD or Sony.
CROSS-REFERENCE TO RELATED APPLICATIONS
This application is related to commonly-assigned, co-pending U.S. patent application Ser. No. 14/246,064, to Tobias Berghoff, entitled “METHOD FOR EFFICIENT CONSTRUCTION OF HIGH RESOLUTION DISPLAY BUFFERS”, filed the same day as the present application, the entire contents of which are herein incorporated by reference.
This application is related to commonly-assigned, co-pending U.S. patent application Ser. No. 14/246,068, to Mark Evan Cerny, entitled “GRADIENT ADJUSTMENT FOR TEXTURE MAPPING TO NON-ORTHONORMAL GRID”, filed the same day as the present application, the entire contents of which are herein incorporated by reference.
This application is related to commonly-assigned, co-pending U.S. patent application Ser. No. 14/246,061, to Tobias Berghoff, entitled “VARYING EFFECTIVE RESOLUTION BY SCREEN LOCATION BY CHANGING ACTIVE COLOR SAMPLE COUNT WITHIN MULTIPLE RENDER TARGETS”, filed the same day as the present application, the entire contents of which are herein incorporated by reference.
This application is related to commonly-assigned, co-pending U.S. patent application Ser. No. 14/246,063, to Mark Evan Cerny, entitled “VARYING EFFECTIVE RESOLUTION BY SCREEN LOCATION BY ALTERING RASTERIZATION PARAMETERS”, filed the same day as the present application, the entire contents of which are herein incorporated by reference.
This application is related to commonly-assigned, co-pending U.S. patent application Ser. No. 14/246,066, to Mark Evan Cerny, entitled “VARYING EFFECTIVE RESOLUTION BY SCREEN LOCATION IN GRAPHICS PROCESSING BY APPROXIMATING PROJECTION OF VERTICES ONTO CURVED VIEWPORT”, filed the same day as the present application, the entire contents of which are herein incorporated by reference.
This application is related to commonly-assigned, co-pending U.S. patent application Ser. No. 14/246,062, to Mark Evan Cerny, entitled “GRADIENT ADJUSTMENT FOR TEXTURE MAPPING FOR MULTIPLE RENDER TARGETS WITH RESOLUTION THAT VARIES BY SCREEN LOCATION”, filed the same day as the present application, the entire contents of which are herein incorporated by reference.
I'm not entirely sure of the degree of the reach of the patent. I don't believe that you can patent the buffer itself, I imagine that's just memory/cache. The way the hardware accesses that memory could be patented though.Of course, it was our own TB. I remember now. So basically Sony owns the patent on an ID buffer and MS can't use it bar patent wrangling.
(Why do patents feel the need to use the word 'plurality'? It's not used anywhere else, where 'number' would suffice. Patents are so frickin' weird!)
Hardware that assists in CB doesn't automatically equate to ID Buffer etc. since CB is not a singular implementation.
I am not well versed in patent-speak, but I think "method" applies to hardware and software as long as it's the same implementation from claim #1. Possibly easy to design a different method acheiving the same goal. It's the method to build an ID buffer and how it's used which is patented, not the id buffer itself.I'm not entirely sure of the degree of the reach of the patent. I don't believe that you can patent the buffer itself, I imagine that's just memory/cache. The way the hardware accesses that memory could be patented though.
Neither am I, I'm left to assume that, if you came up with your own method of doing the same thing, you wouldn't be patent infringing. Otherwise patent trolling would kill the world.I am not well versed in patent-speak, but I think "method" applies to hardware and software as long as it's the same implementation from claim #1. Possibly easy to design a different method acheiving the same goal. It's the method to build an ID buffer and how it's used which is patented, not the id buffer itself.
The patent is always only the claim #1, everything else is just supporting explanations and context.
Hardware implementations are usually named "device or apparatus" or something.
Notice the asterisk: "Pro custom hardware features". Interestingly you may be right, if this is already on PS4 the name DICE used on the slide for this Pro feature might not be quite right.I'm pretty sure that Pixel Shader Invocation Control has been in the PS4 since the beginning.
This is exactly how I read it. If there was some hardware customization, they would have said it already. Like what the customization they've done to the Jaguar, lower latency and such.I think Arc is referring to this piece from DF
* See bolded as a supplement to your commentary.
http://www.eurogamer.net/articles/digitalfoundry-2017-the-scorpio-engine-in-depth
Not sure what that entails, they don't seem to have any more information out there that discusses it. The thing is, when i read "GPU supports extensions", I'm not necessarily reading it as hardware support in my mind. I just read an API that will emulate 'ID buffer' behaviour for you; maybe that's a poor interpretation on my behalf.
Like better LOD of textures ?Gradient adjustment per a later slide allows the hardware to optimize manual work needed to correct for sampling that originally assumes the traditional square pixel quad, which winds up being stretched into a rectangle in a CB scheme using Sony's reference or a sparse method that does something similar. The ALU consumed by fix-up math, more expensive sampling, and registers storing the derivatives used for the fix-up are listed as overheads, but I'm a little unclear on whether the PS4's optimization does more than optimize away the ALU component without affecting the other two. The cycle cost of the sampling might still be higher if there's more calculation overhead within the texture address unit. If the correction is stored in the texture unit, I'm wondering if the register storage could be reclaimed after the matrix is calculated once and sent to the unit (if that's what Sony's method does).
If DICE's presentation is a guide, it's a modest ALU savings at least. If the specific adjustment in DICE's presentation is actually built into the operation of the pipeline, then there are potentially savings built into the other two areas of overhead. However, that would indicate the customization is rather specific. If more programmable than that, the exact limits aren't shown. Different or more complicated adjustments to texture address calculations might exceed the storage or practically usable ALU/scheduling resources in the texture unit.
That might fly for a console, but AMD's original discussions about GCN showed they were originally hoping to reduce the amount of hidden state in the texture pipeline, since that was one of the remaining areas that wasn't cleanly exposed in the compute-oriented architecture. However, whether that original goal remains is unclear.
Given the modest improvement, AMD's more general PC environment might find it too specific, and the long-term goal to someday remove black-box functionality from the CU would not be served by having yet more context stored in the pipeline in a future GPU.
I'm speaking to the unknown way the transformation is stored into and applied by the texture units. If it's hard-wired or part of internal firmware, there's a limited range or single way that the adjustment can be used, and deviating too far from the planned range means not using it.Like better LOD of textures ?
Notice the asterisk: "Pro custom hardware features". Interestingly you may be right, if this is already on PS4 the name DICE used on the slide for this Pro feature might not be quite right.
If I could offer another perspective on this one, and this mainly sort of falls in line with MS behaviour when it comes to graphics tech. If its something they think everyone will need in the future, they'll put it in Direct X. And while Max can provide greater input on the process, I'm going to assume that they describe the behaviour and cases of all API calls, and leave it to vendors to decide how to implement it and as long as you pass the cases, you're certified for that feature set.I remember an interview with Raja maybe from the very first months of the year (possible during CES) in which he was saying that 8K would come to AMD not from TFLOPs but from using techniques as ID Buffer and CB. I tried to find the article/interview but I couldn't. The layout of the webpage was similar to HardOCP but I didn't find it there. If he is considering using ID Buffer for future AMD products then the patent from Sony is very specific or there is some sort of cross license deal.
Additionally I don't think that Xbox One X support ID Buffer at hardware (if it does) to the same extend that PS4 Pro does it. The focus during Scorpio development was to keep compatibility of older/current engines and improve performance to reach 4K. Adding new hardware that older/current game engines won't use is not what I would consider aligned to the primary objectives, now they might have done something to better support software based ID Buffer from older/current engines.
.From what I recall in the DF Scorpio article, Scorpio does possess hardware support for checkerboard rendering and such. This is a quote in the article;
"Microsoft didn't delve too deeply into specifics on the checkerboarding support that Scorpio possesses at the hardware level. However, Andrew Goossen tells us that the GPU supports extensions that allow depth and ID buffers to be efficiently rendered at full native resolution, while colour buffers can be rendered at half resolution with full pixel shader efficiency."
"We are perfectly happy with developers choosing a bunch of other techniques that are possible. We have hardware techniques for making checkerboarding very efficient. If developers want to go for checkerboarding, that's great. We've also heard from a bunch of our partners that they're actually finding that they prefer TAA [temporal anti-aliasing] with upscaling rather than checkerboarding."
IMO "GPU extensions" means accessing to lower software functions, "closer to the metal" part of the hardware, similar to those "shader extensions".I will quote myself again from a few pages back:
.
X1X does seem to support CB at the hardware level with access to ID buffer. The extent of its support compared to PS4Pro might be different though.
IMO "GPU extensions" means accessing to lower software functions, "closer to the metal" part of the hardware, similar to those "shader extensions".
https://gpuopen.com/gcn-shader-extensions-for-direct3d-and-vulkan/
Also he is talking about "efficient" rendering, not free rendering. If there was some real dedicated hardware customizations they would have spelled it out.
Whatever customization Sony might have done is also a gpu extension, I am not sure why you have a problem with that language. And implementing CB is definitely not free for anybody, Sony or not. And they said hardware techniques...Anyway I am not here to claim which is superior, just pointing out that X1X does have hardware support for CB rendering with access to ID buffer.
As for them not going into it much, well remember they are trying to paint the X1X as a superior native 4k machine to the PS4Pro so it really doesn't pay them much to go indepth into something that shows it will use "tricks" to get there.