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

Added a new facade config. #3706

Merged
merged 2 commits into from Sep 2, 2018

Conversation

Projects
None yet
1 participant
@yueh
Member

yueh commented Aug 31, 2018

DO NOT MERGE. NEEDS facade rework to be merged before.

The whitelist is now based on manually add explicit entries instead of
automatically adding every existing block. This alone should save a few
MB of RAM depending on the modpack size.

Additionally the FacadeConfig is no longer extending the normal
Configuration provided by Forge. It will only parse the file once per
start and store the settings in an optimised collection to further
reduce memory consumption.

Any full block without a TileEntity and having a model is whitelisted
automatically and does not need an explicit entry anymore.

By default vanilla and AE2 glass is added as they are no fullblocks
technically.

The whitelist technically allows many more blocks now. E.g. stairs,
slabs or even items like saplings. But with various rendering quality.

Further there is an option to allow facades based on TileEntities, this
is completely unsupported and can work or corrupt the whole save.

@yueh yueh added this to the rv6.alpha - 1.12 milestone Aug 31, 2018

@sonarcloud

SonarQube analysis found issues:
Bug Bugs: 0
Vulnerability Vulnerabilities: 0
Code Smell Code Smells: 3

Including the following issue(s) which could not be reported in line:

  1. Code Smell Code Smell: Remove this unused private "hasSimpleModel" method. (more)

See all issues in SonarCloud

@sonarcloud

SonarQube analysis found issues:
Bug Bugs: 0
Vulnerability Vulnerabilities: 0
Code Smell Code Smells: 3

Including the following issue(s) which could not be reported in line:

  1. Code Smell Code Smell: Remove this unused private "hasSimpleModel" method. (more)

See all issues in SonarCloud

@sonarcloud

SonarQube analysis found issues:
Bug Bugs: 0
Vulnerability Vulnerabilities: 0
Code Smell Code Smells: 3

Including the following issue(s) which could not be reported in line:

  1. Code Smell Code Smell: Remove this unused private "hasSimpleModel" method. (more)

See all issues in SonarCloud

@sonarcloud

SonarQube analysis found issues:
Bug Bugs: 0
Vulnerability Vulnerabilities: 0
Code Smell Code Smells: 3

Including the following issue(s) which could not be reported in line:

  1. Code Smell Code Smell: Remove this unused private "hasSimpleModel" method. (more)

See all issues in SonarCloud

@covers1624 covers1624 force-pushed the facade-render-rework branch from 09e27a1 to 5caf85c Sep 2, 2018

@yueh yueh force-pushed the f-new-facade-config branch from 1308667 to 85afc4b Sep 2, 2018

@sonarcloud

SonarQube analysis found issues:
Bug Bugs: 0
Vulnerability Vulnerabilities: 0
Code Smell Code Smells: 3

Including the following issue(s) which could not be reported in line:

  1. Code Smell Code Smell: Remove this unused private "hasSimpleModel" method. (more)

See all issues in SonarCloud

@sonarcloud

SonarQube analysis found issues:
Bug Bugs: 0
Vulnerability Vulnerabilities: 0
Code Smell Code Smells: 3

Including the following issue(s) which could not be reported in line:

  1. Code Smell Code Smell: Remove this unused private "hasSimpleModel" method. (more)

See all issues in SonarCloud

final IBlockState defaultState = block.getDefaultState();
final boolean isTileEntity = block.hasTileEntity( defaultState );
final boolean isFullCube = block.isFullCube( defaultState );

This comment has been minimized.

@sonarcloud

sonarcloud bot Sep 2, 2018

Code Smell Code Smell: Remove this use of "isFullCube"; it is deprecated. (squid:CallToDeprecatedMethod)

See it in SonarCloud

// Try to get the block state based on the item stack's meta. If this fails, don't consider it for a facade
// This for example fails for Pistons because they hardcoded an invalid meta value in vanilla
IBlockState blockState;
try
{
blockState = b.getStateFromMeta( metadata );
blockState = block.getStateFromMeta( metadata );

This comment has been minimized.

@sonarcloud

sonarcloud bot Sep 2, 2018

Code Smell Code Smell: Remove this use of "getStateFromMeta"; it is deprecated. (squid:CallToDeprecatedMethod)

See it in SonarCloud

yueh added some commits Aug 31, 2018

Added a new facade config.
The whitelist is now based on manually add explicit entries instead of
automatically adding every existing block. This alone should save a few
MB of RAM depending on the modpack size.

Additionally the FacadeConfig is no longer extending the normal
Configuration provided by Forge. It will only parse the file once per
start and store the settings in an optimised collection to further
reduce memory consumption.

Any full block without a TileEntity and having a model is whitelisted
automatically and does not need an explicit entry anymore.

By default vanilla and AE2 glass is added as they are no fullblocks
technically.

The whitelist technically allows many more blocks now. E.g. stairs,
slabs or even items like saplings. But with various rendering quality.

Further there is an option to allow facades based on TileEntities, this
is completely unsupported and can work or corrupt the whole save.

@yueh yueh force-pushed the f-new-facade-config branch from 85afc4b to 4c9bc9e Sep 2, 2018

@yueh yueh changed the base branch from facade-render-rework to rv6-1.12 Sep 2, 2018

@yueh yueh merged commit b1ac0ad into rv6-1.12 Sep 2, 2018

3 checks passed

AE2 - PRs Build #983 succeeded in 2 min 32 sec
Details
continuous-integration/travis-ci/push The Travis CI build passed
Details
jenkins Success
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment