Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
On my system this yields a ~20% boost in FPS in Battlefield Huge.
The main tricks used here are buffer re-specification, which enables the code to avoid a cpu/gpu sync when the scene gets crowded as well as using a STREAM buffer (which is what it should be, allegedly).
It also uses less memory (now ~1.44MB, before ~2.36MB, ~40% less) and this in turn could help lower end devices as well.
Lastly it now uses the full range of a u16, instead of limiting the number of elements to a u8 making it draw even more in less.