AMD: Mantle -> DX12 Porting Very Easy

EightySix Four

Diamond Member
Jul 17, 2004
5,122
52
91
Above all, Mantle will present developers with a powerful shortcut to DirectX® 12, as the lingual similarities between APIs will make it easy to port a Mantle-based render backend to a DirectX® 12-based one if needed or desired. In addition, Mantle developers that made the bold decision to support our historic API will be well-educated on the design principles DirectX® 12 also promises to leverage

Source.

It appears that AMD has put Mantle in a position to be a "pre-DirectX 12" step if this information turns out to be true. I don't think that a vendor locked API is good for the industry as a whole, but giving developers the opportunity to work with a similar API early seems like a win-win for AMD.

What do you guys think, will this improve Mantle uptake at all?

Also, I haven't seen this posted elsewhere and searching for "mantle" and "directx 12" was a bit hard to get through, so lock it if it's a repost.
 

3DVagabond

Lifer
Aug 10, 2009
11,951
204
106
Seems like AMD has as many devs as they can support. They accepted 40 devs for the beta program. Once it's a finished API and made available to everyone, I don't think there will be any issues with uptake.
 

flash-gordon

Member
May 3, 2014
123
34
101
MS got x64'd by AMD...
Considering Mantle has huge similarities with DX12, X1 and PS4 APIs, it seems like AMD is on the edge of getting a contract with Apple and opening a gate of support for them...
 
Last edited:

wand3r3r

Diamond Member
May 16, 2008
3,180
0
0
It seems logical given the statements about mantle/xbox api's similarities and the concepts driving dx12.

I can't imagine gaming studios hopping on board too easily so I guess they have incentives (whether it be $ and/or dx12/console similarities etc.).
 

parvadomus

Senior member
Dec 11, 2012
685
14
81
Another hint about mantle and DX12 being very very similiar... (waaay too similar if you ask me). ;)
 

Shivansps

Diamond Member
Sep 11, 2013
3,916
1,570
136
What that means they are likely have the same or equivalent functions, so you can do A in mantle, you can do A in DX12, meaning, no workaround is needed.

A quick example: Lets say, i want to port C code to Java

C
Code:
printf("this is something!");

Java
Code:
System.out.println("this is something!");

Meaning, porting just that is very easy, thats what they mean with "very easy to port Mantle to DX12".

It does not mean are similar in any other way at all. And actually in that example, they are implemented and executed in very different ways, but giving the same result.
 
Last edited:

parvadomus

Senior member
Dec 11, 2012
685
14
81
What that means they are likely have the same or equivalent functions, so you can do A in mantle, you can do A in DX12, meaning, no workaround is needed.

A quick example: Lets say, i want to port C code to Java

C
Code:
printf("this is something!");

Java
Code:
System.out.println("this is something!");

Meaning, porting just that is very easy, thats what they mean with "very easy to port Mantle to DX12".

It does not mean are similar in any other way at all. And actually in that example, they are executed in very different ways, but giving the same result.

Yep, if you have an equivalent function in DX12 and Mantle then they are very similar, if not the same thing. Its like C# and vb .net, they both are simliar, only the sintaxis/semantics change, the power is the same.
Future AMD DX12 driver is obviously based on the same Mantle implementation.
 

desprado

Golden Member
Jul 16, 2013
1,645
0
0
Really i dont understand if DX12 will have better or equal performance of Mantle than why in the hell Developers will port Mantle and waste time and money i dont understand this logic of AMD.
 
Last edited:

postmortemIA

Diamond Member
Jul 11, 2006
7,721
40
91
What that means they are likely have the same or equivalent functions, so you can do A in mantle, you can do A in DX12, meaning, no workaround is needed.

A quick example: Lets say, i want to port C code to Java

C
Code:
printf("this is something!");
Java
Code:
System.out.print[B]ln[/B]("this is something!");
Meaning, porting just that is very easy, thats what they mean with "very easy to port Mantle to DX12".

