top | item 44600574

Fixing a Direct3D9 bug in Far Cry (2018)

65 points| anotherhue | 8 months ago |houssemnasri.github.io | reply

15 comments

order
[+] perching_aix|8 months ago|reply
What is this site?

This is the actual site from the actual modder: https://cookieplmonster.github.io/2018/07/07/farcry-d3d9-bug...

This looks like a copycat site? What for?

[+] hnuser123456|8 months ago|reply
The download links and patreon links on the copied page link to those for this person. Strange.
[+] Thev00d00|8 months ago|reply
Nowadays of course you would simply use DXVK for this. The wonders of Linux gaming spilling back over onto Windows.
[+] boristsr|8 months ago|reply
Excellent deep dive and explanation of the process of tracking down and fixing it. Thanks for sharing it, it was a fun read. Will definitely keep this in mind next time I fire up farcry for some nostalgia!
[+] gustavorg|8 months ago|reply
The last image of this article shows the bug supposedly solved. But it does not show the same image with the bug. The images to show the bug are from different points of view, where it is difficult to appreciate the problem as the last image does.
[+] saejox|8 months ago|reply
it is a subtle bug. mostly concerning preservationists. players are likely more worried about bandits shooting at them than mountains not reflected on the water.
[+] immibis|8 months ago|reply
I expect that clip planes are invalidated by changing matrix transforms. It reads to me like the code that emulates the old clip planes is probably converting them from world space to clip space using the current transforms when the clip planes are set, then not redoing the conversion if the transforms change.
[+] ryao|8 months ago|reply
> Community has since found a way to fix this issue - it is possible to use WineD3D, a Direct3D to OpenGL wrapper for Windows, and then everything looks fine. However, it comes at a price – performance can be lowered by as much as 75%! That can result in unacceptable framerates even on modern PCs.

Has anyone tried DXVK?

[+] Delk|8 months ago|reply
The post is from 2018, so dxvk either wasn't there or was too immature.

From today's point of view, the post may not be that interesting in the practical sense of running the game. But some might find the obscure feature of custom clip planes interesting, or how a change or a detail in API specs lead to a regression.

If course today you'd want to use dxvk.

[+] northhnbesthn|8 months ago|reply
Yeah - a lot of devs don’t know about clip planes but they have their uses and they kind of function outside of the normal pipeline.