dege-diosg / dgVoodoo2

Glide/DirectX implementation on D3D11/12
916 stars 40 forks source link

Halo:Combat Evolved and HaloCE: Custom Edition #25

Open Alex-Kraynov opened 4 years ago

Alex-Kraynov commented 4 years ago

Shader environment self illumination animation works wrong in HaloCE. Syncronization of this animation is broken on modern hardware. Can you fix it in DgVoodoo?

Broken behavior: https://drive.google.com/file/d/1AU1R2qFnde9NVhpf1Y1oZLX_cyJPLTWM/view?usp=sharing

How should it works: https://streamable.com/fo08fq

My PC has Nvidia Pascal GPU, Intel Haswell i7 CPU and Win10 20h2 with updated drivers.

BinToss commented 4 years ago

The only fixes dgVoodoo should handle would be for those that are broken at driver-level or API-level. If its the game's shader code that's broken, dgVoodoo isn't responsible for it.

Jakey757 commented 4 years ago

This should fit under the same cases, the effect breaks for some people, works for most. I have this same problem now whereas I didnt in the past as with different hardware/software.

The broken behavior causes the strobing lights to not loop seamlessly. there should be no break or restart in the middle of it. This affects both retail pc and custom edition, it isnt like the glass that is actually just broken on custom edition. I do not know if it will be of any help to identify the problem but it happens with shader environment self illumination animation.

BinToss commented 4 years ago

So it's a driver/API issue? Understood. Carry on.

On Sun, Nov 8, 2020, 4:48 PM Jakey notifications@github.com wrote:

this should fit under the same cases, the effect breaks for some people works for most. i have this same problem now whereas i didnt in the past as with different hardware/software.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/dege-diosg/dgVoodoo2/issues/25#issuecomment-723695764, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABXILNSQ5LV5LLXMRSVDNHLSO436DANCNFSM4TML2RHQ .

Aerocatia commented 3 years ago

The only fixes dgVoodoo should handle would be for those that are broken at driver-level or API-level. If its the game's shader code that's broken, dgVoodoo isn't responsible for it.

Technically this would be true but sometimes it is better to kludge it at the API level in these old games. It's hard to fix it properly otherwise without game source code.