It does not mean are similar in any other way at all. And actually in that example, they are implemented and executed in very different ways, but giving the same result.

C sample does not add new line on the end :D
 

futurefields

Diamond Member
Jun 2, 2012
6,470
32
91
Really i dont understand if DX12 will has better or equal performance of Mantle than why in the hell Developers will port Mantle and waste time and money i dont understand this logic of AMD.

Yeah seems like AMD basically just showed Microsoft how to make DX12 and now not much point with making a Mantle port if DX12 will expose as much low level access and be more ubiquitous.

That being said those with HD7000 series will be able to use Mantle but not DX12 so there's that.
 

TrulyUncouth

Senior member
Jul 16, 2013
213
0
76
Unless I am misunderstanding the benefit of mantle is a head start. Basically you can begin making your game in mantle and when DX12 comes around next year then you can port over very easily or stick with mantle if that is working for you. It also gives you experience in a similar system so you would hopefully be better equipped to make future games in DX12.

Again, this is all assuming I understand whats going on.
 

3DVagabond

Lifer
Aug 10, 2009
11,951
204
106
Really i dont understand if DX12 will have better or equal performance of Mantle than why in the hell Developers will port Mantle and waste time and money i dont understand this logic of AMD.

Read what devs are saying about Mantle. It puts the control back into the devs hands. It's obvious why they are doing it. Some people just choose to ignore what they are saying.
 

futurefields

Diamond Member
Jun 2, 2012
6,470
32
91
right but if DX12 puts that same low level control, and is more ubiquitous and compatible with a broader product range, and will be available within a year of Mantle, what's the point of putting dev time ($$$) into writing special code for Mantle when DX12 will provide the same benefits?
 

desprado

Golden Member
Jul 16, 2013
1,645
0
0
Read what devs are saying about Mantle. It puts the control back into the devs hands. It's obvious why they are doing it. Some people just choose to ignore what they are saying.

U really do not try to understanding my post.If Dx12 is similar or better which is most likely than why developers will even care to port games for AMD on Mantlle just to make 10% of user happy with no benefits and so if this is the plan of AMD than that is the reason why they are always second choice on consumer minds.
 

3DVagabond

Lifer
Aug 10, 2009
11,951
204
106
right but if DX12 puts that same low level control, and is more ubiquitous and compatible with a broader product range, and will be available within a year of Mantle, what's the point of putting dev time ($$$) into writing special code for Mantle when DX12 will provide the same benefits?

Who says DX12 will perform as well as Mantle?
 

Noctifer616

Senior member
Nov 5, 2013
380
0
76
right but if DX12 puts that same low level control, and is more ubiquitous and compatible with a broader product range, and will be available within a year of Mantle, what's the point of putting dev time ($$$) into writing special code for Mantle when DX12 will provide the same benefits?

Mantle and DirectX 12 target the same hardware. Both API's are designed for highly programmable graphics architextures (hence why both GCN and Mantle can't work on 6000 series cards or older). The only reason why you can't run Mantle on NVidia or Intel is because there are no drivers for it. However, there is nothing stopping those guys from writing their own driver for their own graphics cards.

Why would devs make games for Mantle now rather than to wait for DX12? Learning experience. Some devs don't even have access to DX12 and won't have probably till next year. Anyone who wants to make DX12 games but doesn't have the API will want to start with Mantle. It's also faster to port something rather than start from scratch, especially when you talk about very similar things.
 

Erenhardt

Diamond Member
Dec 1, 2012
3,251
105
101
right but if DX12 puts that same low level control, and is more ubiquitous and compatible with a broader product range, and will be available within a year of Mantle, what's the point of putting dev time ($$$) into writing special code for Mantle when DX12 will provide the same benefits?

And when DX12 finally comes out, why putting dev time ($$$) into wiriting a special code for DX12, if they can stick with well known dx11...
Sooner or later they will have to switch. And you don't want to be behind the curve in this industry.
 

