feather
feather copied to clipboard
Bad client performance
Description
The minecraft client experiences awful fps drops when loading new chunks. This is especially noticeable when spawning for the first time and when loading large amounts of blocks. This doesn't happen on vanilla servers.
Reproduction Steps
- Start the server
- Connect from a standard client
- Cross chunk borders
- Experience lag
Your Environment
- Operating System: Windows 10
Additional Context
The server doesn't seem to be struggling at all and this bug persists even when the server is configured to only send 1 chunk per tick. To experience this effect to the maximum extent, go to x: -800 z: -1000 on the default seed. Notice the multiple fps drops on the second image.

This is most likely do to java being too slow at processing the incoming chunks. In other words, feather is too fast which results in a "dos" like attack on the client. We should add in some rate limiting for chunks or packets in general.
I think this is related to the lighting engine. I had similar issues, but they went away when I installed the phosphor mod. As I understand it, the server currently sends light level 15 for every subchunk that has blocks in it, while the chunks without any blocks have light level 0. Maybe this causes some expensive calculations on the client. In that case, I would expect that they go away once the lighting is implemented properly.
I think this confirms your theory,
So basically, the slow lighting engine doesn't usually blow up only because the Vanilla server is slow, too? Sounds about right for 1.14+
So basically, the slow lighting engine doesn't usually blow up only because the Vanilla server is slow, too? Sounds about right for 1.14+
Actually, the problem is that the client recalculates light for whatever reason when it receives invalid light data. When you generate a vanilla world and load it through feather, no client lag occurs.
I found a way that my whole client lags when ingame if you have smooth fps enabled (under performance in optifine idk about sodium)
Smooth fps gave me 0fps for long time I struggled then I tried disable it so it worked. It even somehow 0fps at the menus when ingame, such as video settings.