Distant Horizons
Madis0 opened this issue ยท 31 comments
CurseForge link
https://www.curseforge.com/minecraft/mc-mods/distant-horizons
CurseForge Mod Distribution
Allowed
Modrinth link
https://modrinth.com/mod/distanthorizons
Source/other link
https://gitlab.com/jeseibel/minecraft-lod-mod
Mod file size
1.18.2 = 2.46 MB | 1.19 = 2.49 MB
What it does
Renders long distances with low detail, meaning anyone can have a long rendering distance
Why should it be in the modpack
Actually exists for 1.18.1 Fabric unlike #86 and unlike #46 and #184 it is usable for low-end computers too
Why shouldn't it be in the modpack
Alpha, untested by me, clainingly incompatible with (some) shaders, not sure if it works in multiplayer and whether it can cache chunks as well
Categories
Performance optimization, Graphics optimization
Additional details
It's a very work in progress too much potential to break, I assume many people will have no idea what it does and how to control it, and #184 now fully supports 1.18.
After testing it in single-player worlds, it seems great. While it has no shader support as of yet and has some holes in the world during the initial chunk loading after joining a world, there is an extensive configuration that could probably fix the latter.
However, I think that its addition to FO should be postponed because of a fatal flaw:
This screenshot was taken in the Hypixel lobby after joining and leaving Skyblock. I have no idea how the mod works but I'd presume this issue has something to do with the way that you join and leave different worlds inside a single server. But the mod does seem to be great otherwise and if there was (or is) some way to stop its functionality in servers via its config then it would make for a great addition to FO right now.
I will say that Multiverse servers make this mod be very buggy, as it will show other worlds. Haven't tested it myself, or with nether/end though.
I don't think this is a big problem, how optifine handle these situations?
I haven't used optifine since 1.19 came out, so I can't say for sure
I don't think the situations of singleplayer and multiplayer are different in optifine
Without shaders it was the same and I guess it is the same now
With shaders in optifine back then, LODs were rendered not as too bright/dark as Iris did
However, it was impossible to play at 15 fps with medium shaders and Distant Horizons settings
So there is support for shaders ๐
However, I think that this mod should not be present in the modpack, since it's fully revealed only in a singleplayer
In multiplayer, you will just see the absence of fog near you, since it will take an extremely long time to travel and load chunks
So there is support for shaders ๐ However, I think that this mod should not be present in the modpack, since it's fully revealed only in a singleplayer In multiplayer, you will just see the absence of fog near you, since it will take an extremely long time to travel and load chunks
I don't think this is a big problem, how optifine handle these situations?
Regarding shaders support, I don't think it should be a concern since Distant Horizons will just show a warning that X shader pack doesn't support DH and turn itself off until shaders are disabled or a compatible pack is picked instead.
Looks like there's also multiverse support now based on similarities but not sure how it would handle voids on servers like skyblock since these are well, similar, and might indicate the same world.
edit: checked on hypixel now and seems to be working correctly in this regard after setting similarity to 0.5
Gets a bit buggy with the zoom mod tho
Yes, there was a bug when the LODs were cut off when zooming on them. However, it's no longer there.
Now, there is another one. It's more of an inevitability than a real bug.
With a low render distance, all non-solid blocks in vanilla chunks acquire a pre-LOD state or something. I suppose this was implemented so that a hole wouldn't appear there when unloading these chunks, and instead a LOD chunk seamlessly inserted.
I played around with this mod in FO and I don't notice any buggy behavior with the zoom mod. It still needs some more work in its current state, but it's shaping up to be a very promising mod.
With a low render distance, all non-solid blocks in vanilla chunks acquire a pre-LOD state or something.
How low of a render distance did you use to notice this?
How low of a render distance did you use to notice this?
About 8 to have a good fps with shaders.
I'll take a screenshot as soon as I have time.
I have noticed that issue, mostly when watching real water turn into LODs and vise versa. I'd imagine that this will be improved upon just as they improved the general look of the LODs from previous versions. Even then, I personally don't find it very noticeable as my eyes move towards the mountains and other structures.
Yes, I haven't noticed it for a long time either.
These are the implementation features that will probably remain in their current form for a long time.
However, there is still a problem that some structures may partially or completely fail to load as LODs, leaving only the LOD terrain instead of themselves.
In my case, this applies to all types of ships from the mod When Dungeons Arise: Seven Seas
, floating villages from Tidal Towns
and other structures, some of which are located near the water.
The second problem partially follows the first one.
When trying to load such bugged chunks and then leave them, Distant Horizons
may not update them at all. In general, this applies to any noticeable update in chunks. For example, after the explosion of a large amount of dynamite or a nuke in the chunks, and then quickly leaving them.
I don't know exactly how long it is necessary to stay near these chunks within a vanilla view range, but I think 5 minutes will definitely be enough. Otherwise, the algorithm for updating nearby LODs apparently doesn't have time to prioritize the threads to this.
So the Distant Horizons
v2.2.0 came out.
Personally, I really noticed an increase in the speed of creating LODs of the world by about 25% on my heavily modified instance. This applies to any dimension, vanilla ones, from datapacks or mods.
Also, many problems with LOD chunks in the ocean have really disappeared. Before that, I constantly noticed black spots and oddities in the middle of the ocean or where the monuments and other underwater structures are generated.
I have an i5-7600K CPU and a GTX 1060 of 6 GB (yes, I am so old).
With a vanilla view range of 10 chunks and 64 DH chunks with default settings of the Complementary shaders, I have from 40 to 60 fps. When on the plain or in the ocean, FPS reaches 80-90, and when in the forest or on a mountain it can fell to 30.
Without shaders, with the same view range settings, I had 150-200 fps.
Noisium
and C2ME
truly increase the loading speed of LODs even more, so my instance with Distant Horizons
cannot exist without them.
Yeah, this update really helped. I no longer saw partially torn structures, including those on the water.
I just did a new test with DH (version 2.2.1-a) at settings I personally think are more in line with the default settings of FO. With the render distance set to 6 and DH's render distance set to 32 I get reasonable performance. I get around 76-81 FPS with around 32% of the LODs loaded in. I have a low end laptop and I plan on redoing the performance tests soon. The mods used were: Sodium, EntityCulling, Iris, Lithium, More Culling, FerriteCore, ImmediatelyFast, ModernFix, and FPS-Display.
I also noticed a significant benefit with Noisium! After 6 minutes at the same settings and seed, the world with Noisium enabled generated a significantly more than the one without. I have two pictures below showing the difference:
However, there is still a problem that some structures may partially or completely fail to load as LODs, leaving only the LOD terrain instead of themselves.
In my case, this applies to all types of ships from the mod When Dungeons Arise: Seven Seas, floating villages from Tidal Towns and other structures, some of which are located near the water.The second problem partially follows the first one.
When trying to load such bugged chunks and then leave them, Distant Horizons may not update them at all. In general, this applies to any noticeable update in chunks. For example, after the explosion of a large amount of dynamite or a nuke in the chunks, and then quickly leaving them.
I don't know exactly how long it is necessary to stay near these chunks within a vanilla view range, but I think 5 minutes will definitely be enough. Otherwise, the algorithm for updating nearby LODs apparently doesn't have time to prioritize the threads to this.
Do you still have this issue with version 2.2.1-a? There was a bug were feature generation was broken when Lithium was used.
Do you still have this issue with version 2.2.1-a? There was a bug were feature generation was broken when Lithium was used.
I just looked at the changelog.
However, I used Fabric 1.20.4 for my tests, and the list of changelog:
- Fix Lithium breaking DH world gen for MC 1.20.1 and older
However, I think here's what will help me:
- Change delayed LOD modified save from 2 seconds -> 500 ms
- This should make LODs appear to update slightly faster
I'll test it myself when I have time.