- View New Content
-
Getting Started
-
Tutorials
Tutorial Categories
Tutorials Main Page Installation and Setup Downloadable TutorialsROM Adjustments
Number of Balls Adjustments Volume Adjustments
-
Visual Pinball Tables
VP 8 Desktop Tables
All VPM Recreations VP Recreations VP/VPM MODs VP Originals ROMsVP 9 Desktop Tables
All VPM Recreations VP Recreations VP/VPM MODs VP Originals ROMsVP9 Cabinet Tables
All Full Screen Cabinet Full Screen B2S Cabinet Spanned Cabinet Tables Media Packs ROMsVPX Tables
All VPinMAME Recreations VPX- - /VPinMAME - MOD Tables VPX Recreations VPX Originals Media Packs ROMs VR
-
Frontend Media & Backglass
Media Packs
Complete Media Packs Wheel Logos VideosBackglasses
dB2S Animated Backglasses UVP Animated Backglasses Topper Images
- Future Pinball Tables
-
Design Resources
Main Resources
Table Templates Playfield Images Image Library Sound Library Key CodesVP Guides
VP8 Guide - English VP8 Guide - Deutsch VP9 Guide - English VP9.1.x Guide - English VP Object Guide VPM DocumentationFuture Pinball Resources
Playfield Images 3D Model LibraryFuture Pinball Guides
FP Script Guide Big Draco Script Guide FP Table Design Guide FP DMD Guide
- Other Features
- Bug Tracker
- Image Gallery
- Blogs
-
More
Potential Flipper Lag Improvement Idea
Started By
Ben Logan
, Oct 11 2016 08:40 PM
357 replies to this topic
#201
Posted 20 October 2016 - 02:21 PM
What is the possibility of speeding up the vpm to vp roundtrip communication?
"it will all be ok in the end, if it's not ok, it's not the end"
Monster Bash VP10 WIP https://dl.dropboxus... (vpx)WIP15.vpx
#203
Posted 20 October 2016 - 02:53 PM
From the table builder side i think the communication needs to be figured out.
I can't see adding a workaround to everytable that would take away from the accuracy of a recreation.
Unless there could be say a vpmclass added to the core.vbs. that would allow for the script side fix for the situation.
I don't think bypassing the flipper solenoids is the route to go with as it makes getting flippers working accurately a complete pain in the a$$.
I delt with this on bigbang bar due to the flipper solenoid not functioning properly and having to track balls... etc to make the flippers stop working at the appropriate times
I can't see adding a workaround to everytable that would take away from the accuracy of a recreation.
Unless there could be say a vpmclass added to the core.vbs. that would allow for the script side fix for the situation.
I don't think bypassing the flipper solenoids is the route to go with as it makes getting flippers working accurately a complete pain in the a$$.
I delt with this on bigbang bar due to the flipper solenoid not functioning properly and having to track balls... etc to make the flippers stop working at the appropriate times
"it will all be ok in the end, if it's not ok, it's not the end"
Monster Bash VP10 WIP https://dl.dropboxus... (vpx)WIP15.vpx
#204
Posted 20 October 2016 - 04:58 PM
I fully agree. But there is no way to have a zero time VP<->VPM roundtrip, simply because the emulation is inbetween. But hopefully it can be drastically reduced, because currently its a bit simplistic/straight forward, thus can take a while/varies a lot.
EDIT: JF, as for the VPX vs VP9/PM5 lag topic: i will still investigate if for example the graphics driver by default inserts more buffered frames for VPX (which people could test on their own by setting the maximum prerendered frames in the NVIDIA control panel to 1).
EDIT2: Apparently there is even a maximum prerendered frames control in DX9 itself, at least when using Windows Vista and up. I'll implement this into VP, for you guys to test.
Okay, i just verified this in the horribly detailed GPUView tool.. Setting maximum prerendered frames to 1 in the NVIDIA control panel can indeed help..
Now for the "sad" part: As i suspected, the new/more complicated rendering pipeline of VPX also comes into play, so as an experiment for all people having issues with VPX having more lag than VP9, please try the following inside the VP video preferences:
a) Disable "Update in-game" in the Ambient Occlusion section
b) Disable "FXAA"
c) Disable "Brute-force 4x Anti-Aliasing"
d) Disable "Maximum pre-rendered Frames" by setting it to 0
e) Disable FPS Limiter/VSync by setting it to 0
Then in the table itself, under "Lighting" set the "Bloom Strength" to 0 and make sure that none of the above global settings is actually enabled in the table itself
Does this improve the situation for you?
Edited by toxie, 20 October 2016 - 04:59 PM.
#205
Posted 20 October 2016 - 05:45 PM
It would make a lot of sense if disabling those graphics settings would improve performance. These are the type of settings you would lower or disable in pretty much any video game if you are having performance issues. It would be a great first step for anyone to try cutting out some of the eye candy.
Toxie, would it also benefit people who are having these issues to slide the "elements detail level" down a bit?
Edited by Drybonz, 20 October 2016 - 05:45 PM.
#207
Posted 20 October 2016 - 06:09 PM
@Drybonz: But here its a bit different: The renderloop in VP9 was rather simple, but in VPX we have a lot of sync points that cannot be avoided. So its not about the graphics themselves or the better materials, etc., but rather the different stages that depend on each other. So for example the Dynamic AO depends on the rendering of the scene itself, the bloom on the overall rendered image, the FXAA on the bloom-processed image. So if your machine is not high-end, then the driver will try to do more of the work 'in parallel' by buffering up work to get good FPS.
So one can either choose between longer latency or less FPS in the end. But then the problem is that one cannot -really- do that, as the driver will still do a lot of decisions under the hood, plus: these dependencies cannot be worked around when it comes to lag, as one actually really depends on the other.
As for elements detail level: No, not really (unless you have really a low end machine like Fuzzel mentioned). Its more about all the postprocessing effects i mentioned above, as these insert all these dependencies. Note that even if the framerate is still okay, having these effects enabled can increase the overall lag.
But thats where you guys come in and need to test on your setups to verify this some more.
Edited by toxie, 20 October 2016 - 06:14 PM.
#208
Posted 20 October 2016 - 06:20 PM
Is there a difference in pinmame communication time when it is piped directly into vp using the textbox or flasher object
"it will all be ok in the end, if it's not ok, it's not the end"
Monster Bash VP10 WIP https://dl.dropboxus... (vpx)WIP15.vpx
#211
Posted 20 October 2016 - 08:03 PM
Good info, Toxie... thanks. FPS not being directly related to lag and stutter, in particular, is something I see a lot of misconception about in the other performance threads as well, so that is something we should take note of.
I am not sure how helpful this feedback is since I'm not having the lag problems, but I set the AO off on my tables and set the bloom low... generally 0.8 (not a magic number just what I landed on). AA I turn all off in VPX, but have it at 2x in the nvidia ctrl panel. I also set the reflections on ball and table low.
#212
Posted 20 October 2016 - 08:55 PM
Good info, Toxie... thanks. FPS not being directly related to lag and stutter, in particular, is something I see a lot of misconception about in the other performance threads as well, so that is something we should take note of.
I don't know if Toxie was saying that FPS is not directly related to stutter - Toxie? I get that the end result might be mixed and / or that other things take more processing / buffering / hold-ups in the GPU and we typically see that as FPS drops and lag increases. However, I can see and could demonstrate real quickly that FPS indeed affects lag on my system, as far as VPX at least, and when all other features / nVidia control panel items are held exact / constant. I have a 120hz 27" OC'd Yamakasi Catleap and if I set it at 60hz and vsync VPX check out my lag test tables scenarios, then only change the monitor refresh to 120, repeat (this time getting 120 instead of 60 FPS), I can notice an impact quite easily / readily. This also on a test table that is VPM though but has direct flipper control using scripting (i.e. no ROM lag for flipper solenoid round trip).
Maybe I'm missing something and I never really got into lag research until VP (am technical for a living though) and don't spend a lot of time in gamers forums, which seems is something you say, but can demonstrate causally an isolated FPS change (FPS / monitor Hz change) and toggle between 60 and 120 yielding different results for input lag / game responsiveness to it.
Edited by jimmyfingers, 20 October 2016 - 08:57 PM.
#214
Posted 20 October 2016 - 09:33 PM
Again, its more complicated. :/
If your hardware is "fast enough", and CPU and GPU power matches for VP needs, then all of this should not matter that much. But if its not, then the above mentioned components -can- influence the latency, as the gfx-driver-buffering comes into play. So in some sense the FPS will play an indirect role, also in general with the processing of the scripts and interaction with VPM.
But this is all still fuzzy at the moment, thats why i would need more experiments from people that feel that VPX is less responsive than VP9 on their system and that could try the above mentioned disabling of effects.
Enabling vsync is on-top-of-that also a factor. Then of course having 120 vs 60 will definetly always improve things, simply because most of the involved components will half their ms to respond on the average (e.g. VP itself, VPM<->VP interaction, the gfx driver and the monitor/TV).
Is "bloom" considered post processing, Toxie? That's the only effect I haven't experimented with turning off.
Yes. It also adds a dependency, as it needs to run when everything else is finished. Although this one shouldn't be -that- bad, but who knows, so please experiment and let us know.
Note:
In addition i also replaced the old 'Maximum pre-rendered frames' hacky setting in VPX 10.2 with the official DX mechanism on all non-windows-XP systems.
This should be exactly the same as the same named setting within the NVIDIA control panel, so you guys can now leave that driver thing at its default and experiment solely from within VPX itself.
By setting it to 1 or 2, one should be able to get rid of some more lag at the price of some FPS.
Edited by toxie, 20 October 2016 - 09:36 PM.
#215
Posted 20 October 2016 - 11:24 PM
Sorry if I am going off topic Jimmy... I see a lot of comments from people that are confused that they have good fps but ball stutter... But that is a different scenario that I probably shouldn't be crossing over with this one.
Yah, I assumed when you referred to "lag" in your previous post that you meant input lag / input latency especially since that's essentially the seed that bloomed this thread
So if you're saying lag as in stutter, than that is indeed a totally different story / scenario as far as relation to FPS, at least from my VP experiences, and probably best for us to wrap up that unintended crossover
#216
Posted 21 October 2016 - 12:01 AM
So basically we are searching for a way to have the flippers flip on the key up and key down subs rather then on the solcallback, but keep them from flipping when the rom normally wouldn't allow them to flip.
Hmmmmmm, I'll have to think about this.
I don't notice the lag, as most of my vp playing is done on a fast pc monitor rather then a tv.
If I may ask, what size & make/model monitor are you using?
I'm trying to find a 27" or larger fast IPS panel monitor that is reasonably priced. Even if I disregard the cost, large, fast & IPS don't go together. It appears to be one of those "pick 2 out of 3" situations.
#219
Posted 21 October 2016 - 08:28 AM
Just search "144hz ips" on amazon.
Previously I did that on Newegg & got 5 results. Four 27” monitors with 2560x1440 resolution with the cheapest costing $509.90, and one 34” curved screen.
Searching for “144Hz IPS monitor” on Amazon got mixed results. IOW some non-IPS panels and 75Hz units. Reading through the fine print the largest 144Hz IPS was 27” and there were four of them, all with 2560x1440 resolution.
Looks like it really comes down to refresh rate vs. resolution. I don't know if a 27", 75Hz IPS with 1920x1080 is a worthwhile compromise.
#220
Posted 21 October 2016 - 08:52 AM
I don't want to get this thread off topic because these guys are trying to work on fixing the lag for us here, but yes... the various features of the monitors make them more expensive and it's a trade-off with how much you want to spend. I had to go through this when I bought my last monitor and I could not afford every feature I wanted. Take your time and read reviews, etc...
Edited by Drybonz, 21 October 2016 - 08:52 AM.



Top










are all trademarks of VPFORUMS.