Torque 3D add DX11 - 10 support?
by Thomas Fluff Harris · in Torque 3D Professional · 11/28/2013 (6:35 am) · 43 replies
Just a query for the pros of torque 3d.
It seems to me that it would be fairly simple to add DX11 support, if you look here, gfx/d3d9/ , i have recreated the files in here but for directx 10 and 11 only it is gfxd3d11 and gfxd3d10 shader, queryfence,enumtranslate etc etc etc.
Where in the gfx folder are these files called and translated into the GFX device calls?
It seems to me that it would be fairly simple to add DX11 support, if you look here, gfx/d3d9/ , i have recreated the files in here but for directx 10 and 11 only it is gfxd3d11 and gfxd3d10 shader, queryfence,enumtranslate etc etc etc.
Where in the gfx folder are these files called and translated into the GFX device calls?
About the author
3 Years developing under Torque 3D and soon going to release a number of products over steam. Sure there has been problems but what development doesn't.
#2
and it always said that dx11 has much better performance then dx9.
but dx11 support in t3d always was criticised .
" i have recreated the files in here but for directx 10 and 11 only it is gfxd3d11 and gfxd3d10 shader, queryfence,enumtranslate etc etc etc."
so,what about your performance gain ?
any side effects?
here is mustafakorkmaz's brance:
https://github.com/mustafakorkmaz/Torque3D/tree/Direct3D11
11/28/2013 (6:11 pm)
it has been while since i have read some performance comparison between dx9 and dx11.and it always said that dx11 has much better performance then dx9.
but dx11 support in t3d always was criticised .
" i have recreated the files in here but for directx 10 and 11 only it is gfxd3d11 and gfxd3d10 shader, queryfence,enumtranslate etc etc etc."
so,what about your performance gain ?
any side effects?
here is mustafakorkmaz's brance:
https://github.com/mustafakorkmaz/Torque3D/tree/Direct3D11
#3
11/28/2013 (6:17 pm)
so far i have only changed the graphics layer to use the same calls in direct x 11 and direct x 10, i haven't actually done anything in the main app to call one of them instead of direct x 9 yet. shouldnt be too hard to change i think its best to create a seperate exe file for each dx version
#4
11/28/2013 (6:36 pm)
also have to create a few dx 10 and 11 specific gfx funcions, dx 11 and 10 dont have the fixed function pipeline of dx9, this would handle lighting, clipping, also need to implement the geometry shader, this is what creates the tessellation i think and lets face it thats what all of us want the new direct x for lol
#5
ya,that is what needed for t3d.i personally like to develop for mobile.
but we have to work on windows machine.so being testing machine,it needs performance boost.without getting better performance from rendering side t3d will always remain as an simulation only or hobbyist try out tool.
since DX is limited only to windows,so i am looking forward to luis's opengl port and personally have started to working on open glES.
looking forward to see your progress.
11/28/2013 (7:20 pm)
" i think and lets face it thats what all of us want the new direct x for lol"ya,that is what needed for t3d.i personally like to develop for mobile.
but we have to work on windows machine.so being testing machine,it needs performance boost.without getting better performance from rendering side t3d will always remain as an simulation only or hobbyist try out tool.
since DX is limited only to windows,so i am looking forward to luis's opengl port and personally have started to working on open glES.
looking forward to see your progress.
#6
11/29/2013 (4:34 am)
Well if this works out properly then it will be a foundation for people to port in newer openGl versions to the engine. I don't know opengl all that well and wouldn't trust myself to even try lik but it should be the same process, define the functions available to the engine as enums of opengls/directxs, there are features even in DX9 that look like they have been left out of the grphics layer in torque in the spirit of cross platform compatibility, but now that opengl is sort of on the same level as dx and can do the same things these features should be implemented. Hell even some rudimentary input controls for the mouse were changed or not used (doubleclick) in the spirit of compatibility.
#7
What you're doing is some pretty fantastic work. Something I feel T3D needed for a long time. Plus it would extent the life of the engine. If things like OpenGL works out!
I know I personally will be following your progression. Hopefully it'll make it into the main branch in the near future.
Keep up the great work!
11/29/2013 (8:18 am)
Thomas,What you're doing is some pretty fantastic work. Something I feel T3D needed for a long time. Plus it would extent the life of the engine. If things like OpenGL works out!
I know I personally will be following your progression. Hopefully it'll make it into the main branch in the near future.
Keep up the great work!
#8
https://github.com/kirillv/cpp-inverse-kinematics-library
11/29/2013 (4:05 pm)
if i get it working next on the hitlist is going to be thishttps://github.com/kirillv/cpp-inverse-kinematics-library
#10
Did you start a development branch for what you are doing for Dx11?
Maybe some others could join in with development. Just asking.
11/30/2013 (7:10 am)
Thomas, Did you start a development branch for what you are doing for Dx11?
Maybe some others could join in with development. Just asking.
#11
11/30/2013 (1:12 pm)
no i havnt created a development branch yet, all the files needed to use dx10 and dx11 are already in place anyway and sorted out, just need to actually test it out see if it works. Tho if anyone is wanting to give it a shot before i release what i have done, my advice would be to do dx10 because of the differences between dx9 and dx10 are huge but the differences between dx10 and 11 are very small.
#12
to list a few:
AI:
NavGraphs - not nav meshes/ Recast has already got nav meshes
Finite State Machines
Fuzzy Logic
Obstacle Avoidance and Steering Behaviours
Game Features:
Iron Sights
Scopes - this will need some changes in dx9s functions anyway for better RTT
Minimap - same as scopes
InverseKinematics and Ragdoll but these will be done after dx10 and dx11
11/30/2013 (1:22 pm)
I will begin testing on this when i have all my other additions sorted out, things that i am working on that i believe torque should have as basic features in its arsenal. to list a few:
AI:
NavGraphs - not nav meshes/ Recast has already got nav meshes
Finite State Machines
Fuzzy Logic
Obstacle Avoidance and Steering Behaviours
Game Features:
Iron Sights
Scopes - this will need some changes in dx9s functions anyway for better RTT
Minimap - same as scopes
InverseKinematics and Ragdoll but these will be done after dx10 and dx11
#13
11/30/2013 (9:56 pm)
Also might be worthwhile to add physical properties to cameras so they dont fly through things like terrain and buildings
#14
12/01/2013 (6:13 am)
Sounds like a solid plan :)
#15
thats a pretty nasty 8as in good)
idea and the feature list is really nailed down.
All that stuff should be already in place but we all know that dx9 is limited so a dx10/11 renderer update would push many things forward.
Great to see a solid plan!
thumbs up
12/01/2013 (12:15 pm)
@Thomasthats a pretty nasty 8as in good)
idea and the feature list is really nailed down.
All that stuff should be already in place but we all know that dx9 is limited so a dx10/11 renderer update would push many things forward.
Great to see a solid plan!
thumbs up
#16
12/01/2013 (12:43 pm)
true dx9 is limited but alot o games still being released today use dx9. anything u see in a game released recently you can do with dx9 just need to improve on torques implementation of it.
#17
12/01/2013 (12:44 pm)
Have a look at the gfxD3D9EnumTranslate.pc.cpp file for all the features dx9 has and their torque enumeration
#18
and well am by all means no coder, it might be sad but i guess you wont get much attention from the real coders here.
Most of those either work for WLE or do their own thing, being left alone to work on something is one thing but being left in the dark when there are ppl who could speed up your work fro the benefit of all,
just by adding a sentence here and there is a shame.
Anyways am glad someone tackles dx10/11 support
12/01/2013 (12:51 pm)
i do get that however you know by now that there is alot that was stripped out/ left outand well am by all means no coder, it might be sad but i guess you wont get much attention from the real coders here.
Most of those either work for WLE or do their own thing, being left alone to work on something is one thing but being left in the dark when there are ppl who could speed up your work fro the benefit of all,
just by adding a sentence here and there is a shame.
Anyways am glad someone tackles dx10/11 support
#19
12/01/2013 (1:01 pm)
its clear tho when u read through the code that most of the features that were left out were due to compatibility with opengl, opengl back then wasnt what it is now and it was leagues behind direct x now both technologies are very much neck and neck.
#20
especially since for indie game developers a opengl engine is a should do thing.
And if you look at stuff like ouya and the upcoming steam os and ofc android
and linux ingeneral.
However more then cheer for you and donate something to the cause wont happen.
If you need beta testers
am in -
i7
Nvidia GTX 675m
16GB RAM
12/01/2013 (1:07 pm)
they are and tbh that is why am surprised that you are not tackling opengl?!especially since for indie game developers a opengl engine is a should do thing.
And if you look at stuff like ouya and the upcoming steam os and ofc android
and linux ingeneral.
However more then cheer for you and donate something to the cause wont happen.
If you need beta testers
am in -
i7
Nvidia GTX 675m
16GB RAM
Thomas Fluff Harris
CTRL-INTELLIGENCE Ltd