There are comments about how Project Reality's graphics are dated. However, recent updates have shown us that Project Reality has potential for graphical enhancements without using third-party tools such as ReShade. I will discuss a technical upgrade to Project Reality: the adoption of Shader Model 3 (SM3).
What is a shader model?
A shader model determines our capabilities and limitations when programming shaders. A shader model also determines how the shader compiler compiles shader code. Each shader model version has more capabilities and less limitations than the previous version.
What we did
We rewrote and documented Battlefield 2’s shaders for SM3. This endeavor was difficult because it was done by one person and there was a lack of resources about BF2's shaders. Thankfully, members from the Forgotten Hope 2 team were able to share knowledge on how BF2 renders things.
Why Shader Model 3?
SM3 introduces more DirectX features that we can use for Project Reality. Below is a truncated list on what SM3 brings to the table for Project Reality.
- Derivative instructions
- Dynamic branching (useful for soft shadows and parallax mapping)
- High precision shading
- Higher register and instruction limits
- Special texture instructions (useful for sharper texture filtering)
- Vertex textures (useful for 3D water/terrain)
Conclusion
Project Reality has potential for graphics upgrades by changing only the game’s shaders. We plan to make these new shaders permissible for other people to use and modify for their own modifications (and maybe their own games ). I want to thank the Forgotten Hope 2 team again for providing information that helped us make this change sooner than expected.
Have a happy 2023!
[R-DEV]papadanku