Sniper Elite (D3D8) failed to reassemble shader

  • rallymen007
  • Topic Author
More
9 years 2 months ago #1 by rallymen007 Sniper Elite (D3D8) failed to reassemble shader was created by rallymen007
Hi,

I've been trying to use ReShade as a "pass-through" for Sniper Elite (no fancy effects, just some D3D8->D3D9 wrapping). It works fine, except for the blur effect that blurs the whole screen at all times.
The logs has a couple of "failed to reassemble shader" errors. You can find the tracelog here , but here's a (hopefully) relevant extract of it:
16/02/2015 09:44:48,669 [9556] | TRACE | Redirecting 'IDirect3DDevice9::CreateVertexShader(02A75ED8, 09916E18, 09626BE0)' ...
16/02/2015 09:44:48,669 [9556] | INFO  | Redirecting 'IDirect3DDevice8::CreateVertexShader(02A75F08, 00757228, 023B0F28, 007A3594, 0)' ...
16/02/2015 09:44:48,669 [9556] | INFO  | > Translating vertex declaration ...
16/02/2015 09:44:48,669 [9556] | TRACE |   +----------+---------+---------+--------------+--------------+--------------+-------+
16/02/2015 09:44:48,669 [9556] | TRACE |   | Register | Stream  | Offset  | Type         | Method       | Usage        | Index |
16/02/2015 09:44:48,669 [9556] | TRACE |   +----------+---------+---------+--------------+--------------+--------------+-------+
16/02/2015 09:44:48,669 [9556] | TRACE |   | v0       | 0       | 0       | 0x2          | 0x0          | 0x0          | 0     |
16/02/2015 09:44:48,669 [9556] | TRACE |   | v1       | 0       | 12      | 0x2          | 0x0          | 0x1          | 0     |
16/02/2015 09:44:48,669 [9556] | TRACE |   | v2       | 0       | 24      | 0x4          | 0x0          | 0x2          | 0     |
16/02/2015 09:44:48,669 [9556] | TRACE |   | v3       | 0       | 28      | 0x1          | 0x0          | 0x3          | 0     |
16/02/2015 09:44:48,669 [9556] | TRACE |   | v4       | 0       | 36      | 0x1          | 0x0          | 0x4          | 0     |
16/02/2015 09:44:48,669 [9556] | TRACE |   +----------+---------+---------+--------------+--------------+--------------+-------+
16/02/2015 09:44:48,669 [9556] | INFO  | > Disassembling shader and translating assembly to Direct3D 9 compatible code ...
16/02/2015 09:44:48,670 [9556] | TRACE | > Dumping translated shader assembly:

    vs_1_1
dcl_position v0
dcl_blendweight v1
dcl_blendindices v2
dcl_normal v3
dcl_psize v4
    mov r0.w, v0.w
    add r0.xyz, c5.xyzz, -v0.xyzz
    dp3 r1.xyz, r0.xyzz, r0.xyzz
    rsq r1.xyz, r1.xyzz
    rcp r2.xyz, r1.xyzz
    add r2.xyz, r2.xyzz, -c8.xyzz
    max r2.xyz, r2.xyzz, c11.xyzz
    min r2.xyz, r2.xyzz, c9.xyzz
    mul r2.xyz, r2.xyzz, c10.xyzz
    mul r2.xyz, r2.xyzz, c7.xyzz
    add r2.xyz, r2.xyzz, c6.xyzz
    mul r1.xyz, r2.xyzz, r1.xyzz
    mul r0.xyz, r0.xyzz, r1.xyzz
    add r0.xyz, r0.xyzz, v0.xyzz
    m4x4 oPos, r0, c0
    mov oD0, c4

// approximately 19 instruction slots used

16/02/2015 09:44:48,671 [9556] | ERROR | > Failed to reassemble shader:

D:\Steam\SteamApps\common\Sniper Elite\memory(10,5): error X5485: rsq requires replicate swizzle for the source parameter in order to select component. i.e. .x | .y | .z | .w (or rgba equivalent)
D:\Steam\SteamApps\common\Sniper Elite\memory(11,5): error X5485: rcp requires replicate swizzle for the source parameter in order to select component. i.e. .x | .y | .z | .w (or rgba equivalent)

When the blur is on, it feels like there's vaseline on the scope and that makes sniping a bit harder than it should be :p Disabling the blur fixes the issue, so it's specific to the game's blur effect. I'm fine with disabling blur altogether, but perhaps this error could be useful to other games.


Cheers,
Rallymen007

Please Log in or Create an account to join the conversation.

  • crosire
More
9 years 2 months ago #2 by crosire Replied by crosire on topic Sniper Elite (D3D8) failed to reassemble shader
Thanks for reporting! =)
It's probably because that blur uses one of the shaders ReShade failed to convert, which is thus missing and makes the whole thing look wrong.
The following user(s) said Thank You: rallymen007

Please Log in or Create an account to join the conversation.

We use cookies
We use cookies on our website. Some of them are essential for the operation of the forum. You can decide for yourself whether you want to allow cookies or not. Please note that if you reject them, you may not be able to use all the functionalities of the site.