Descriptive Problem Summary:
It's not exactly specific. In fact, this post is half a bug report, half a cry for help.
Detailed description of the problem:
Our project uses a lighting system consisting of a few, relatively big atoms made of several overlays. We then apply a blur filter to them.
To give an order of magnitude, the atoms are usually 320x320, made of typically 20 to 30 overlays assembled together using KEEP_TOGETHER. A typical scene has 5 of them.
We then apply a blur filter of size 2 to them.
I tried several optimisation to make it as light-weight as possible, using render_source, render_target, not blurring the whole 320x320 sprites, but rather individual sections of it, etc.
To no avail. The filters perform especially badly for most users, including ones with good GPUs. Disabling filters solves performance for most people, however, some users still have issues with simply rendering the large icons.
If they move to an area without the atoms, they perform a lot better.
Why I think it's a problem:
I don't believe rendering a bunch of 320x320 icons and applying a filter to them should be that heavy on people's GPUs, especially GPUs that can otherwise
Performance is much better locally than on a distributed server for some reason.
It's also really strange how it seems connected to the players' cache. Clearing their cache improves their performance in most cases ; sometimes, rejoining after they downloaded it for the first time is enough.
Finally, but it's anecdotal evidence, someone mentioned re-installing BYOND improving their performance.
I believe there is something worst investigating here. If asked, I can give a minimal working example of just my lighting engine to see if there's a weird behaviour (or if it's simply user error).
Did the problem NOT occur in any earlier versions? If so, what was the last version that worked? (Visit http://www.byond.com/download/build to download old versions for testing.)
Users report the best performance in 1566.
Tuesday, 6:13 am
Login to reply.