[Q for Egosoft] Any chance for DirectX Implementation?
Moderator: Moderators for English X Forum
[Q for Egosoft] Any chance for DirectX Implementation?
I understand X4 is based on XRVR's Vulkan system, which was supposed to increase FPS enough to make VR work well. However, I wonder if somehow DirectX would provide higher FPS for X4. My reasoning: I have a GTX 1070 and i5-4590, and I frequently experience choppy FPS in combat where otherwise the FPS is fine. I don't think it's related to the extra CPU load I understand X4 requires for the extra simulation compared to XR. It really seems to relate to graphical effects, which many of us have noted perform much worse in X4 than XR, and XR's were almost universally more "flashy" (many of us greatly miss that, of course). I also wonder if we might be able to get back a lot of the awesome "flashy" effects from XR much more easily with a DirectX implementation.
Could an Egosoft developer please address this question in some form? Do we have any chance of seeing a DirectX implementation? If not, do we have any chance of getting (at least) the graphical effects level of XR in X4, other than what we've seen in 3.0 videos released so far?
Thanks for your consideration!
Could an Egosoft developer please address this question in some form? Do we have any chance of seeing a DirectX implementation? If not, do we have any chance of getting (at least) the graphical effects level of XR in X4, other than what we've seen in 3.0 videos released so far?
Thanks for your consideration!
Care to see what I've been creating? https://www.youtube.com/user/ytubrute
Re: [Q for Egosoft] Any chance for DirectX Implementation?
One other question about Vulkan: X4 appears to use v1.1, so I'm wondering if it's worth us trying this feature of using both discrete GPU and integrated GPU together, described here. Any thoughts or confirmation this works with X4? How does one activate it if the integrated GPU is enabled? https://en.wikipedia.org/wiki/Vulkan_(API)#Vulkan_1.1
"For example, integrated GPUs included on the CPU can be used in conjunction with a high-end dedicated GPU for a slight performance boost."
"For example, integrated GPUs included on the CPU can be used in conjunction with a high-end dedicated GPU for a slight performance boost."
Care to see what I've been creating? https://www.youtube.com/user/ytubrute
-
- Moderator (English)
- Posts: 3230
- Joined: Mon, 14. Jul 08, 13:07
Re: [Q for Egosoft] Any chance for DirectX Implementation?
No, simply (yeah, not quite) switching an API would not "somehow" provide any gains out of thin air. The GPU won't suddenly start working any faster if you switch to DirectX. It's an API, your means of communicating with and controlling the GPU. Vulkan was chosen for its touted advantage - reducing the driver overhead. Mostly on the CPU side. In simple terms, reducing the time it takes to issue commands to the GPU, thereby giving you more CPU time to do actual useful work per frame. But, when all is said and done and all commands are issued, if your GPU takes 'n' milliseconds to draw a given scene, it will take exactly the same time for that scene no matter if you're using DirectX, OpenGL or Vulkan.
And no, you don't "activate" multi-GPU processing. The application (X4) needs to be programmed to utilize multiple devices. It's not a magical switch that a user can just flick on.
And no, you don't "activate" multi-GPU processing. The application (X4) needs to be programmed to utilize multiple devices. It's not a magical switch that a user can just flick on.
Re: [Q for Egosoft] Any chance for DirectX Implementation?
Have you noticed a graphical performance decrease between XR and X4 on the same machine, such as in combat? Any thoughts on what causes this? I know X4 simulates *far* more in the economy, but it's combat effects where I see choppy FPS (feels like a slideshow sometimes, with lots of weapon fire), so it seems unrelated to "economic simulation".radcapricorn wrote: ↑Fri, 4. Oct 19, 18:31No, simply (yeah, not quite) switching an API would not "somehow" provide any gains out of thin air. The GPU won't suddenly start working any faster if you switch to DirectX. It's an API, your means of communicating with and controlling the GPU. Vulkan was chosen for its touted advantage - reducing the driver overhead. Mostly on the CPU side. In simple terms, reducing the time it takes to issue commands to the GPU, thereby giving you more CPU time to do actual useful work per frame. But, when all is said and done and all commands are issued, if your GPU takes 'n' milliseconds to draw a given scene, it will take exactly the same time for that scene no matter if you're using DirectX, OpenGL or Vulkan.
Last edited by tomchk on Fri, 4. Oct 19, 19:57, edited 1 time in total.
Care to see what I've been creating? https://www.youtube.com/user/ytubrute
-
- Moderator (English)
- Posts: 3230
- Joined: Mon, 14. Jul 08, 13:07
Re: [Q for Egosoft] Any chance for DirectX Implementation?
That's not a useful comparison. Rebirth on my machine is silky smooth everywhere. X4 is not. What I can say is that I don't see any performance decrease specifically in combat, compared to how the rest of the game operates. Latest betas also seem to have introduced some weird random pauses (stuttering) that weren't there before, but these also happen in and out of combat alike.
Re: [Q for Egosoft] Any chance for DirectX Implementation?
Hmm, I wonder why performance in combat is so much worse for me. I see many people complain about FPS in the map, but it's never an issue for me when I have most of the info (which I don't always need) disabled. The only times I see real stuttering and slideshows are combat, typically close quarters.radcapricorn wrote: ↑Fri, 4. Oct 19, 19:31That's not a useful comparison. Rebirth on my machine is silky smooth everywhere. X4 is not. What I can say is that I don't see any performance decrease specifically in combat, compared to how the rest of the game operates. Latest betas also seem to have introduced some weird random pauses (stuttering) that weren't there before, but these also happen in and out of combat alike.
XR is also always smooth for me. Do you recall if XR always was smooth for you?
If the developers can share any insights about these questions, I know some of us would really appreciate it!
Care to see what I've been creating? https://www.youtube.com/user/ytubrute
-
- Moderator (English)
- Posts: 3230
- Joined: Mon, 14. Jul 08, 13:07
Re: [Q for Egosoft] Any chance for DirectX Implementation?
On my current hardware, yes, it always was. Back when it was in beta, I was running a different machine though, and it struggled. Oh, and that's the Linux version, so the OpenGL port of Rebirth.
Re: [Q for Egosoft] Any chance for DirectX Implementation?
I am not a developer..tomchk wrote: ↑Fri, 4. Oct 19, 20:02Hmm, I wonder why performance in combat is so much worse for me. I see many people complain about FPS in the map, but it's never an issue for me when I have most of the info (which I don't always need) disabled. The only times I see real stuttering and slideshows are combat, typically close quarters.
XR is also always smooth for me. Do you recall if XR always was smooth for you?
If the developers can share any insights about these questions, I know some of us would really appreciate it!
..but I am playing on the latest Intel i5 "Ultra-Low-Power" chip with its integrated graphics chips a lot lately* and I see zero difference between an empty sector VS huge combat scenes, regarding FPS or any other overall performance. I am speaking of 20 destroyers, 120 S, 30 M, 6 XL in a single combat scene. If my undervolted iGPU sees no difference in performance, I don't see a reason why your 1070 should.
My best guess would be you having a slow CPU or having specific graphics options turned on that have a huge impact on complex scenes like SSAO or SSR maybe? I am playing on all settings turned low, of course.
*(no dedicated card - that's a story to be told for another time)
Code: Select all
Und wenn ein Forenbösewicht, was Ungezogenes spricht, dann hol' ich meinen Kaktus und der sticht sticht sticht.
/l、
゙(゚、 。 7
l、゙ ~ヽ /
じしf_, )ノ
-
- Moderator (English)
- Posts: 3230
- Joined: Mon, 14. Jul 08, 13:07
Re: [Q for Egosoft] Any chance for DirectX Implementation?
Ego is quite obviously doing something weird with frame times. Entering a transporter room on any station is insta-drop to 30FPS and below for me. Four walls and a door, when it can be 40-60FPS outside that room. Sometimes ships crossing the dock force field cause a noticeable stutter. In some sectors, being 200-300km away from any station, and simply looking in the direction where stations are also easily cuts a third off of the FPS.
Re: [Q for Egosoft] Any chance for DirectX Implementation?
I do have SSAO and SSR enabled. I think I have everything except AA enabled and at max. I have issues sometimes with as little as 3 destroyers and 2 XL.Tamina wrote: ↑Fri, 4. Oct 19, 20:46I am not a developer..
..but I am playing on the latest Intel i5 "Ultra-Low-Power" chip with its integrated graphics chips a lot lately* and I see zero difference between an empty sector VS huge combat scenes, regarding FPS or any other overall performance. I am speaking of 20 destroyers, 120 S, 30 M, 6 XL in a single combat scene. If my undervolted iGPU sees no difference in performance, I don't see a reason why your 1070 should.
My best guess would be you having a slow CPU or having specific graphics options turned on that have a huge impact on complex scenes like SSAO or SSR maybe? I am playing on all settings turned low, of course.
Doesn't XR have SSAO and SSR, though?
Care to see what I've been creating? https://www.youtube.com/user/ytubrute
Re: [Q for Egosoft] Any chance for DirectX Implementation?
Here is answer (from the thread DirectX version when?):tomchk wrote: ↑Fri, 4. Oct 19, 16:55I understand X4 is based on XRVR's Vulkan system, which was supposed to increase FPS enough to make VR work well. However, I wonder if somehow DirectX would provide higher FPS for X4. My reasoning: I have a GTX 1070 and i5-4590, and I frequently experience choppy FPS in combat where otherwise the FPS is fine. I don't think it's related to the extra CPU load I understand X4 requires for the extra simulation compared to XR. It really seems to relate to graphical effects, which many of us have noted perform much worse in X4 than XR, and XR's were almost universally more "flashy" (many of us greatly miss that, of course). I also wonder if we might be able to get back a lot of the awesome "flashy" effects from XR much more easily with a DirectX implementation.
Could an Egosoft developer please address this question in some form? Do we have any chance of seeing a DirectX implementation? If not, do we have any chance of getting (at least) the graphical effects level of XR in X4, other than what we've seen in 3.0 videos released so far?
Thanks for your consideration!
Re: [Q for Egosoft] Any chance for DirectX Implementation?
Thanks! I searched but didn't see that. Hopefully (assuming they haven't reconsidered) the issues many of us are having with performance will be improved, and graphical effects will become at least on par with XR!
Care to see what I've been creating? https://www.youtube.com/user/ytubrute
Re: [Q for Egosoft] Any chance for DirectX Implementation?
you keep comparing xr and x4 and its not that simple, turn off SSAO and SSR and try, what helped me greatly was updating every driver possibletomchk wrote: ↑Fri, 4. Oct 19, 21:27I do have SSAO and SSR enabled. I think I have everything except AA enabled and at max. I have issues sometimes with as little as 3 destroyers and 2 XL.Tamina wrote: ↑Fri, 4. Oct 19, 20:46I am not a developer..
..but I am playing on the latest Intel i5 "Ultra-Low-Power" chip with its integrated graphics chips a lot lately* and I see zero difference between an empty sector VS huge combat scenes, regarding FPS or any other overall performance. I am speaking of 20 destroyers, 120 S, 30 M, 6 XL in a single combat scene. If my undervolted iGPU sees no difference in performance, I don't see a reason why your 1070 should.
My best guess would be you having a slow CPU or having specific graphics options turned on that have a huge impact on complex scenes like SSAO or SSR maybe? I am playing on all settings turned low, of course.
Doesn't XR have SSAO and SSR, though?
Fixed ships getting spawned away from ship configuration menu at resupply ships from automatically getting deployables.
Re: [Q for Egosoft] Any chance for DirectX Implementation?
I'll keep trying more drivers, but my point with comparing effects quality between XR and X4 can be phrased with questions like these:
Should we be okay with a noticeable step backwards in effects quality compared to the last game released years ago? (At least some more explanation about why this was/is needed would be much appreciated. I know 3.0 will help, but it still looks worse than XR effects in previews I've seen.)
Is it a fair solution to disable effects on systems that should be able to handle them without any trouble?
I'm not trying to be impatient or unreasonable here. I'm mostly concerned that Egosoft is losing a lot of interest because of these issues, and I suspect more communication would help them. I love their work and truly hope they keep improving it and gaining more customers!
Care to see what I've been creating? https://www.youtube.com/user/ytubrute
-
- Moderator (English)
- Posts: 3230
- Joined: Mon, 14. Jul 08, 13:07
Re: [Q for Egosoft] Any chance for DirectX Implementation?
We as players? I don't think we should be OK with that. Honestly, some of the effects X4's got nothing on Rebirth. Weapon and damage effects in Rebirth looked absolutely gorgeous, still do. Explosions in 4 look barely better than in DOOM. The '93 DOOM.
Re: [Q for Egosoft] Any chance for DirectX Implementation?
Thank you. I think they deserve a *bit* more credit than that! I appreciate knowing I'm not suddenly alone on this, though!radcapricorn wrote: ↑Sat, 5. Oct 19, 00:37We as players? I don't think we should be OK with that. Honestly, some of the effects X4's got nothing on Rebirth. Weapon and damage effects in Rebirth looked absolutely gorgeous, still do. Explosions in 4 look barely better than in DOOM. The '93 DOOM.
XR was truly gorgeous, and even today I rarely see a game that can hold a candle to its looks (and its sound effects, but that's OT).
Care to see what I've been creating? https://www.youtube.com/user/ytubrute
-
- Moderator (English)
- Posts: 4764
- Joined: Fri, 21. Dec 18, 18:23
Re: [Q for Egosoft] Any chance for DirectX Implementation?
Vulkan is already an extremely optimized top of the range graphics API. Both AMD, NVidia and Intel offer very good support for it on most OSes (except Apple OSes...). There is no way that D3D11 or older can compete with it. D3D12 may reach parity, at best.
The i5-4590 is likely the bottleneck. Someone reported that moving from a first generation Ryzen to a third generation Ryzen gave them 100-200% more frames per second despite the actual performance boost being only ~28%. The choppy frame rate in combat could be caused by the low free processor margin not coping well with the increased simulation complexity that combat requires. It seems that with X4 once frame rate starts to fall it falls off fast.
Not likely. DX is even more limiting than Vulkan.
This requires the application be programmed to allocate work loads to both devices. The performance gain will almost certainly be negative as the CPU memory bandwidth will be hammered by the integrated GPU and hence reduce single thread performance which is most often the performance bottleneck. Even GPU performance might not be improved due to synchronization overhead.tomchk wrote: ↑Fri, 4. Oct 19, 17:24One other question about Vulkan: X4 appears to use v1.1, so I'm wondering if it's worth us trying this feature of using both discrete GPU and integrated GPU together, described here. Any thoughts or confirmation this works with X4? How does one activate it if the integrated GPU is enabled? https://en.wikipedia.org/wiki/Vulkan_(API)#Vulkan_1.1
This is one of those features which in theory is possible, but chances are getting a working or useful implementation is not. One would have to be majorly GPU bottlenecked for it to make a difference, the maximum difference is a few percent better at most (as most integrated GPUs are very weak compared to discrete GPUs) and it is highly prone to reducing performance due to the integrated GPU sharing resources with the CPU. The integrated GPU would need to use an additional 4GB of system memory as well.
The concept works better when one has 2 ore more discrete GPUs. However this still requires that performance be GPU bottlenecked to start with which is mostly not the case for X4.
Actually this used to be the case with OpenGL vs Direct3D with some drivers. The actual performance of the API is determined by the driver and with the more complex to implement older APIs this was especially the case and one of the reasons game developers prefer to use Direct3D over OpenGL. One could easily create a very poorly optimized Vulkan driver if one desired, even if it makes no commercial sense to do so.radcapricorn wrote: ↑Fri, 4. Oct 19, 18:31The GPU won't suddenly start working any faster if you switch to DirectX.
This depends on if the executed shaders result in the GPU performing exactly the same sequence of operations to produce the frame. D3D and OpenGL, especially older versions, might be limited by how expressive the shader API is and so prevent some potential optimizations being implemented that can be implemented in Vulkan. These optimizations might result in the GPU generating a similarly looking frame in less time by using operations or data formats which one cannot use with the other APIs.radcapricorn wrote: ↑Fri, 4. Oct 19, 18:31if your GPU takes 'n' milliseconds to draw a given scene, it will take exactly the same time for that scene no matter if you're using DirectX, OpenGL or Vulkan.
It can be that free processor time margins were eaten away by the more complex economy and supporting scripts. Once the longest path is taking up 100% of CPU time then even little changes in game complexity could have large impacts on frame rate as the engine drops frames to maintain game speed.tomchk wrote: ↑Fri, 4. Oct 19, 18:41Have you noticed a graphical performance decrease between XR and X4 on the same machine, such as in combat? Any thoughts on what causes this? I know X4 simulates *far* more in the economy, but it's combat effects where I see choppy FPS (feels like a slideshow sometimes, with lots of weapon fire), so it seems unrelated to "economic simulation".
The frame pacing issues are often caused by dynamic loading of assets. It is especially bad if running off a mechanical drive, to the point it can be annoying to play.radcapricorn wrote: ↑Fri, 4. Oct 19, 21:08Entering a transporter room on any station is insta-drop to 30FPS and below for me. Four walls and a door, when it can be 40-60FPS outside that room. Sometimes ships crossing the dock force field cause a noticeable stutter. In some sectors, being 200-300km away from any station, and simply looking in the direction where stations are also easily cuts a third off of the FPS.
Low frame rate can be caused by collisions. For example flying a L Destroyer inside a Xenon Defence platform, like in the demonstration save I provided in the beta forum, causes a huge FPS drop even on my new Ryzen 3900X, although it is now still playable.
A lot of this is subjective. Some people may find the X4 effects are improved over XR because they prefer them. In any case Vulkan API is not limiting what effects can be used as it is a cutting edge top of the range graphics API.tomchk wrote: ↑Sat, 5. Oct 19, 00:20Should we be okay with a noticeable step backwards in effects quality compared to the last game released years ago? (At least some more explanation about why this was/is needed would be much appreciated. I know 3.0 will help, but it still looks worse than XR effects in previews I've seen.)
Is it a fair solution to disable effects on systems that should be able to handle them without any trouble?
I honestly do not notice much of a difference. Most of the effects are still very much the same.radcapricorn wrote: ↑Sat, 5. Oct 19, 00:37We as players? I don't think we should be OK with that. Honestly, some of the effects X4's got nothing on Rebirth. Weapon and damage effects in Rebirth looked absolutely gorgeous, still do. Explosions in 4 look barely better than in DOOM. The '93 DOOM.
The only effect which was majorly downgraded was the destruction explosions. This was likely done for gameplay reasons as having an L ships exploding every 1-2 seconds in a big battle would clutter the screen too much with black holes and shockwaves.
Re: [Q for Egosoft] Any chance for DirectX Implementation?
This seems to be a classic case of the XY problem.
If you want better performance, ask for better performance. If you want a game with fancier visuals, ask for fancier visuals.
If you want better performance, ask for better performance. If you want a game with fancier visuals, ask for fancier visuals.
-
- Moderator (English)
- Posts: 3230
- Joined: Mon, 14. Jul 08, 13:07
Re: [Q for Egosoft] Any chance for DirectX Implementation?
For the explosion effects as they are currently? I don't think so. We've all seen them do way better work, so why should we congratulate them on regression? A spade is a spade, and a bad visual effect is a bad visual effect. IMHO.
That's rather irrelevant. I appreciate that there's always a "technically...", but that's not what this topic is about, now is it?Imperial Good wrote: ↑Sat, 5. Oct 19, 01:23Actually this used to be the case with OpenGL vs Direct3D with some drivers...radcapricorn wrote: ↑Fri, 4. Oct 19, 18:31The GPU won't suddenly start working any faster if you switch to DirectX.
As above.Imperial Good wrote: ↑Sat, 5. Oct 19, 01:23This depends on if the executed shaders...radcapricorn wrote: ↑Fri, 4. Oct 19, 18:31if your GPU takes 'n' milliseconds to draw a given scene, it will take exactly the same time for that scene no matter if you're using DirectX, OpenGL or Vulkan.
Neither is relevant to the situations I mentioned. That's the thing. I can understand framerate drops in busy scenes. What I can't understand is 33ms frames inside a toilet, that is, transporter room. It's not collisions, and it's not loading of assets. Any transporter on any station. Go in - 30FPS. Stay in as long as you like, it's still 30FPS. Go out - normal ambient FPS. But what's especially frustrating is that a game in which framerate fluctuations are to be expected handles those fluctuations very, very poorly. For example, get a sudden framerate cliff, and your weapons jump way out of their maximum gimbal range, then limp back into allowed range. Or your analog stick registers way more movement, which makes it all the more infuriating in entering the aforementioned "toilet", as suddenly you can't even hit that keypad the first time. It's almost as if the game was written to run at and expect a steady framerate, even though it can't.Imperial Good wrote: ↑Sat, 5. Oct 19, 01:23The frame pacing issues are often caused by dynamic loading of assets... Low frame rate can be caused by collisions...radcapricorn wrote: ↑Fri, 4. Oct 19, 21:08Entering a transporter room on any station is insta-drop to 30FPS and below for me. Four walls and a door, when it can be 40-60FPS outside that room. Sometimes ships crossing the dock force field cause a noticeable stutter. In some sectors, being 200-300km away from any station, and simply looking in the direction where stations are also easily cuts a third off of the FPS.
Even if that is the case, it was way way over-done. Even small fighter explosions got so castrated it's painful to watch. They're also very low resolution, which is immediately noticeable and contrasts with ship and the resulting wreck detail. And capship explosions? Gameplay/lore reasons is all well and good; fine, no jumpdrive - no shockwaves. Low framerate low-res sprite animation as a replacement though? Yuck! I'm pretty sure that X4 capship explosions won't stand up to even those in vanilla Freespace 2, let alone the SCP version; and it was released what, two decades ago, a year after Beyond the Frontier?Imperial Good wrote: ↑Sat, 5. Oct 19, 01:23I honestly do not notice much of a difference. Most of the effects are still very much the same.radcapricorn wrote: ↑Sat, 5. Oct 19, 00:37We as players? I don't think we should be OK with that. Honestly, some of the effects X4's got nothing on Rebirth. Weapon and damage effects in Rebirth looked absolutely gorgeous, still do. Explosions in 4 look barely better than in DOOM. The '93 DOOM.
The only effect which was majorly downgraded was the destruction explosions. This was likely done for gameplay reasons as having an L ships exploding every 1-2 seconds in a big battle would clutter the screen too much with black holes and shockwaves.
As for some other effects, you really don't notice? Damage effects on destroyed subsystems are just gone, now we only get those same low-res poofs and ugly wrecks. Awesome Plasma/JET beams, or heck, even Skunk's mining laser Mk1 would give a handicap to X4's beams. Thargon Tracer projectiles? Plasma projectile hits? Glowing sticky projectiles (which there's even an in-game mod for stickies)? Where's all this stuff gone?..
Re: [Q for Egosoft] Any chance for DirectX Implementation?
Thank you—you have listed a number of the many effects that have vanished since XR without explanation. You also are willing to be more frank about the low res sprite explosions, and you’re right. You really are. The game has many things that look amazing, but the effects are arguably lower quality than Freespace 2.
I would so appreciate some explanation for these effects regressions and hope that we will get something better soon. I really believe this has bothered a lot of players.
I would so appreciate some explanation for these effects regressions and hope that we will get something better soon. I really believe this has bothered a lot of players.
Care to see what I've been creating? https://www.youtube.com/user/ytubrute