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

WIP: Protochunk rendering - addresses #2002, #2024, #2035 #2047

Closed
wants to merge 6 commits into from

Conversation

ralokt
Copy link

@ralokt ralokt commented Jun 23, 2022

This PR addresses (and most likely fixes) #2002, #2024, and #2035. It does so by:

  • Adding the following config options:
    • render_protochunks
    • prettify_protochunk_lighting
  • When render_protochunks is enabled, also rendering chunks with a status of "empty" or "structure_starts".
  • When prettify_protochunk_lighting is enabled, attempting to fix lighting issues with dark border chunks
  • Adding documentation for these config options

Caveats:

  • Worlds and RegionSets now need to remember these config options, as the change must be made there
  • The config options are currently global because that was easier (making them per render would have required significant refactoring)

Reasons why this PR is a draft:

  • I haven't checked for broken tests yet
  • I haven't done a complete render using a config file - since my local dev setup was simplistic, I just locally changed default values to test their impact.

Nevertheless, some previews!

render_protochunks=False, prettify_protochunk_lighting=False (equivalent to current):

render_protochunks=True, prettify_protochunk_lighting=False:

render_protochunks=True, prettify_protochunk_lighting=True:

The world I used for rendering is attached here:
mcov-test-118chunks-118-forceupgrade.zip

I made it by creating a new world in 1.17, teleporting to x/z=0/1024, teleporting back to 0/0, reopening the world in 1.18, and then optimizing it.

I am also re-rendering https://map.wurstmineberg.de with these options enabled, although that will take a few days.

ralokt added 6 commits June 23, 2022 16:38
The defined options are:
 - render_protochunks
 - prettify_protochunk_lighting
Both are booleans.
Worlds (and RegionSets) now remember how to transform proto-chunks for
rendering before returning them.
The Overviewer will now render certain proto-chunks (chunks with a
status of "empty" or "structure_starts") if requested
Also contains a small refactor
Proto-chunks that don't have skylight data are now rendered fully
bright instead.
A heuristic is now applied to proto-chunks to avoid dark chunks near
the edges of the map, if requested
Add documentation for the following options:
 - render_protochunks
 - prettify_protochunk_lighting
@ralokt ralokt changed the title Draft: Protochunk rendering - addresses #2002, #2024, #2035 WIP: Protochunk rendering - addresses #2002, #2024, #2035 Jun 23, 2022
@ralokt
Copy link
Author

ralokt commented Jun 23, 2022

Sorry for not making this a proper draft - I'm used to GitLab, where that is determined by the name of the MR. Seems like it's too late to make this a draft now, meh.

@Wunkolo
Copy link
Contributor

Wunkolo commented Jun 23, 2022

You can still turn it into a draft in the Reviewers section on the top-right of the PR. Took me some time to figure out too. The button just isn't super obvious as it looks like non-clickable text.
image

@ralokt ralokt marked this pull request as draft June 24, 2022 01:23
@ralokt
Copy link
Author

ralokt commented Jun 24, 2022

Thanks a lot! Done :)

@ralokt
Copy link
Author

ralokt commented Jun 24, 2022

Scratch that, I have a better idea. PR with proper fix incoming!

@ralokt ralokt closed this Jun 24, 2022
@ralokt
Copy link
Author

ralokt commented Jun 24, 2022

Superseded by #2051

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