ValveSoftware / halflife

Half-Life 1 engine based games
Other
3.72k stars 625 forks source link

Set d_subdiv16 to "0" by default. #3839

Open HaajPaaj opened 1 month ago

HaajPaaj commented 1 month ago

From Quake "TECHINFO.TXT": "For maximum speed, perspective correction is performed only every 16 pixels. This is normally fine, but it is possible to see texture ripples in surfaces that are viewed at sharp angles. For more precise texture mapping, set the console variable d_subdiv16 to 0."

This is a minor issue, and even with this setting set to 0, a jump in visual quality is normally unnoticeable. Still, unless there's a good reason for this setting to remain at "1," it seems sensible to set the default to 0.

sabianroberts commented 1 month ago

There's no d_subdiv16 command in Half-Life 1 nor is it referenced anywhere in this SDK. Unless I'm missing something it doesn't seem to exist?

SamVanheer commented 1 month ago

The d_ prefix is usually used for things specific to the Software renderer, that's why you don't see the cvar. Switch to the Software renderer first and then check for the command's existence.

HaajPaaj commented 1 month ago

On a similar note of increasing SW renderer quality, dmipscale should be set to "0" by default. When set to 0, it forces the use of max detail mipmap textures. The remaining "d" prefix commands appear to be set to the optimal defaults for quality. (d_spriteskip supposedly enables fast sprite rendering, which I assume is at the expense of quality.)

If this should be submitted as a separate issue, then I can do so.