Anything they could do in a shim they could just do in the driver.Barring some kind of shim for some kind of compatibility mode (dunno if possible), existing code cannot use it.
Anything they could do in a shim they could just do in the driver.Barring some kind of shim for some kind of compatibility mode (dunno if possible), existing code cannot use it.
Right, particularly if Mantle still relies on FXC (which is unclear).I'm not sure if the DX11 platform holder would appreciate it, or if the performance or reliability would be there.
Dan Baker said:You'll see people misrepresenting that AMD's pushing this technology, but the reality is that a lot of people - including myself and other graphics architects - have been asking for this type of thing for a long time,
"I don't think it's anything like Glide. Back then, the hardware had a lot of very specific variations," said Baker. "While there were advantages to doing that, it was because the hardware wasn't very programmable. A modern GPU is really just a processor; they're so programmable that the analogy doesn't hold up anymore."
I think you jump to conclusions and may have simply misunderstood what he wanted to express. But the article doesn't make it easy by not giving more context to his statement.so mantle is not a propriety api because gpu's are so programmable and they dont have a lot of very specific variations - what nonsense
The scenario I'm thinking of is using whatever path Mantle uses to allow for low-level feature exposure to create a fake DX11.x
I'm talking about presenting a virtual DX11.x device to an application so that it can run its standard unmodified DX11.x graphics code path up to the version supported by the card, regardless of the DX version the system's Windows installation supports.Today's game 'engines' (imho those huge amount of code are anything but "engines" any more) are already "modularized", since you usually have OGL support & likely a Platform Dependencies folder for different OSes.
You just overload your classes with a different physical class that implements what you want to do in Mantle, I think (well, mostly).
Johan even said as much on twitter. There's no "free ride" to be had here for games... that would imply that the current DX drivers/runtime is just poorly optimized at a basic level, which is not the case. The model itself needs to change and compatibility for older devices needs to be dropped to move forward here, which is what Mantle is trying to do. Honestly it's going to require OS work above and beyond Mantle to happen in the long run as well, but I imagine they're just taking a first step.Perhaps there are intermediate solutions where applications can be modestly patched to support Mantle, although many of the likely benefits won't come to pass without rearchitecting the engine so that it can take advantage of the access.
I'm talking about presenting a virtual DX11.x device to an application so that it can run its standard unmodified DX11.x graphics code path up to the version supported by the card,
I think you jump to conclusions and may have simply misunderstood what he wanted to express. But the article doesn't make it easy by not giving more context to his statement.
My interpretation would be, that he wanted to make a distinction between Glide and Mantle regarding the longevity or sustainability of the support on future hardware. Back in the days, Glide basically tied you to certain low level paradigms, how some stuff has to work. Newer hardware broke this, so Glide support would have been hard to impossible. In his opinion, Mantle doesn't do this (to the same extent)
The goal would be to allow any DX11 render path to run unmodified on any Windows installation, regardless of whether said engine was that flexible,
Yes, via a wrapper, which is exactly the problem. I think I remember that someone said Rampage would have supported Glide also only with a wrapper as it didn't map that easily to more modern hardware. Of course, usually more modern hardware can reproduce everything older hardware is capable of, but one loses the advantage of using the (now emulated) lower level access. So why use it at all?Sorry dont agree. Glide tied you to very little, and "newer hardware broke this" ??? It didnt, v2, v3, v4 and v5 all supported glide. Thats 5 generations, and had 3dfx survived theres no reason to believe glide support wouldn't of been possible hell creative labs even released a tnt2 that ran glide games (creative unified).
In fact every card released after the v5 can run glide games via a wrapper.
I'm not joking at all. Mantle is probably tied to some mechanisms for instance how command buffers are handled, how they are passed to the GPU and the GPU delivers feedback, maybe even the command buffer format itself (but that is not necessary). It is probably not rigidly tied to the actual underlying ISA. As long as the essential principles hold, one could probably swap out the ISA of the GPU even with Mantle (all one has to do would be to [re]compile the shaders to the ISA and maybe build the command buffer in a different format [Mantle could abstract that too]).As for mantle not tying you to hardware your joking right? its very much tied to gcn. What happens after gcn will we have mantle 2.0 will 2.0 support amd's new architecture and gcn ?
...why someone should spend way, way more than 10M$ to do that????
DX is not a thin layer over your GPU: a thin layer would i.e. allow your game to simply put (more or less) a command packet for DMA selecting i.e. tile mode (etc) in your command buffer -possibly without leaving UMD- without the burden of God-Knows-What.
DX is quite a thick layer, imho.
The reason I gave was that it would allow AMD cards to be the DX11.x cards that would be DX11.x cards on any Windows version they can be installed on (or not even Windows, but I'm not getting into that).
Today amd apu 2013 begins, i can't wait to learn more about Mantle, but I'm afraid we have to wait the 13th...
This isn't possible, because DirectX11 is more than simply the D3D subsystem. Sure, it might be academically possible to build some "DX11-wrapper" using Mantle and some hackery. However, the entire gammut of DX11 is bigger than that, and Mantle is simply not far-reaching enough to cover the rest of the DX11 API calls (sound, input, video compositing that isn't 3D, utilization prioritization of multiple contexts.)
DX10 and later were a break not only in 3D capability, but the entire underlying input / output architecture that underpins sound recording and playback, video rendering (in two and three dimensions), and input. Building a wrapper for the 3D part and calling it "done" is missing the much larger picture.