Implementing Mantle
by raa brubb · in Torque 3D Professional · 02/04/2014 (9:27 am) · 13 replies
It won't work. Maybe? Hey all, recently Mantle was released and can we really implement it?
Mantle is the revolutionary rendering device that will change gaming forever. But can we really implement it? There are mixed thoughts on this device, me having a AMD GCN architecture can take advantage of Mantle. Someone is ALREADY implementing Mantle into Unreal Engine 3 for Thief. Ok, when I joined the Torque3D community I was excited! The source code, I can change, I can use any physics engine, implement anything I want! But that also means we can implement Mantle. But who's going to program it? Is it worth the two months of debugging, implementing, and such? All I'm asking for is your guys opinion. Would Torque3D really benefit from Mantle and is it worth implementing?
Mantle is the revolutionary rendering device that will change gaming forever. But can we really implement it? There are mixed thoughts on this device, me having a AMD GCN architecture can take advantage of Mantle. Someone is ALREADY implementing Mantle into Unreal Engine 3 for Thief. Ok, when I joined the Torque3D community I was excited! The source code, I can change, I can use any physics engine, implement anything I want! But that also means we can implement Mantle. But who's going to program it? Is it worth the two months of debugging, implementing, and such? All I'm asking for is your guys opinion. Would Torque3D really benefit from Mantle and is it worth implementing?
About the author
#2
02/04/2014 (10:54 am)
Right, I think it really would help in the long run. Using it as an addition to DX and GL is probably the best idea. And to be honest the person who knows Torque3D's rendering system the best would be either the devs or Luis. As for the concerns, yes it is new and I also have found no samples, although it came out yesterday so what can you say. And yes it is only is for AMD. As for saying NVIDIA and AMD making a unified API, I don't think it will happen because they are in a way enemies and they have different hardware (NVIDIA has CUDA and AMD has GCN). So it would probably be worth it to code it all for me. What do you all think?
#3
I personally think OpenGL (3.2+) should be the primary focus and once it's completed and polished then we could look into supporting more graphics APIs. Simply because OpenGL (and OpenGL ES 2.0+) is the only proven cross platform graphics API available to the general public.
02/04/2014 (11:38 am)
Since AMD still refuses to provide any details what so ever about their Mantle API I say it won't happen anytime soon to investigate that it's even worth looking at much less figuring out a way to integrate it into the engine.I personally think OpenGL (3.2+) should be the primary focus and once it's completed and polished then we could look into supporting more graphics APIs. Simply because OpenGL (and OpenGL ES 2.0+) is the only proven cross platform graphics API available to the general public.
#4
02/04/2014 (12:03 pm)
Agree with Nathan Martin, OpenGL should be primary focus. Instead of implementing this, how about a little TLC to the TorqueScript interpreter and some general engine optimizations such as particles and the container system, or even make a game with the engine. c:
#5
02/04/2014 (12:29 pm)
Yup - until AMD releases Mantle to us "little fish" we might as well focus on the APIs that are actually available to us.
#6
It's the choice between something specialized with awesome features, or something that works for everything but with just basic features.
Like the choice between bullet and PhysX.
In the end you will need to develop everything twice.. But I guess we are already doing that with DirectX and OpenGL.
02/05/2014 (9:27 am)
Tbh I see Mantle as AMD's answer to PhysX.It's the choice between something specialized with awesome features, or something that works for everything but with just basic features.
Like the choice between bullet and PhysX.
In the end you will need to develop everything twice.. But I guess we are already doing that with DirectX and OpenGL.
#7
Personally I don't think its worth implementing as its very specific case, but if someone wants to volunteer and do it more power to them. :)
02/06/2014 (5:04 am)
From what I read mantle only really helps if you have a low end CPU as it offloads some CPU work (like physics) onto the GPU (kinda like CUDA)Personally I don't think its worth implementing as its very specific case, but if someone wants to volunteer and do it more power to them. :)
#8
But then again, I'm not exactly an expert on the area.
02/06/2014 (5:14 am)
@Tim, as I understood it they tried to reduce the bottleneck between the CPU and the GPU..But then again, I'm not exactly an expert on the area.
#9
02/06/2014 (12:03 pm)
That may be the case, I am not up to date on AMD APUs
#10
It lowers the amount of processing that happens on the CPU when queueing up drawcalls. So drawcall-heavy scenes will benefit the most.
02/06/2014 (12:35 pm)
Quote:
From what I read mantle only really helps if you have a low end CPU as it offloads some CPU work (like physics) onto the GPU (kinda like CUDA)
It lowers the amount of processing that happens on the CPU when queueing up drawcalls. So drawcall-heavy scenes will benefit the most.
#11
02/07/2014 (9:57 am)
I don't mean to complain, but let's face it. We need to speed up the OpenGL port. If we ever want to get out games on Steam boxes, Linux or just plainly develop on Linux, we need to get the OpenGL working. As for Mantle, yes. What I mean by that is it can be a priority and it can't. One thing about Mantle (at least my understanding) is it's cross-platform, a rendering engine, and a CPU to GPU offloader. It also lowers the amount of work the CPU does during games and such. It would be useful, but OpenGL, yes, does need to be finished.
#12
I remember people form AMD said by Tweeter, they implemented in the future some of the features of Mantle as extensions to OpenGL. It would be much easier / feasible to add T3D when the work is finished in OpenGL.
02/08/2014 (5:15 am)
Porting T3D Mantle would be very interesting, but there is a very long list of things with higher priority.I remember people form AMD said by Tweeter, they implemented in the future some of the features of Mantle as extensions to OpenGL. It would be much easier / feasible to add T3D when the work is finished in OpenGL.
#13
02/08/2014 (5:55 pm)
Yup, so how is the port going Luis?
Andrew Mac
My concerns are:
1) It's a new API with limited samples and likely limited documentation as well. Right now may not be the best time to jump in. OR perhaps its exactly the right time to jump in.
2) It's only supported by select hardware and doesn't appear to have a slower cpu-mode for testing on unsupported hardware. This, for instance, would stop me from participating in development since I can't test anything.
3) I hope we're not caught in another Blu-Ray VS HD-DVD style war between NVIDIA and AMD. Who will emerge with the winning GPU api? It's hard to say if there will ever be a winner or if we'll all just be stuck to implement both APIs. If only they could just get along well enough to create a unified API that both cards can use.
With all that said, do I think it's worth it in the long run? Absolutely, as it's hard to argue with the performance increase.