BC46 / freelancer-hd-edition

Freelancer: HD Edition is a mod that aims to improve every aspect of the game Freelancer (2003) while keeping the look and feel as close to vanilla as possible.
https://www.moddb.com/mods/freelancer-hd-edition
161 stars 14 forks source link

Overhaul maximized draw distances #158

Closed BC46 closed 2 months ago

BC46 commented 1 year ago

We currently set all values for [DetailSwitchTable], LODranges, and pbubble to 999999. The problem that comes with this is that it won't be very easy to reset everything to vanilla values, which is an issue for people who prefer playing with the default draw distances. The current option we have to use vanilla draw distances may work at first glance, but it doesn't restore the LODranges values. Instead, it only applies one hex edit that makes it so battleships and trade lanes can't be seen beyond a certain distance. Hence bases and jump gates will still be visible from far distances.

To make the three draw distance values properly scalable, we should restore all of the ini values to how they were in vanilla, and scale everything programmatically. There already exists a hex edit for scaling the LODranges, but doing the same for [DetailSwitchTable] and pbubble values should be fairly straightforward. These additional draw distance scalers might be nice to include in the flplusplus project.

As for the installer option regarding draw distances, that can be converted to three sliders (character draw distances, effect draw distances, and space object draw distances).

Files that use pbubble: FX/effect_types.ini Files that use switch: CHARACTERS/bodyparts.ini Files that use lodranges:

erikroe commented 11 months ago

Thoughts on this: I think it is very context specific which (max) LOD ranges should be used/available. Astroid bases/depots that are usually hidden within fields/nebulas should have a very low range as to not spoil their position visually. Same for jump holes. But this is mostly personal taste that I just know some of FLSR’s dev team members share as well in difference to the current HDE solution.

Also I recently came across a problem (already wrote a mail to adoxa): LOD Ranges depend on your camera FOV. Possibly other ranges do, too. This causes LOD ranges to be differently percepted depending on your aspect ratio. On 21:10 they effectively become halved in difference to 4:3 (whereas 4:3 uses FOV 70 and FL is normalized to that). So higher FOVs need specific multipliers.

FireFlyEx commented 7 months ago

Personally.. I think the only things that should always be visible are planets, stars, and fields. The original staggered LOD ranges for everything else seems fine.

FireFlyEx commented 7 months ago

So I've been testing some ranges... Bases - 60k Base small parts - 40k Capital ship objects - 60k Roid/Gas Miners - 27k Small objects - 18k Tradelane Rings - 27k Weapon platforms - 18k Debris, damaged objects, asteroids, lootable depots, surprises, lair, space_arch, dyson - Vanilla Jumpholes - 18k Jumpgates - 60k