Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

uppppp #14

Merged
merged 37 commits into from
Jan 4, 2025
Merged

uppppp #14

merged 37 commits into from
Jan 4, 2025

Conversation

ThatMG393
Copy link
Owner

No description provided.

jellysquid3 and others added 30 commits November 27, 2024 16:27
The state of the depth test prior to cloud rendering is
undefined. After rendering, it is expected to be
disabled again.
Rounding of the values now happens after the 16-bit
intermediaries are added together.

This affected some animated textures, causing them to
exhibit flickering behavior.
This covers the following additional blocks:
- Cauldrons
- Brewing Stands
- Bells

Co-authored-by: JellySquid <[email protected]>
Avoids rebuilding the render lists and doing a graph search
more often than necessary by checking if the section actually
changed in a way that's relevant to the graph search.

For worlds that update their blocks frequently (every tick or
every redstone tick) this avoids half the graph searches. Some
graph searches are still necessary to schedule rebuild tasks,
but when the task results come back, this doesn't do another
graph search unless the section's visibility data or build state
changed in a way that needs the render list to be updated.
This fixes some problems where very large block entities in
nearby sections may be incorrectly culled. But it does not
comprehensively fix the problem for all other sections,
since that would require visiting the 27-neighborhood of
every section, which is too slow.
The OpenGL ICD name now includes the file extension,
which the regex expressions were not matching.
For systems with hybrid graphics, it may be the case
that an incompatible graphics driver is installed, but that
it isn't used for the OpenGL context.

We can avoid showing errors in this situation by checking
the vendor string of the context immediately after
creation.

This is not the most robust check, but in practice, a single
system should not have multiple graphics drivers installed
from the same vendor, so checking the string should be
relatively safe.
Fix section and region sorting by using the correct section coordinate instead of the integer part of the camera transform, which is incorrect near the origin.

Closes #2918
* Added "Pale Oak Leaves" for Minecraft 1.21.4.
* Reduced the file size of all block textures.
This fixes a regression caused by 26f4263.

The underlying problem is that accessing Java's AWT *after*
LWJGL3 has initialized is not possible.

Minecraft has a utility class which uses rundll32 internally,
but we cannot access that due to classloader restrictions on
NeoForge.

That leaves us with having to implement the call ourselves,
and simply using Shell32 directly (like we do for other
Windows APIs) seems easiest.
The world may not be assigned to the renderer at
initialization, which is the case for non-terrain
rendering (i.e. block entities.)

Likely, there is no performance benefit to caching
this data in the first place, so the easiest solution
is to just remove the code.
IMS212 and others added 7 commits December 21, 2024 16:15
Custom models which extended these base models would not properly have their textures applied, as the texture references were accidentally changed.
This is anywhere from 10 to 15% faster depending
on what entities are being rendered.

Most of the improvements come from more efficiently
laying out the cuboid data and coalescing neighboring
32-bit values into 64-bit words.

Furthermore, vertex positions are calculated by
extracting vectors from the pose matrix and adding
them to the origin vertex, which avoids many
matrix multiplications.

Co-authored-by: MoePus <[email protected]>
The billboard geometry can be computed using the
camera's left and up vectors, saving some cycles.

When rendering thousands of billboard particles, this
was ~10% faster than baseline in my observation.

Co-authored-by: MoePus <[email protected]>
@ThatMG393 ThatMG393 merged commit 4995bda into ThatMG393:upstreamed/cdc Jan 4, 2025
1 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants