Botania

Botania

133M Downloads

Large FPS hit with Mana spreaders

reece-bennett opened this issue · 19 comments

commented

Whenever I place a mana spreader connected to (and that is the important part, if the flowers are placed alone or the spreader alone there is no issue) I get a pretty hefty FPS drop. I've narrowed down through the F3 pie chart menu that this is related to "root.gameRenderer.level.update.chunks.sort" the same time this happens the chunk updates go through the roof. The FPS drop does differ depending on the world it is tested on so I am guessing that just depends on the blocks in the chunk that are being updated?

2014-06-15_15 21 13
Placing the spreader and pool alone, no lag, note the sort % in the pie menu and the chunk updates.

2014-06-15_15 19 14
Placing the dayblooms and pool alone, again no lag.

2014-06-15_15 19 48
Placing both the dayblooms, pool and spreader. This time there is a considerable ammount of lag, the sort is incrased massivly and also chunk updates are constantly around 50.

commented

Try turning off VSync and setting the max fps to Unlimited if you haven't yet, I don't get an fps drop from this.

commented

Still a great amount of lag. On a fresh world the sort thing in the F3 menu still rises but not as drasticaly and the fps doesn't drop nearly as much. This makes me assume it is updating the chunks around where I set this up and that is causing the lag?

Edit: Just found that moving away and looking the other direction removes any lag. Looking back towards where the spreader is does drop fps slightly. After moving away the sort % returns to what it was before placing the spreader and flowers.

commented

The mana pool seems irrelevant to this. The test runs with interactions just between dayblooms and a spreader, no placement of a mana pool had any impact.

In my fresh world, while standing in the same chunk as the spreader:

Mana spreader+a daybloom gets 40 chunk updates regardless of where it is placed.
Mana spreader and a daybloom crossing chunk boundaries, but the daybloom not touching the chunk border nets 40 updates.
Mana spreader with a daybloom touching a chunk border gets 80 chunk updates
Mana spreader with a daybloom touching a chunk corner nets 160 chunk updates (and about 20FPS).

The number of updates is not cumulative with additional dayblooms, there are either 40, 80 or 160 updates.
Standing in a chunk with no spreader generates a different number of updates, as does moving further from it.

It appears to wholly be an artifact of what is within 1 block radius of a daybloom that is sending to a spreader.

Or this could be different altogether, as I only got an FPS drop, and not 'frame lag', as I still had ~40fps

commented

I'll post this around and see if someone can reproduce, if that's not the case then I really can't help you, it runs perfectly fine here.

commented

Psycho, can you reproduce and then press alt-f3-c and paste the log created to pastebin and link it here plz?

commented

Physco^ stupid autocorrect

commented

Glad that people have been able to reproduce and it wasn't just my stupid computer. I'm at school so will be able to do more testing in 6 hours or so.

Also thanks for the instructions. This is my first time debugging anything apart from a crash in Minecraft so didn't really know any of the hotkeys to obtain info or things like that.

commented

Clean install (I retested with no texture pack after I found I forgot to remove it. identical results)
The wooden blocks mark the X of four chunks.

Results are identical except fully half my initial results with the 1117 forge.
A second test with a fully clean install and forge 1125 shows identical results. My initial findings must have been the result of another mod interacting, however the FPS drop is the same if the daybloom is on a border or in the corner of a chunk.

The spreader being in the same or a different chunk seems to have no impact.

2014-06-16_07 28 53
2014-06-16_07 28 00
2014-06-16_07 28 09
2014-06-16_07 28 37
2014-06-16_07 28 45

commented

My world isn't ever at 0 chunk updates, generally fluctuates between 10 and 30. I tried this, isn't stuck at 60, still fluctuates a fair bit, no frame drop.

commented

2014-06-16_14 58 46

2014-06-16_14 58 59

I can't reproduce it, as I've said.

commented

Could you downgrade to forge 1117 and see it still happens?

commented

I see. I can reproduce it in the chunk corner too. Did some experimenting to try to fix it, and you know what I have to say?
I'm ignoring this issue completely because in all honesty I got better things to do then exploding my head with stress from an issue I have absolutely no idea how to fix or even a hint of a clue as to what causes it. Don't place flowers in chunk corners.

commented

That's completely understandable. It might work itself out in future versions. I'm probably going to leave Minecraft alone for a week or two because of exams then look at this again. I'll wait a good while before bringing it up again nevertheless.

commented

Is one of those dayblooms in the X and Z location c:0 (or c: 15)?

The corner position is the only time I see (in F3, I dont notice it myself) the FPS hit.
With vsync off and no advanced GL, I drop from ~370fps to ~290fps
With vsync off and advanced GL, I drop form ~320 to ~250

commented

Having a daybloom and mana spreader together seems to slow down the loading of chunks. Hitting F3-a to reload chunks with a daybloom is slower than without. Not sure if this is just me but it seems related. I can also confirm the placement of the daybloom in a chunk affects the intensity of the chunk updates (seems to be 20 for mid of a chunk, 40 for touching 1 border and 80 for a corner)

commented

Decided to go give it a look since I was on a clear head today. Ended up finding it, should be in the next version.

commented

Oh, great. Glad you've had some downtime from bug fixing/searching to put
in some of the recent stuff, it looks pretty ace. Really looking forward to
playing again. Out of interest was it something to do with the flowers
updating more chunks than they should have been or something completely
different?

On 23 June 2014 14:24, Vasco Lavos [email protected] wrote:

Decided to go give it a look since I was on a clear head today. Ended up
finding it, should be in the next version.


Reply to this email directly or view it on GitHub
#101 (comment).

commented

This actually is a general bug, it had nothing to do with the chunk border. They were updating every time their mana is put into a spreader, which is normal behaviour to keep visuals right. However, I forgot the check if any mana whatsoever was being put, so even when it put 0 mana (no change) it updated regardless.

commented

Oh right, strange how it reacted with the placement in the chunk for me
then. At least it is fixed now, I will have a play some other time though,
got revision to do -.-

On 23 June 2014 17:10, Vasco Lavos [email protected] wrote:

This actually is a general bug, it had nothing to do with the chunk
border. They were updating every time their mana is put into a spreader,
which is normal behaviour to keep visuals right. However, I forgot the
check if any mana whatsoever was being put, so even when it put 0 mana (no
change) it updated regardless.


Reply to this email directly or view it on GitHub
#101 (comment).