Game Development Community

DirectX 11 Implementation

by Entr0py · in Torque 3D Professional · 06/09/2011 (10:59 am) · 10 replies

So when can we expect DirectX 11 implementation? I say "when" and not "if" because virtually every 3D engine *but* T3D has either added directx 11 or is already in the process of adding it.

It looks like most are only using the tessellation feature which is very pretty but the compute capabilities are far more interesting IMO.


#1
06/09/2011 (11:17 am)
We're looking into it. Internal discussions about it have been happening recently. However, we are still staffing up on programmers which will help dictate our processes.
#2
06/09/2011 (11:23 am)
Excellent, thank you for the quick reply.
#3
06/09/2011 (10:10 pm)
Or maybe OpenGL 4.1? ;-).

Personally I like the idea of OpenGL over Direct3D so its easier to support multiple platforms and just one graphics layer.
#4
06/09/2011 (10:37 pm)
Yes that would be even better, along with OpenCL if that is not too much to ask.

TGE always had the edge over its competitors for its portability until TGEA, it would be nice if we could get back to that during the current transition to next-gen gaming.
#5
08/08/2011 (1:50 am)
Greetings,

I've started studying "Migrating to Direct3D11" here: http://msdn.microsoft.com/en-us/library/ff476190(v=VS.85).aspx as well as the "Direct3D 9 to Direct3D 10 Considerations" Since DX11 is simply an extension of DX10. Apparently it took 3 hours to port the Frostbite engine from 10 to 11.

@Michael: I'm willing to bet you have a list of Torque specific obstacles to deal with from your internal discussions, can you share any for those that might consider taking on the task themselves?

I realize maximum cross platform compatibility is probably a big factor in your decision process.

I'm quite a few years out of touch with Torque's inner workings despite being a license owner since before TGEA came out. From what I understand Torque GFX Rendering is a Dx9 and OpenGL Wrapper? So I'm guessing that has to be updated in addition.

For my purposes I'm wondering if it would be a huge leap to disable GFX and work directly with DirectX instead. Finding missing documentation on GFX which means learning it through Code I suppose, would rather avoid/bypass that for now if possible.

From the looks of it, Torque has already started to move away from Fixed Function Pipeline and moved to Programmable/Shader Pipeline? (with Fixed function left over as an option for backwards compatibility?). Dx10/11 does away Fixed Function Pipeline completely, if this has already been done to some degree(Deferred Lighting?) I would guess that would make the transition go smoother.

Updates on whats going on with Dx11 would be nice anyhow.

Regards.


My Motivations/History: Due to real life issues and lack of time I abandoned Torque engine several years ago, recently started to have time again and first tried to use UDK for a project because at first glance it appeared to support most of the features I wanted already. I ended up running into a roadblock in implementation that would require source access to deal with which has annoyed me enough to look to Torque again and see if I can make it into "my own" engine.
Fow now I just want maximum functionality, meaning DX11 only, no concern for backwards compatibility or cross platform right away. If I manage to Port it to DX11 before GG does I'd consider sharing and porting the OpenGL version as well. I have time to do it now.
However, I'm not the greatest programmer, more of an artist with more scripting, shader coding and modding experience than straight programming from scratch.
#6
08/08/2011 (4:20 am)
While I'd like to see DX11 features, I wouldn't want to sacrifice DX9 compatibility to get it.

According to the steam hardware survey less than 6% of gamers are fully DX11 capable with 5% stuck firmly with DX9.
#7
08/08/2011 (1:40 pm)
@Bloodknight: Luckily for you GarageGames would not do that. 56% on Steam are DX10 capable btw, as long as your features are not Dependant on DX11 only features it would still run fine on DX10.

Another factor is not many games have really taken advantage of DX11 yet, therefor no need to get a DX11 card. In a few years time that statistic may greatly change.
To alter one's development process and choose features based on that is what usually leads to the release of games that look several years old by the time they come out, among other things.

The problem in my case is that I'm not looking to make a game that has already been done before, instead I've waited for technology to catch up to an acceptable point.

#8
08/10/2011 (10:22 pm)
@ Chris E.

Porting DX10 to DX11 might not taking that much time as a simple port, however, there are optimizations in DX11 that make a great impact on performance that to implement correctly could take a little bit of time (such as ones to deferred rendering).

Porting DX9 to DX11 is a whole another beast. A very, very simple port is not the most time consuming thing. And by simple, I mean just surfaces without lighting. There is a slew of architecture changes to DX11 that significantly increases development time for a "port". This is only with sticking with the same methodologies too, this is not included improved methodologies for DX11.'

@ Bloodknight

Out of pure curiosity, what DX11 features would you like to see?
#9
08/10/2011 (10:31 pm)
Direct Compute
Multithreaded Rendering
Tesselation

Pretty much everything next-gen games will need to compete.
#10
08/11/2011 (4:17 am)
@ Joseph

I understand your points and agree about DX9 to 11 being a beast.
I suppose the question should become, is it feasible to do the "basic" port without the improved methods at first, just to kick start working with, say Tessellation, and then start adding the improved DX11 methods/optimizations afterwards?
Or would that make the process worse overall?

Personally I'm looking at Dynamic Tessellation down the road as being a replacement for for Legacy model swapping LOD methods as well as a replacement for bump/normal mapping methods when combined with Displacement maps. Animating/Blending between displacements maps brings some interesting possibilities as well.