BlueMap-Minecraft / BlueMap

A Minecraft mapping tool that creates 3D models of your Minecraft worlds and displays them in a web viewer.
https://bluecolo.red/bluemap
MIT License
1.79k stars 120 forks source link

Feature request: Better Nether render options #446

Open bagobones opened 1 year ago

bagobones commented 1 year ago

Is your feature request related to a problem? Please describe. Since the Nether is "FULL" it is very hard to see player activity even with some of the example transparent options already in BlueMap. A solution similar to the overviewer Nether Primitive nether render would be ideal and may also be useful for other custom game types where the dimension is full to the top of the world.

Describe the solution you'd like Have a render option that removes or makes transparent ALL blocks connected to the ceiling.

TBlueF commented 1 year ago

overviewer Nether Primitive: "occludes blocks that are connected to the ceiling"

This is bluemap's version of that. If that's not what you want, then please elaborate? :) Also an example image of overviewers nether-render might be helpful!

bagobones commented 1 year ago

Digging through discord that is the following correct?

TechnicJelle theRivalingWelcomer — 06/01/2023 3:08 PM what i usually recommend to people regarding the nether is to have two maps of the nether one with render-edges: false, and the max-y: 127 that will make a nether map that you can peek into the big caves from above and another map with min-y: 128 which will make a map with the nether roof

It really doesn't look that good.. If I have some time I will do a comparison.

Also understanding what the difference is, the method above renders NOTHING above a certain Y but the OV will render EVERYTHING not touching the world ceiling meaning you can have player content all the way to the top for the most part it just takes the roof off.

TBlueF commented 1 year ago

not touching the world ceiling

how is that defined?

A block is "touching the world ceiling", if __ ? ^^

bagobones commented 1 year ago

not touching the world ceiling

how is that defined?

A block is "touching the world ceiling", if __ ? ^^

That is how it is documented in overviewer, I will try and do a side by side render or if I can try to dig into the overviewer code

TBlueF commented 1 year ago

Mock: https://antti.pics/i/MNsuxp.mp4 See branch: feature/nether

bagobones commented 1 year ago

Just making a note here as per the Discord discussion this looks fairly good.

drnixon commented 1 year ago

Will note that I can't set up the default "seethrough nether" as wiki does not seem to have an example of the configuration for this. Migrating to BlueMap from Overviewer, and I'm impressed at the performance but stuck on the documentation. Could the seethrough Nether render config be added?

TBlueF commented 1 year ago

Will note that I can't set up the default "seethrough nether" as wiki does not seem to have an example of the configuration for this. Migrating to BlueMap from Overviewer, and I'm impressed at the performance but stuck on the documentation. Could the seethrough Nether render config be added?

The seethrough nether config is just setting render-edges to false and rising the max-y to 125 :) If you have any issues/questions about the documentation, i can highly recommend our discord where we are very active and are glad to help! =)

With this ticket i will also think about how/where we can add some documentation about nether-render configs :)

bagobones commented 1 year ago

With this ticket i will also think about how/where we can add some documentation about nether-render configs :)

The default nether config also cuts of at a y of 90 for some reason which is bad for anyone that builds transport networks near the nether ceiling

TBlueF commented 1 year ago

It cuts off there, because by default it is set to render the edges .. and cutting of with edges at a higher position would mean you'd see nothing.

bagobones commented 1 year ago

It cuts off there, because by default it is set to render the edges .. and cutting of with edges at a higher position would mean you'd see nothing.

Aww, I get it.

I have setup a version on my server with render edges off, but the various pockets of lava all over make it really noisy.. I think one of the benefits of hiding the ceiling attached blocks is that it creates clean planforms of ground with air above them IE player walkable space with less scattered noise.

It is very hard to see anything when you are zoomed out at lower detail settings for sure due to the jaggyness.

drnixon commented 1 year ago

Thanks all. I'll play with the render settings. If looking to compare, I have Overviewer output (with standard nether render settings, ignoring blocks connected to ceiling) from my server, and would be able to grab screenshots from both that and the BlueMap output corresponding to the same region once the BlueMap render updates with new settings. Haven't actually updated Overviewer map in some time, but nether has not changed in the last few Minecraft versions, so output would be directly comparable.

bagobones commented 1 year ago

Blue Map seethrough settings far / top bm_seethrough_top

Bluemap default with higher y cut at my travel network far /top bm_solid_top

Overviewer nether render automatic removal of blocks attached to ceiling ov_far

Bluemap solid render close to a player structure bm_solid_close

Bluemap seethrough bm_seethrough_close

Overviewer

ov_close

What a nether fortress looks like

Bluemap seethrough bm_seethrough_fortress

Overviewer ov_fortress

To clarify the seethrough in BM actually shows some more things sometimes however when you zoom out the noise from random lava blocks and other things make it a noisy mess, where the OV render is usable at almost all zooms.

The original request here isn't necessarily to copy the OV method 100% but to come up with some better, less noisy settings for BM that are easier to use from an end user point of view and just visually are more useful.

One big issue I see with the BM see through is that it might clip through player built structures and has lots of random things floating all over.. If for example you built a castle (likely not attached to the ceiling) or something you might see the inner rooms not the outside. It might be nice to have both as render options.