Some suggestions for improvements for the next versions -4.5 ?
-
@gusva said in Some suggestions for improvements for the next versions -4.5 ?:
I can see that you are part of the high level team at the BMS. A suggestion that I had put a while ago is in the lower topic, is there a way to improve the ecm panel without bumping into the classifield and not getting so arcade?
It’s actually happening
-
Hello everyone, continuing with the ideas for future versions of the simulator, something that I would like you to add is the possibility of communicating and using ground troops such as the JTAC and the like.
-
@trueno said in Some suggestions for improvements for the next versions -4.5 ?:
Hello everyone, continuing with the ideas for future versions of the simulator, something that I would like you to add is the possibility of communicating and using ground troops such as the JTAC and the like.
We thought about it as well
-
@trueno said in Some suggestions for improvements for the next versions -4.5 ?:
Hello everyone, continuing with the ideas for future versions of the simulator, something that I would like you to add is the possibility of communicating and using ground troops such as the JTAC and the like.
or be a SAM operator is adream coming true.
-
My 2 Cents:
-
Have landing and taxi light (not the actual beam of light that is already happening) to be independent (this is modeling switch designation related )
-
Include the programming so that we can control flaps in AFM airplanes just like OFM airplanes at the moment.
-
As already mentioned a major overall in the graphics of the clouds (the weather system is very good as it is)
-
Not sure if Dev. related but we need a major rework on the add on for 3DS Max and upgraded it so we work in earlier version of the software.
-
If possible make 128 segment theaters to see threat circles in the 2D world.
-
-
@i-hawk said in Some suggestions for improvements for the next versions -4.5 ?:
allow parallel access to the DirectX context, means you can generate more draw calls from many threads
It always amazes me to see 3D games make thousands of draw() calls every 10ms. (But somehow my system takes several minutes just to boot, log in and render my 2D desktop… lol)
I think the original F4 codebase pre-dated the first dual core Pentiums by … several years? hard to remember. So it’s an amazing thing that BMS makes use of more than 1 core at all.
Did U3 make any further changes to the overall threading model? I haven’t spent any time in the debugger or profiler since U3 so I’m not sure. :] (huge grin)
Generating frames smoothly and consistently is more important, to me, than shaving off milliseconds for higher fps throughput. U3 seems better than ever, in that regard, but I still get periodic microstutters.
-
@airtex2019 said in Some suggestions for improvements for the next versions -4.5 ?:
@i-hawk said in Some suggestions for improvements for the next versions -4.5 ?:
allow parallel access to the DirectX context, means you can generate more draw calls from many threads
It always amazes me to see 3D games make thousands of draw() calls every 10ms. (But somehow my system takes several minutes just to boot, log in and render my 2D desktop… lol)
LOL
I think the original F4 codebase pre-dated the first dual core Pentiums by … several years? hard to remember. So it’s an amazing thing that BMS makes use of more than 1 core at all.
Yes it is quite amazing thinking of that, I heard from folks who were there when the whole things was designed that the mindset was to “Multi thread as much as you can”. No idea why when you have only 1 core to work with. However, I think it would have been easier to multi-thread today than to now fix the original design which unfortunately include (too many) locks in order to run stable. Fortunately, we have today lots of CPU margin to play with so once we will find ways to untangle some of the stuff, we could probably use the existing HW to do more.
However, things are changing internally, and the sim in our Dev branch is pretty different than the public version, while more advanced in some graphical areas, it also change the relations between CPU/GPU loads, so things that today are considered a must to improve, been changed to a degree that they won’t matter much anymore… I personally was amazed to find out (Not me, but Seifer told me cause he knows ) that our code spends most of our CPU load on… transforming vertices. All these years I was quite sure that we spend most of CPU on sim logic right? NO! it’s even a 80-20 kind of relations as far as I understand
Did U3 make any further changes to the overall threading model? I haven’t spent any time in the debugger or profiler since U3 so I’m not sure. :] (huge grin)
I’m not totally sure as I’m personally hardly involved with U3, Seifer can for sure answer that. If you see a performance boost as I understand, it could be some other optimizations than parallel code. Seifer did quite some amazing work there: Both on stability and performance optimizations. And I’m talking about REAL tough crap like nasty races and deadlocks in the most complicated areas of the sim. Not trivial at all
Generating frames smoothly and consistently is more important, to me, than shaving off milliseconds for higher fps throughput. U3 seems better than ever, in that regard, but I still get periodic microstutters.
Wondering where those micro stutters are coming from. I usually have a good eye for performance drops or stuff like stutters, but since a couple of years now that I don’t fly “officially” and I’m with my head deep into future versions, I don’t really follow the current experience. But many other do fly (Including Seifer BTW) and I think if there were constant micro-stutters, we would get such reports from multiple areas. I remember your detailed report and so I believe that maybe you have a very sensitive eye and you caught something that others do not really feel. It would be interesting to track that stuff, as always in Falcon code, there is something lurking from the past
-
@i-hawk said in Some suggestions for improvements for the next versions -4.5 ?:
very sensitive eye and you caught something that others do not really feel
Ironically I see it more in others’ youtube videos … as I’ve tried so hard to optimize my own settings to avoid it, or mitigate it.
Talking about a ~7ms hiccup in frame timings, once every 80-90 frames. I can’t think of how I would begin to debug that, even if I had source code. (I suppose I would instrument the SimLoop and render-thread code to log detailed timing data, and look for discrepancies between p90 and p99 timings.)
I remember from looking at profiler samples, earlier (U1 or U2) my best guess was Weather / sky / lighting code, periodically loading new textures? But that’s a complete WAG…
Anyway, food for thought for the future-dev-branch… if this aspect of the engine is being redesigned or refactored – try to avoid doing anything blocking, irregular or nondeterministic, on the main SimLoop or render threads. (Easier said than done, I know I know)
-
1 - Global World
100% unnecessary and it would just totally big and complicated the game.
And BMS is not FS2020… -
@seifer Ray Tracing would be the most useless thing in the sim.
- As for environment it is simply overkill it does not needed…
- In the cockpit I can imagine the load on any VGA at night where n+1 light sources and reflection in cockpit glass and these sources also have reflection surfaces…
IHMO the merits of a HC flight combat sim is not like that…
To me always the level of tactical environment be the no.1 point and everything comes just after.
So can we have nicer clouds? OK, but in this case the function of the cloud has to modeled block the IR and EO tracking as already happened.
The GFX imp. alone is 100% pointless.
I’m bored on games which are quite photoreal and simply looks very nice…
…while the AI sees through fog, dust and clouds… etc. -
@airtex2019 said in Some suggestions for improvements for the next versions -4.5 ?:
@i-hawk said in Some suggestions for improvements for the next versions -4.5 ?:
very sensitive eye and you caught something that others do not really feel
Ironically I see it more in others’ youtube videos … as I’ve tried so hard to optimize my own settings to avoid it, or mitigate it.
Talking about a ~7ms hiccup in frame timings, once every 80-90 frames. I can’t think of how I would begin to debug that, even if I had source code. (I suppose I would instrument the SimLoop and render-thread code to log detailed timing data, and look for discrepancies between p90 and p99 timings.)
I remember from looking at profiler samples, earlier (U1 or U2) my best guess was Weather / sky / lighting code, periodically loading new textures? But that’s a complete WAG…
Anyway, food for thought for the future-dev-branch… if this aspect of the engine is being redesigned or refactored – try to avoid doing anything blocking, irregular or nondeterministic, on the main SimLoop or render threads. (Easier said than done, I know I know)
If I do the math right, a 7ms stutter every 80-90 frames is I assume ~every second for an average flight with decent system, that sounds like a LOT and I think there is 0 chances no one in or outside the team would notice such an anomaly.
I seriously doubt about loading new weather related textures every ~90 frames.
It’ll be interesting to find the root cause but I guess first we need someone in the Dev team to be able to repro it
-
@molnibalage said in Some suggestions for improvements for the next versions -4.5 ?:
1 - Global World
100% unnecessary and it would just totally big and complicated the game.
And BMS is not FS2020…Probably will not happen. We have so much to do before we even dream of such a thing, that I think I’ll be deaf and senile before that will happen to Falcon4 :d
-
Raytracing implementation in MSFS2020 is very partial and exists only in some spots around the cockpit and wing reflections. Almost everything else has to do with PBR. But whenever BMS makes the move to PBR, the question much larger than just the rendering tech is the assets themselves. All materials would have to be remade and this would mean a slightly different approach to 3d models as well. So, for this amount of work to be realistic perhaps there should first be a way for people to make that work and contribute without in depth knowledge of Falcon specifics and need for antique versions of exporting tools. What there is, is good but you need to spend an extraordinary amount of time to get into it. And while there are great 3d modelers in the community right now, that would be a much larger task.
If you want to see raytracing reflections that work well in action - check out IL2 BoX. There are canopy bubbles there which provide very nice and very confusing reflections. However, I’d say the effect is so subtle, that currently the effort that goes into making it possible is too much.
If I could ask for a particular feature in improving graphics it would be to make light/atmosphere transitions between cloudy and sunny areas smooth. Currently the clouds change smoothly, but the transition happens like a lightswitch.
-
@depapier said in Some suggestions for improvements for the next versions -4.5 ?:
. Currently the clouds change smoothly, but the transition happens like a lightswitch.What ???
It is not supposed to be light this , please provide me a clear repro case
-
@depapier said in Some suggestions for improvements for the next versions -4.5 ?:
Raytracing implementation in MSFS2020 is very partial and exists only in some spots around the cockpit and wing reflections. Almost everything else has to do with PBR. But whenever BMS makes the move to PBR, the question much larger than just the rendering tech is the assets themselves. All materials would have to be remade and this would mean a slightly different approach to 3d models as well. So, for this amount of work to be realistic perhaps there should first be a way for people to make that work and contribute without in depth knowledge of Falcon specifics and need for antique versions of exporting tools. What there is, is good but you need to spend an extraordinary amount of time to get into it. And while there are great 3d modelers in the community right now, that would be a much larger task.
If you want to see raytracing reflections that work well in action - check out IL2 BoX. There are canopy bubbles there which provide very nice and very confusing reflections. However, I’d say the effect is so subtle, that currently the effort that goes into making it possible is too much.
If I could ask for a particular feature in improving graphics it would be to make light/atmosphere transitions between cloudy and sunny areas smooth. Currently the clouds change smoothly, but the transition happens like a lightswitch.
I have nothing against raytracing but we have so much to improve before we even start thinking about fancy stuff
-
@molnibalage hi!
Raytracing is the future. But we are very, very far from this. In fact, we have never talked about this internally (at least not that I know).
But I can definitely see areas that can benefit from this. For example, our cockpit is too dark depending on the angle of the sun, even if the day is sunny and bright. This has already improved in U3, but it got to a point that if we make it brighter, the rest of the world becomes too bright as well.
Also, we have very limited lighting capabilities, as you can see from our airbase fake lights. Raytracing deals with this much more nicely, such that lights happen naturaly.
For now, we have more important stuff to fix
-
@airtex2019 hi!
My U3 runs very smooth, I cannot see this stutter. For 4.36 we are working on, I spotted some stutters no others were complaining, but those were big, not 7 ms. To detect those, I did exactly what you mentioned: I added context clocks around simloop thread and started reducing the scopes until I found the contention point. But this was a new thing, it is not in 4.35. I will play with this with this clock in 4.35 and see if anything comes up. But 7 ms is a bit hard to detect, since it falls in the range of regular stuff (even if we have this 7 ms every frame and the rest is blazing fast, that is still +100 FPS).
@I-Hawk you can still benefit from multithread, even within a single core. There are I/O and system calls that add a lot of contention. For example, imagine what would happen if loading happened on the same thread as sim. Also, the old 3d modelling was very different, we sent hundreds of small draw calls, all those could benefit from multithread. Just think of how the computer works in old systems with one core: multitasking all the way! OSes are good at that!
Regarding threading model for U3: there was no change there, except for one thing that could be making a big difference. All sim logic now is running alone. That is counterintuive in terms of performance. But as I-hawk mentioned, 90% of our CPU time is in OTW part (drawing), which happens after sim logic. That means, by letting sim logic run alone, we get rid of several races and avoid having simloop waiting for campaign during simlogic. When it ends, campaign has 90% of the frame time to do it’s job, which is more than enough.
As a result, it is possible that this move got us not only more stability, but also more frame time stability.
-
Thanks Viper-0,
I don’t use AL. I’m using TARGET since many years now in a hybrid mod (DirectX and TARGET Scripting for Master Modes A-A, NAV and A-G). I don’t have so many problem with TARGET.
I can use three layers programming mode and so much more!!!
Ex: When i’m using the Padlock in Master-Mode A-G, my padlock is looking Air-Ground targets on the ground. When my Master Mode is in A-A, my padlocking is lookking for aircrafts. In NAV Mode, My padlock look for Priority Threats, and so on. I can’t do that kind of layer programming with AL, by the way (or I don’t know how…).My suggestion was not for a HOTAS manager. My suggestion was relating to some little bugs in the Set-Up Controller using the SAVE or APPLY button. (Ex: Some valid callbacks are removed from the keyfile after a SAVE).
So SAVE or APPLY button in the main Set-Up interface of the Sim should be able to write it’s own valid keystrokes file, as it was before.
New F4 pilots who didn’t read this forum can’t figured out what is going on behind the scene… That’s my point. I know Alternate Launcher tool and I’m also able to edit tricky keystrokes files myself with a text editor. I’m only suggesting this upgrade for all newbee and for a better general user experience without the need of another external tool.
-
I think the raytracing that’s being talked about as nice and dandy isn’t raytracing per se, but global illumination + ray tracing. That is indeed a huge task and apart from Control and Metro no game has it implemented properly yet, only in parts, and none of these are even remotely on Falcon scale. Ray traced reflections are another matter. But anyway, I think you guys covered it all already, and I-Hawk is right here.
@Mav-jp i can create a separate topic for this if you like, may turn into a discussion. There I can attach weather maps, make a video etc. But before doing any of that, you should know that the weather maps I use are made in F4Wx 1.05, so perhaps the way cells are done has something to do with that? The effect of switching between Fair/Clear weathers has been there in my experience since forever, but I’m using the F4Wx all this time. So, are you still interested? It’s default theater of course.
-
@seifer said in Some suggestions for improvements for the next versions -4.5 ?:
by letting sim logic run alone, we get rid of several races and avoid having simloop waiting for campaign during simlogic
That sounds like the right direction to me! I think I’m able to see the benefits, in frame-time consistency.
@i-hawk the increased consistency in U3 maybe makes the 7ms stutter even easier to see, in the timing data… just run PresentMon or FrameView and plot this column. The spike/hiccup seems to be every 87th frame, like clockwork.
+7ms is enough to miss/drop a frame at 60hz (fixed) if cpu-time is over 10ms… with g-sync enabled, sadly, it’s more noticeable… I guess because a missed frame at 60hz is less jarring than an out-of-phase frame? or maybe my monitor is just quirky in g-sync mode.
Only other clues I can add:
- if I pause or freeze, in flight, it still happens every 87th frame (so maybe not weather or ground textures after all)
- if I speed up sim time (4x, 8x, 16x) the spike happens more frequently – but not 1:1 with clock speed… it seems to happen every 8 frames (at each of those clock speeds)… weird