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

Optimize 1.7.10 TE whitelist #183

Open
wants to merge 2 commits into
base: 1.7.10
Choose a base branch
from

Conversation

charagarlnad
Copy link

The call to Block.getUnlocalizedName() was generating a new String for every TE every time the CullTask ran, generating significant amounts of garbage at high framerates, changed from a Set to Set for more efficient comparison.

Copy link

Quality Gate Failed Quality Gate failed

Failed conditions
C Maintainability Rating on New Code (required ≥ A)

See analysis details on SonarQube Cloud

Catch issues before they fail your Quality Gate with our IDE extension SonarQube for IDE

Copy link

what-the-diff bot commented Dec 15, 2024

PR Summary

  • Ungraded Project Configuration

    • Revised project configuration files, with the specific aim of boosting compatibility, efficiency, and updating plugins version used. This has been done through modifications in gradle.properties and gradle-wrapper.properties to make sure the project uses the most recent Gradle version and map URLs correctly. The module identity has also been changed and various publishing configurations have been adjusted to suit our needs.
  • Updated Plugin Version

    • Modified settings.gradle to update our plugin (gtnhsettingsconvention) to its latest version. Updating this plugin could give us access to additional features, better optimizations, and bug fixes.
  • Improved Block Entity Management

    • Changes in Config.java and CullTask.java result in better handling of block entities. The block entity whitelist now recognizes more accurate identifiers, and the move from a Set<String> to a Set<Block> for unCullable enhances the system’s capability to handle 'uncullable' block entities.
  • Enhanced Entity Culling Mechanism

    • Modifications in EntityCullingMod.java and EntityCullingModBase.java lead to better management of the culling process. These updates will help in executing a more efficient culling process upon the game's post-initialization stage, which could potentially improve response time and overall game performance.

@tr7zw
Copy link
Owner

tr7zw commented Dec 19, 2024

Hm that pr also replaces the gradle script with a later iteration if I gathered it correctly. Will have to check that a bit since the 1.7.10 port wasn't made by me

generating significant amounts of garbage at high framerates

the culling is fully framerate-independent, so it has no impact that way. The one allocated string is not optimal, but shouldn't be a concern.

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.

2 participants