mojira.dev
MC-199032

No vertex shader bound at draw causing extreme lag in 1.16 minecraft.

I captured extreme lag in minecraft 1.16 with RenderDoc. I am getting drops down to 6 frames per second. Sometimes even 4fps. The uploaded file is created with renderdoc and you will need renderdoc to read this.

Recurrent bug:
Incorrect API Use - High - Undefined - 0 - No vertex shader bound at draw

There is about 400+ GL_ARRAY_BUFFERS on one capture of lag alone

Attachments

Comments 17

An attachment with a disallowed file extension has been removed from this ticket.

Executable files and documents are not allowed as attachments.
Please attach crash reports, log files and screenshots as they are instead of pasting them into a document.
-- I am a bot. This action was performed automatically! Please report any issues in Discord or Reddit

Please provide a screenshot of your game while the lag is occurring with your F3 debug screen enabled.

Here you go. I dont know how to enable any more information on F3. If you need that please tell me how.

[media]

And does it only happen while RenderDoc is running?

This is nothing to do with renderdoc. This bug is relevant even without render doc running. That 8fps was captured without render doc running, just by launching minecraft normally. I only used that program to debug for you guys. Last time i reported this you couldnt fix it without some sort of way to trace it.

7 more comments

I appreciate you trying to figure this out with me. It makes me and alot of other users unable to play the game most of the time. The game was not ran in renderdoc when getting 8fps l ike i said. I am not using optifine or anything, just the default launcher. My render distance is at 10 or 14 or something, Thats very low! I could do 32 chunks in 1.15. Why is 1.15 not like this but 1.16 is? Its like something got changed when 1.16 got released. In 1.15 i dont ever get this problem. The mass amount of GL_ARRAY_BUFFERS might be causing lag also. I have 4 gigs dedicated to minecraft. When i was getting 8fps only 1.3 gigs of ram was getting used. But considering its an Incorrect API usage error, I think the lag is from all the buffers, the API error though is because you are trying to draw array buffers without a vertex shader to determine the final location.(This is coming from my friend that makes games).

I want you to keep in mind these are lag drops. When im playing normally on these chunk distances i get near 200fps.

Theres nothing else i can provide...

Hello, I am his friend who makes games...

I recommended the use of RenderDoc to him to see what exactly was happening with OpenGL while the game was experiencing severe frame drops.
One of the immediately noticeable things was the API errors, "No vertex shader bound at draw." I told him that this could mean that they were submitting array buffers without an activate shader program, he asked me what vertex shaders do, and I told him that they are used to determine the final location of vertices and also optionally adjust texture coordinates and vertex normals before the fragment shaders run. 

I am not an expert when it comes to low level APIs such as OpenGL, I only have basic experience with it. I don't think that the API errors would cause any noticeable lag.

Another thing I seen was a large number of vertex array objects. There seemed to be way to many for what was actually on screen. I don't know how you guys have your render system set up, so I don't know if this is normal or not, I guess it would make sense if you guys didn't use some form of texture mapping/stitching so that you can draw blocks with different textures all in the same buffer.

Havent had a lag spike in like a week. Not sure what got changed but im no longer getting insane fps dips. I did update my graphics drivers. but that was AFTER the lag stopped.

I still stand by this comment 17 days later.

Is this still an issue in the latest snapshot?

No longer an issue on the latest version.
Problem is/was solved at some point.

Dawson Evans

michael

Confirmed

Important

Performance

1.16.2, 1.16.3, 1.16.4 Pre-release 1, 1.16.4, 20w45a, 20w46a, 20w48a, 20w49a

Retrieved