futurefields

Diamond Member
Jun 2, 2012
6,470
32
91
And when DX12 finally comes out, why putting dev time ($$$) into wiriting a special code for DX12, if they can stick with well known dx11...
Sooner or later they will have to switch. And you don't want to be behind the curve in this industry.

they will use DX12 over DX11 because of the new performance advantage.

why use Mantle when DX12 exists?
 

3DVagabond

Lifer
Aug 10, 2009
11,951
204
106
U really do not try to understanding my post.If Dx12 is similar or better which is most likely than why developers will even care to port games for AMD on Mantlle just to make 10% of user happy with no benefits and so if this is the plan of AMD than that is the reason why they are always second choice on consumer minds.

I understood perfectly. The devs have already explained why they are using Mantle. You ask why would they, when they already are and have said why.

2ndly, What makes you think DX12 is going to be even as good as Mantle, never mind better?

3rdly, Mantle is not tied to an OS.
 

cytg111

Lifer
Mar 17, 2008
25,661
15,159
136
U really do not try to understanding my post.If Dx12 is similar or better which is most likely than why developers will even care to port games for AMD on Mantlle just to make 10% of user happy with no benefits and so if this is the plan of AMD than that is the reason why they are always second choice on consumer minds.

And that is not what is really going on.
What is going on is AMD providing a next gen API for developers to play with, and with that and adaptation they get to somewhat stear where dx12 is heading. Brilliant play on AMD's side. Like em or hate em (if that is your game), you gotta respect the play. Cudos.
 

NTMBK

Lifer
Nov 14, 2011
10,411
5,677
136
If AMD actually pull their finger out and port Mantle to Linux, this would be very interesting. Sounds like DX12 and Mantle are much closer than OpenGL and DX11.
 

BrightCandle

Diamond Member
Mar 15, 2007
4,762
0
76
Just because APIs are similar does not mean that porting is easy. I have used a tonne of APIs claiming this and I can tell you first hand that its complete and utter lies that porting from one to the other is easy. It never is. The printf/Println example from Java/C is far closer to the truth and the reality kicks in when you start embedding names where what looks very similar turns out completely different:

Code:
System.out.println("Hello " + name);

Code:
printf("Hello %s",name);

Made worse by the fact that the name in the c code has to be a null terminated String, in a language where there a lot of ways to represent a String, whereas in Java there is only one way (and its not null terminated). These sorts of on the surface similarities result in significant porting time.

Just look at the PS3 and PS4, they basically use OpenGL so you would expect porting to PC or from PC to PS3/PS4 was easy because the API was similar. Yet we haven't seen many OpenGL games at all. The Xbox 360 on the other hand runs something very similar to DirectX, infact its almost precisely DirectX. Yet we already know it can take 6 months or more for development teams to port. These are APIs with the same, exact same versions and just somewhat modified. The difference of DX12 to Mantle is going to be larger than these differences. Porting will not be easy and its not something developers are going to do unless they have to.
 

Noctifer616

Senior member
Nov 5, 2013
380
0
76
Just look at the PS3 and PS4, they basically use OpenGL so you would expect porting to PC or from PC to PS3/PS4 was easy because the API was similar. Yet we haven't seen many OpenGL games at all. The Xbox 360 on the other hand runs something very similar to DirectX, infact its almost precisely DirectX. Yet we already know it can take 6 months or more for development teams to port. These are APIs with the same, exact same versions and just somewhat modified. The difference of DX12 to Mantle is going to be larger than these differences. Porting will not be easy and its not something developers are going to do unless they have to.

OpenGL and DX on consoles are not the same as they are on PC. I would even assume that they are heavily modified versions. Remember, on PC you can't execute draw calls from more than one core (something Mantle changes drastically), yet on consoles you can.

Also, keep in mind that AMD is also involved in the development of both Mantle and DirectX 12, they would know best how easy it is to port from one to the other.

But yes, despite all that, porting still takes time.