MaestroFenix / Half-Life-Resized-Maps

Half-Life Resized Maps unifies many of the separated levels of Half-Life: Source and brings many QoL improvements and bugfixes.
17 stars 0 forks source link

Implement better HL1 looking water #2

Closed MaestroFenix closed 1 month ago

MaestroFenix commented 3 years ago

While currently we use some HL1 water textures, we aren't using all of them and on the right places, plus they can be further improved.

The work was started on them, but due real life events, it couldn't be completed at time for the V2 release. On the following file it contains all the textures to modify and improve, together with a test map where they were being tested. !c2a54 was the water texture where the work was more advanced, as it successfully recreated some stuff like the underwater effects or ragdolls floating on it.

The surface water is the hardest aspect to get right, as Source doesn't have the HL1 Software or OpenGL water effects ( ripple or the waves ). An animated bumpmap has been considered, but so far all the attempts failed as without specular, they are hard to notice. Maybe they could be applied as an animated detail texture...

Please check The303 water texture tutorial in order to know how to obtain the original underwater fog color and distance.

MaestroFenix commented 1 month ago

Only now I found the time to continue and complete this task. After further research, a water style that approached the HL1 Software render effect was achieved ( and it was done almost the same way as Valve intended when making HL:S, before further engine progress rendered it obsolete ), via Refract and some extra parameters. However, it had the flaw that it doesn't work well on large bodies of waters ( the surface starts fading away at long distances ), and unfortunately, other similar ways aren't possible in SDK2013 without altering shaders.

Therefore, it was chosen to stick to the current "fake water" method. The VMTs have been fully revamped to get rid of commented blocks and redundant parts. The material proxy settings have been tweaked, so the movement is more erratic ( rather than the current loop ) and slower, and ripples have been added via detailmaps. In order to avoid the textures being darker due to that, extra brightness has been added to them for balance. An underwater effect was explored, in order to replicate the HL1 Software blurry fog one. However, playertesters found that those made most of the time hard to see the surroundings, so it was dropped. All HL1 water textures have been correctly ported and applied to HLRM, with the right textures and fog settings. A couple of textures were also repaired, as they had wrong settings in HL:S. This also means that the "hlstextures" folder is no longer needed, and will be deleted on the next version.

While these will be seen in action on V3, I decided to release the ported textures now, in case others want to use them on their projects ASAP. You can find them here.

Ticket closed.