I've got 0.04 running and it works, but if I mark a shader and its in error, then I alt-tab out to fix it, the game hangs and I can't get back in. Worse, pressing Esc key in game hangs the game. So the fixing workflow is busted at the moment.
I was looking at the shiny reflection stuff, and a pixel shader by the name of 31052912ee015e3f-ps_replace.txt now seems to be responsible (whereas previously it was f522a33026aa87af-ps_replace.txt, so I don't know what the difference is yet), regardless this shader has this in it:
[code]
// Unknown use of GetDimensions for resinfo_ from missing reflection info, need manual fix.
// resinfo_indexable(texture2darray)(uint,uint,uint,uint) r4.xy, l(0), t5.xyzw
// Example for texture2d type, uint return:
tx.GetDimensions(uint(0), uiDest.x, uiDest.y, uiDest.z);
rx = uiDest;
[/code]
so I made this
[code]
// Unknown use of GetDimensions for resinfo_ from missing reflection info, need manual fix.
// resinfo_indexable(texture2darray)(uint,uint,uint,uint) r4.xy, l(0), t5.xyzw
// Example for texture2d type, uint return:
t5.GetDimensions(uint(0), uiDest.x, uiDest.y, uiDest.z);
r4.xy = uiDest.xy;
[/code]
and I get the error log:
[code]
>Replacement shader found. Re-Loading replacement HLSL code from 31052912ee015e3f-ps_replace.txt
Reload source code loaded. Size = 35907
compiling replacement HLSL code with shader model ps_5_0
compile result of replacement HLSL shader: 80004005
--------------------------------------------- BEGIN ---------------------------------------------
C:\GOG Games\The Witcher 3 Wild Hunt\bin\wrapper1349(72,1-55): error X3013: 'GetDimensions': no matching 4 parameter intrinsic method
C:\GOG Games\The Witcher 3 Wild Hunt\bin\wrapper1349(72,1-55): error X3013: Possible intrinsic methods are:
C:\GOG Games\The Witcher 3 Wild Hunt\bin\wrapper1349(72,1-55): error X3013: Texture2DArray<uint4>.GetDimensions(uint, out uint width, out uint height, out uint elements, out uint levels)
C:\GOG Games\The Witcher 3 Wild Hunt\bin\wrapper1349(72,1-55): error X3013: Texture2DArray<uint4>.GetDimensions(uint, out float|half|min10float|min16float width, out float|half|min10float|min16float height, out float|half|min10float|min16float elements, out float|half|min10float|min16float levels)
C:\GOG Games\The Witcher 3 Wild Hunt\bin\wrapper1349(72,1-55): error X3013: Texture2DArray<uint4>.GetDimensions(out uint width, out uint height, out uint elements)
C:\GOG Games\The Witcher 3 Wild Hunt\bin\wrapper1349(72,1-55): error X3013: Texture2DArray<uint4>.GetDimensions(out float|half|min10float|min16float width, out float|half|min10float|min16float height, out float|half|min10float|min16float elements)
---------------------------------------------- END ----------------------------------------------
> FAILED to reload shaders from ShaderFixes
[/code]
so basically the shader never loads.
Anyhow, I hope to look more at this over the weekend.
I've got 0.04 running and it works, but if I mark a shader and its in error, then I alt-tab out to fix it, the game hangs and I can't get back in. Worse, pressing Esc key in game hangs the game. So the fixing workflow is busted at the moment.
I was looking at the shiny reflection stuff, and a pixel shader by the name of 31052912ee015e3f-ps_replace.txt now seems to be responsible (whereas previously it was f522a33026aa87af-ps_replace.txt, so I don't know what the difference is yet), regardless this shader has this in it:
// Unknown use of GetDimensions for resinfo_ from missing reflection info, need manual fix.
// resinfo_indexable(texture2darray)(uint,uint,uint,uint) r4.xy, l(0), t5.xyzw
// Example for texture2d type, uint return:
tx.GetDimensions(uint(0), uiDest.x, uiDest.y, uiDest.z);
rx = uiDest;
so I made this
// Unknown use of GetDimensions for resinfo_ from missing reflection info, need manual fix.
// resinfo_indexable(texture2darray)(uint,uint,uint,uint) r4.xy, l(0), t5.xyzw
// Example for texture2d type, uint return:
t5.GetDimensions(uint(0), uiDest.x, uiDest.y, uiDest.z);
r4.xy = uiDest.xy;
and I get the error log:
>Replacement shader found. Re-Loading replacement HLSL code from 31052912ee015e3f-ps_replace.txt
Reload source code loaded. Size = 35907
compiling replacement HLSL code with shader model ps_5_0
compile result of replacement HLSL shader: 80004005
--------------------------------------------- BEGIN ---------------------------------------------
C:\GOG Games\The Witcher 3 Wild Hunt\bin\wrapper1349(72,1-55): error X3013: 'GetDimensions': no matching 4 parameter intrinsic method
C:\GOG Games\The Witcher 3 Wild Hunt\bin\wrapper1349(72,1-55): error X3013: Possible intrinsic methods are:
C:\GOG Games\The Witcher 3 Wild Hunt\bin\wrapper1349(72,1-55): error X3013: Texture2DArray<uint4>.GetDimensions(uint, out uint width, out uint height, out uint elements, out uint levels)
C:\GOG Games\The Witcher 3 Wild Hunt\bin\wrapper1349(72,1-55): error X3013: Texture2DArray<uint4>.GetDimensions(uint, out float|half|min10float|min16float width, out float|half|min10float|min16float height, out float|half|min10float|min16float elements, out float|half|min10float|min16float levels)
C:\GOG Games\The Witcher 3 Wild Hunt\bin\wrapper1349(72,1-55): error X3013: Texture2DArray<uint4>.GetDimensions(out uint width, out uint height, out uint elements)
C:\GOG Games\The Witcher 3 Wild Hunt\bin\wrapper1349(72,1-55): error X3013: Texture2DArray<uint4>.GetDimensions(out float|half|min10float|min16float width, out float|half|min10float|min16float height, out float|half|min10float|min16float elements)
---------------------------------------------- END ----------------------------------------------
> FAILED to reload shaders from ShaderFixes
so basically the shader never loads.
Anyhow, I hope to look more at this over the weekend.
[quote="bo3b"][quote="DarkStarSword"][quote="Flugan"]Now I know why my my wrapper didn't pickup the new fixes
16f398fc56dce109-ps.txt => 16f398fc56dce109-ps_replace.asm
Both wrappers don't use the same syntax for the filenames.
I have updated my version of the fix by renaming shader files.
Should only be one version of the filename and I expect to change mine as having shaders as txt files is convenient when opening for editing. I rely on the fact that all shaders HLSL, ASM and BIN share the same filename except for the extension when refreshing shaders using F10 so it's not just a simple fix.
Luckily it is easy to batch rename files.[/quote]Bo3b was already thinking about changing 3Dmigoto to use .asm and .hlsl extensions instead of .txt... Since your wrapper already uses hash-type_replace.asm, I propose we change 3Dmigoto to do the same for ASM files now (we can debate whether to change HLSL later).[/quote]
We could do this switch, it's a trivial change.
But I would question why we would want to switch from one half-baked solution to a different half-baked solution?
Right now the naming is not particularly awesome with _replace.txt signifying HLSL. And the lack of that _replace signifying ASM. There are a lot of files out there with this convention already.
If we are going to switch to the .asm extension, that makes life slightly harder for any fixer, because they won't have file associations set up by default. .txt is always set up and essentially free.
Just my opinion, but if we are going to make life harder for any fixer who picks it up, we ought to do the real job and make a naming convention that makes sense. That would mean .hlsl for HLSL files, and .cbo for binary files. I'm less clear if we'd want an extension for an unmodified master ASM file, versus an edited one.
Either that or keep everything human editable as .txt. With slightly better _ tails like _asm.txt, _hlsl.txt.
The middle ground just seems arbitrary and not good for anyone.[/quote]I'll defer to your opinion on this one bo3b as I don't think it's a big deal either way, but here's some thoughts on the matter:
Personally I'm not worried about file associations as I usually am working in a terminal where it's irrelevant and even when I do open something from explorer it only takes ten seconds or so to set up a file association, which is then there permanently. I think it's a bit of a stretch to imagine someone is capable of fixing a game but not configuring their file associations. Edit: Although, as pirateguybrush pointed out this could be a bit intimidating to new fixers.
If we had correct extensions then advanced text editors (vim, notepad++, etc) could be configured to automatically select the best highlighting and indentation rules (in the case of vim, .asm seems to already have a good default profile and hlsl can easily be set to match filetype=c).
For anything we have in the repository already I can easily do a bulk rename operation using the Linux mmv command. There's probably some windows tool out there that can do the same thing, or someone could whip up a batch file to do it.
Changing the existing naming for hlsl fixes could potentially be a cause of pain for users trying to switch to or from the stable 1.0.1 wrapper and 1.1.11, but as 1.1.x stabilises that will become less of a concern.
Flugan said:Now I know why my my wrapper didn't pickup the new fixes
16f398fc56dce109-ps.txt => 16f398fc56dce109-ps_replace.asm
Both wrappers don't use the same syntax for the filenames.
I have updated my version of the fix by renaming shader files.
Should only be one version of the filename and I expect to change mine as having shaders as txt files is convenient when opening for editing. I rely on the fact that all shaders HLSL, ASM and BIN share the same filename except for the extension when refreshing shaders using F10 so it's not just a simple fix.
Luckily it is easy to batch rename files.
Bo3b was already thinking about changing 3Dmigoto to use .asm and .hlsl extensions instead of .txt... Since your wrapper already uses hash-type_replace.asm, I propose we change 3Dmigoto to do the same for ASM files now (we can debate whether to change HLSL later).
We could do this switch, it's a trivial change.
But I would question why we would want to switch from one half-baked solution to a different half-baked solution?
Right now the naming is not particularly awesome with _replace.txt signifying HLSL. And the lack of that _replace signifying ASM. There are a lot of files out there with this convention already.
If we are going to switch to the .asm extension, that makes life slightly harder for any fixer, because they won't have file associations set up by default. .txt is always set up and essentially free.
Just my opinion, but if we are going to make life harder for any fixer who picks it up, we ought to do the real job and make a naming convention that makes sense. That would mean .hlsl for HLSL files, and .cbo for binary files. I'm less clear if we'd want an extension for an unmodified master ASM file, versus an edited one.
Either that or keep everything human editable as .txt. With slightly better _ tails like _asm.txt, _hlsl.txt.
The middle ground just seems arbitrary and not good for anyone.
I'll defer to your opinion on this one bo3b as I don't think it's a big deal either way, but here's some thoughts on the matter:
Personally I'm not worried about file associations as I usually am working in a terminal where it's irrelevant and even when I do open something from explorer it only takes ten seconds or so to set up a file association, which is then there permanently. I think it's a bit of a stretch to imagine someone is capable of fixing a game but not configuring their file associations. Edit: Although, as pirateguybrush pointed out this could be a bit intimidating to new fixers.
If we had correct extensions then advanced text editors (vim, notepad++, etc) could be configured to automatically select the best highlighting and indentation rules (in the case of vim, .asm seems to already have a good default profile and hlsl can easily be set to match filetype=c).
For anything we have in the repository already I can easily do a bulk rename operation using the Linux mmv command. There's probably some windows tool out there that can do the same thing, or someone could whip up a batch file to do it.
Changing the existing naming for hlsl fixes could potentially be a cause of pain for users trying to switch to or from the stable 1.0.1 wrapper and 1.1.11, but as 1.1.x stabilises that will become less of a concern.
2x Geforce GTX 980 in SLI provided by NVIDIA, i7 6700K 4GHz CPU, Asus 27" VG278HE 144Hz 3D Monitor, BenQ W1070 3D Projector, 120" Elite Screens YardMaster 2, 32GB Corsair DDR4 3200MHz RAM, Samsung 850 EVO 500G SSD, 4x750GB HDD in RAID5, Gigabyte Z170X-Gaming 7 Motherboard, Corsair Obsidian 750D Airflow Edition Case, Corsair RM850i PSU, HTC Vive, Win 10 64bit
[quote="mike_ar69"]I've got 0.04 running and it works, but if I mark a shader and its in error, then I alt-tab out to fix it, the game hangs and I can't get back in. Worse, pressing Esc key in game hangs the game. So the fixing workflow is busted at the moment.
I was looking at the shiny reflection stuff, and a pixel shader by the name of 31052912ee015e3f-ps_replace.txt now seems to be responsible (whereas previously it was f522a33026aa87af-ps_replace.txt, so I don't know what the difference is yet), regardless this shader has this in it:
[code]
// Unknown use of GetDimensions for resinfo_ from missing reflection info, need manual fix.
// resinfo_indexable(texture2darray)(uint,uint,uint,uint) r4.xy, l(0), t5.xyzw
// Example for texture2d type, uint return:
tx.GetDimensions(uint(0), uiDest.x, uiDest.y, uiDest.z);
rx = uiDest;
[/code] [/quote]
For this one, it's a texture2darray, so we need a slightly different format here. Pretty sure this one will work there:
[code]t5.GetDimensions(0, uiDest.x, uiDest.y, uiDest.z, uiDest.w);
r4.xy = uiDest.xy;[/code]
mike_ar69 said:I've got 0.04 running and it works, but if I mark a shader and its in error, then I alt-tab out to fix it, the game hangs and I can't get back in. Worse, pressing Esc key in game hangs the game. So the fixing workflow is busted at the moment.
I was looking at the shiny reflection stuff, and a pixel shader by the name of 31052912ee015e3f-ps_replace.txt now seems to be responsible (whereas previously it was f522a33026aa87af-ps_replace.txt, so I don't know what the difference is yet), regardless this shader has this in it:
// Unknown use of GetDimensions for resinfo_ from missing reflection info, need manual fix.
// resinfo_indexable(texture2darray)(uint,uint,uint,uint) r4.xy, l(0), t5.xyzw
// Example for texture2d type, uint return:
tx.GetDimensions(uint(0), uiDest.x, uiDest.y, uiDest.z);
rx = uiDest;
For this one, it's a texture2darray, so we need a slightly different format here. Pretty sure this one will work there:
[quote="DarkStarSword"]I'll defer to your opinion on this one bo3b as I don't think it's a big deal either way, but here's some thoughts on the matter:
Personally I'm not worried about file associations as I usually am working in a terminal where it's irrelevant and even when I do open something from explorer it only takes ten seconds or so to set up a file association, which is then there permanently. I think it's a bit of a stretch to imagine someone is capable of fixing a game but not configuring their file associations. Edit: Although, as pirateguybrush pointed out this could be a bit intimidating to new fixers.[/quote]
Yes, don't get me wrong, I'm not saying it's a big deal or that people couldn't learn. It's just my philosophy that if we are going to change something, we ought to make it as good as we can, not just hack in yet another odd thing that people have to figure out. I like to pay my technical debt whenever I have to modify something that was working. If I'm introducing new bugs anyway, I might as well improve the overall use case.
I'm wary of changing the current naming convention because a number of people are already accustomed to it, and as you note the transition back and forth between versions would be annoying.
Now is just a good opportunity to consider the ramifications because we are adding a new file use case, and it'd be nice to not have to revisit this decision. We may not actually have an opinion on 'best', but if we do, now's the time.
DarkStarSword said:I'll defer to your opinion on this one bo3b as I don't think it's a big deal either way, but here's some thoughts on the matter:
Personally I'm not worried about file associations as I usually am working in a terminal where it's irrelevant and even when I do open something from explorer it only takes ten seconds or so to set up a file association, which is then there permanently. I think it's a bit of a stretch to imagine someone is capable of fixing a game but not configuring their file associations. Edit: Although, as pirateguybrush pointed out this could be a bit intimidating to new fixers.
Yes, don't get me wrong, I'm not saying it's a big deal or that people couldn't learn. It's just my philosophy that if we are going to change something, we ought to make it as good as we can, not just hack in yet another odd thing that people have to figure out. I like to pay my technical debt whenever I have to modify something that was working. If I'm introducing new bugs anyway, I might as well improve the overall use case.
I'm wary of changing the current naming convention because a number of people are already accustomed to it, and as you note the transition back and forth between versions would be annoying.
Now is just a good opportunity to consider the ramifications because we are adding a new file use case, and it'd be nice to not have to revisit this decision. We may not actually have an opinion on 'best', but if we do, now's the time.
Acer H5360 (1280x720@120Hz) - ASUS VG248QE with GSync mod - 3D Vision 1&2 - Driver 372.54
GTX 970 - i5-4670K@4.2GHz - 12GB RAM - Win7x64+evilKB2670838 - 4 Disk X25 RAID
SAGER NP9870-S - GTX 980 - i7-6700K - Win10 Pro 1607 Latest 3Dmigoto Release Bo3b's School for ShaderHackers
I would just add the extension to the file. Also I would make the format as:
CRC32.asm -> asm files
CRC32.hlsl -> hlsl files.
I would still keep both ASM + HLSL formats supported by the wrapper since as we saw HLSL is very powerful and until this game we didn't actually needed ASM.
This is how I would do it in any case:)
I would just add the extension to the file. Also I would make the format as:
CRC32.asm -> asm files
CRC32.hlsl -> hlsl files.
I would still keep both ASM + HLSL formats supported by the wrapper since as we saw HLSL is very powerful and until this game we didn't actually needed ASM.
This is how I would do it in any case:)
1x Palit RTX 2080Ti Pro Gaming OC(watercooled and overclocked to hell)
3x 3D Vision Ready Asus VG278HE monitors (5760x1080).
Intel i9 9900K (overclocked to 5.3 and watercooled ofc).
Asus Maximus XI Hero Mobo.
16 GB Team Group T-Force Dark Pro DDR4 @ 3600.
Lots of Disks:
- Raid 0 - 256GB Sandisk Extreme SSD.
- Raid 0 - WD Black - 2TB.
- SanDisk SSD PLUS 480 GB.
- Intel 760p 256GB M.2 PCIe NVMe SSD.
Creative Sound Blaster Z.
Windows 10 x64 Pro.
etc
My original filenames was "Dump\\vs_%016llX.asm" and "Dump\\ps_%016llX.asm"
Wanted to separate pixelshaders from vertexshaders in filelist.
If this is the final decision I could fairly easily make it work with the 3Dmigoto syntax.
The actual filenames are a bit arbitrary.
At this stage we could still change it to:
16f398fc56dce109-ps_asm.txt or something similar.
Other than that I'm against changing widely used filenames.
Edit: Changed my code to work with 3Dmigoto fix.
Having txt files are just simpler.
[quote="Flugan"]My original filenames was "Dump\\vs_%016llX.asm" and "Dump\\ps_%016llX.asm"
Wanted to separate pixelshaders from vertexshaders in filelist.[/quote]
I like that idea of having the type at the start of the filename instead of the end. If we do decide to change things up I'd put a +1 in for this :)
ps_%016llX.asm
ps_%016llX.hlsl
ps_%016llX.cbo
vs_%016llX.asm
vs_%016llX.hlsl
vs_%016llX.cbo
As an example, not sure if I'm completely happy.
I would probably need a clean break making the wrapper not work with old fixes until files are renamed. I rely on Total Commander for batch renames as a windows user.
Edit: Code updated to use the current 3Dmigoto naming scheme. New version of 0.04 uploaded.
I would probably need a clean break making the wrapper not work with old fixes until files are renamed. I rely on Total Commander for batch renames as a windows user.
Edit: Code updated to use the current 3Dmigoto naming scheme. New version of 0.04 uploaded.
Thanks to everybody using my assembler it warms my heart.
To have a critical piece of code that everyone can enjoy!
What more can you ask for?
New 0.04 from Flugan is working fine, also with ReShade and SweetFX (ReShade 0.18.4 Public Beta with SweetFX 2.0 Beta 8). Optimized it for 3D Vision 2: https://sfx.thelazy.net/games/preset/3828/
New 0.04 from Flugan is working fine, also with ReShade and SweetFX (ReShade 0.18.4 Public Beta with SweetFX 2.0 Beta 8). Optimized it for 3D Vision 2: https://sfx.thelazy.net/games/preset/3828/
Like my work? Donations can be made via PayPal to: rauti@inetmx.de
[quote="Flugan"]My original filenames was "Dump\\vs_%016llX.asm" and "Dump\\ps_%016llX.asm"
Wanted to separate pixelshaders from vertexshaders in filelist.
If this is the final decision I could fairly easily make it work with the 3Dmigoto syntax.
The actual filenames are a bit arbitrary.
At this stage we could still change it to:
16f398fc56dce109-ps_asm.txt or something similar.
Other than that I'm against changing widely used filenames.
Edit: Changed my code to work with 3Dmigoto fix.
Having txt files are just simpler.[/quote]
There's something to be said for a clean break in naming, and there's also something to be said for not rocking the boat.
I kind of like that idea of 'vs' or 'ps' at the front too. But the file names are not a fully arbitrary choice, because of our 'customers' the ShaderHackers. Not sure there is a fully clear winner, but whatever we choose should be based on what our users find easiest.
We already have one vote from Pirate for keeping txt files, and one vote from Helifax to go with .asm/.hlsl, and one vote from Flugan for .txt. I've asked Mike for his opinion too.
Looking at the editors, I don't think there is a clear win to naming them with extensions. Notepad++ doesn't support HLSL, nor Asm well. The only editor I saw that worked well was Visual Studio for .hlsl and that's a fairly odd use case. Pretty sure that most of our customers use Notepad++.
Choices as examples (asm, hlsl, binary):
1) f9c83c25de6eaa51-ps.txt, f9c83c25de6eaa51-ps_replace.txt, f9c83c25de6eaa51-ps.bin
2) ps_f9c83c25de6eaa51.asm, ps_f9c83c25de6eaa51.hlsl, ps_f9c83c25de6eaa51.cso
3) f9c83c25de6eaa51-ps_asm.txt, f9c83c25de6eaa51-ps_hlsl.txt, f9c83c25de6eaa51-ps.bin
Flugan said:My original filenames was "Dump\\vs_%016llX.asm" and "Dump\\ps_%016llX.asm"
Wanted to separate pixelshaders from vertexshaders in filelist.
If this is the final decision I could fairly easily make it work with the 3Dmigoto syntax.
The actual filenames are a bit arbitrary.
At this stage we could still change it to:
16f398fc56dce109-ps_asm.txt or something similar.
Other than that I'm against changing widely used filenames.
Edit: Changed my code to work with 3Dmigoto fix.
Having txt files are just simpler.
There's something to be said for a clean break in naming, and there's also something to be said for not rocking the boat.
I kind of like that idea of 'vs' or 'ps' at the front too. But the file names are not a fully arbitrary choice, because of our 'customers' the ShaderHackers. Not sure there is a fully clear winner, but whatever we choose should be based on what our users find easiest.
We already have one vote from Pirate for keeping txt files, and one vote from Helifax to go with .asm/.hlsl, and one vote from Flugan for .txt. I've asked Mike for his opinion too.
Looking at the editors, I don't think there is a clear win to naming them with extensions. Notepad++ doesn't support HLSL, nor Asm well. The only editor I saw that worked well was Visual Studio for .hlsl and that's a fairly odd use case. Pretty sure that most of our customers use Notepad++.
[quote="bo3b"][quote="Flugan"]My original filenames was "Dump\\vs_%016llX.asm" and "Dump\\ps_%016llX.asm"
Wanted to separate pixelshaders from vertexshaders in filelist.
If this is the final decision I could fairly easily make it work with the 3Dmigoto syntax.
The actual filenames are a bit arbitrary.
At this stage we could still change it to:
16f398fc56dce109-ps_asm.txt or something similar.
Other than that I'm against changing widely used filenames.
Edit: Changed my code to work with 3Dmigoto fix.
Having txt files are just simpler.[/quote]
There's something to be said for a clean break in naming, and there's also something to be said for not rocking the boat.
I kind of like that idea of 'vs' or 'ps' at the front too. But the file names are not a fully arbitrary choice, because of our 'customers' the ShaderHackers. Not sure there is a fully clear winner, but whatever we choose should be based on what our users find easiest.
We already have one vote from Pirate for keeping txt files, and one vote from Helifax to go with .asm/.hlsl, and one vote from Flugan for .txt. I've asked Mike for his opinion too.
Looking at the editors, I don't think there is a clear win to naming them with extensions. Notepad++ doesn't support HLSL, nor Asm well. The only editor I saw that worked well was Visual Studio for .hlsl and that's a fairly odd use case. Pretty sure that most of our customers use Notepad++.
Choices as examples (asm, hlsl, binary):
1) f9c83c25de6eaa51-ps.txt, f9c83c25de6eaa51-ps_replace.txt, f9c83c25de6eaa51-ps.bin
2) ps_f9c83c25de6eaa51.asm, ps_f9c83c25de6eaa51.hlsl, ps_f9c83c25de6eaa51.cso
3) f9c83c25de6eaa51-ps_asm.txt, f9c83c25de6eaa51-ps_hlsl.txt, f9c83c25de6eaa51-ps.bin
[/quote]
I prefer option 3 right now. Another point is that I often do bulk fixes on the ShaderCache, so would rather keep the same name in ShaderCache and ShaderFixes.
Flugan said:My original filenames was "Dump\\vs_%016llX.asm" and "Dump\\ps_%016llX.asm"
Wanted to separate pixelshaders from vertexshaders in filelist.
If this is the final decision I could fairly easily make it work with the 3Dmigoto syntax.
The actual filenames are a bit arbitrary.
At this stage we could still change it to:
16f398fc56dce109-ps_asm.txt or something similar.
Other than that I'm against changing widely used filenames.
Edit: Changed my code to work with 3Dmigoto fix.
Having txt files are just simpler.
There's something to be said for a clean break in naming, and there's also something to be said for not rocking the boat.
I kind of like that idea of 'vs' or 'ps' at the front too. But the file names are not a fully arbitrary choice, because of our 'customers' the ShaderHackers. Not sure there is a fully clear winner, but whatever we choose should be based on what our users find easiest.
We already have one vote from Pirate for keeping txt files, and one vote from Helifax to go with .asm/.hlsl, and one vote from Flugan for .txt. I've asked Mike for his opinion too.
Looking at the editors, I don't think there is a clear win to naming them with extensions. Notepad++ doesn't support HLSL, nor Asm well. The only editor I saw that worked well was Visual Studio for .hlsl and that's a fairly odd use case. Pretty sure that most of our customers use Notepad++.
I prefer option 3 right now. Another point is that I often do bulk fixes on the ShaderCache, so would rather keep the same name in ShaderCache and ShaderFixes.
I provide you 3 savegames with locations that have "3D errors" - for you to fix if you can/have time/want.
http://web396.inetseite.de/Errors-3D_29.05.2015_1552_Losti.rar
I also inlcuded a screenshot each and a short problem description.
[quote="Flugan"]My original filenames was "Dump\\vs_%016llX.asm" and "Dump\\ps_%016llX.asm"
Wanted to separate pixelshaders from vertexshaders in filelist.
If this is the final decision I could fairly easily make it work with the 3Dmigoto syntax.
The actual filenames are a bit arbitrary.
At this stage we could still change it to:
16f398fc56dce109-ps_asm.txt or something similar.
Other than that I'm against changing widely used filenames.
Edit: Changed my code to work with 3Dmigoto fix.
Having txt files are just simpler.
[/quote]
Hi Flugan
I am using your Alpha.04 fix and it is awesome. i usually don't mind using compatabilty mode with a little tweaking but your fix is so much better.
I wanted to ask if your wrapper is specifically meant for Windows 8.1 because I am using Windows 7 64 Ultimate?
Also should I still be turning hairworks off? If seems like the shadows from Gerald's swords on his back falling on his hair are a bit off. Indoors seems to be perfect with hairworks.
Thanks.
Flugan said:My original filenames was "Dump\\vs_%016llX.asm" and "Dump\\ps_%016llX.asm"
Wanted to separate pixelshaders from vertexshaders in filelist.
If this is the final decision I could fairly easily make it work with the 3Dmigoto syntax.
The actual filenames are a bit arbitrary.
At this stage we could still change it to:
16f398fc56dce109-ps_asm.txt or something similar.
Other than that I'm against changing widely used filenames.
Edit: Changed my code to work with 3Dmigoto fix.
Having txt files are just simpler.
Hi Flugan
I am using your Alpha.04 fix and it is awesome. i usually don't mind using compatabilty mode with a little tweaking but your fix is so much better.
I wanted to ask if your wrapper is specifically meant for Windows 8.1 because I am using Windows 7 64 Ultimate?
Also should I still be turning hairworks off? If seems like the shadows from Gerald's swords on his back falling on his hair are a bit off. Indoors seems to be perfect with hairworks.
Thanks.
Rampage 4 Extreme
4960x oc 4.6 Ghz, H100i watercooler
2080 Ti Sli
Windows 7 Ultimate Edition
5760x1080 PG258Q/2560x1440 PG278Q
4k Lg55c6v with edid mod
As far as I know nobody have solved hairworks at this point.
The wrapper is not intended to be just for 8.x, it should work fine on windows 7. It has a smaller footprint than 3Dmigoto so it has so far worked in windows 8.x where 3Dmigoto crashes.
3Dmigoto is ahead when it comes to features like textureOverride. I'm finally implementing hunting mode into flugan wrapper. Appears to be very near final but so far not heavily tested.
I also vote on option 4:
f9c83c25de6eaa51-ps-replace.asm, f9c83c25de6eaa51-ps_replace.txt, f9c83c25de6eaa51-ps_replace.bin
I'm not looking for a clean break as I wish to be able to use latest wrapper with old fixes without having to rename everything. Having matching filenames with only extensions changed while staying backwards compatible.
What does the ShaderCache do in 3Dmigoto. I'm currently storing bin files for all shaderfixes in the shaderfixes directory regardless of ini settings. Bin files are added, changed and deleted when reloading shaders with F10 depending on the changes in shaderfixes folder.
As far as I know nobody have solved hairworks at this point.
The wrapper is not intended to be just for 8.x, it should work fine on windows 7. It has a smaller footprint than 3Dmigoto so it has so far worked in windows 8.x where 3Dmigoto crashes.
3Dmigoto is ahead when it comes to features like textureOverride. I'm finally implementing hunting mode into flugan wrapper. Appears to be very near final but so far not heavily tested.
I also vote on option 4:
f9c83c25de6eaa51-ps-replace.asm, f9c83c25de6eaa51-ps_replace.txt, f9c83c25de6eaa51-ps_replace.bin
I'm not looking for a clean break as I wish to be able to use latest wrapper with old fixes without having to rename everything. Having matching filenames with only extensions changed while staying backwards compatible.
What does the ShaderCache do in 3Dmigoto. I'm currently storing bin files for all shaderfixes in the shaderfixes directory regardless of ini settings. Bin files are added, changed and deleted when reloading shaders with F10 depending on the changes in shaderfixes folder.
Thanks to everybody using my assembler it warms my heart.
To have a critical piece of code that everyone can enjoy!
What more can you ask for?
I was looking at the shiny reflection stuff, and a pixel shader by the name of 31052912ee015e3f-ps_replace.txt now seems to be responsible (whereas previously it was f522a33026aa87af-ps_replace.txt, so I don't know what the difference is yet), regardless this shader has this in it:
so I made this
and I get the error log:
so basically the shader never loads.
Anyhow, I hope to look more at this over the weekend.
Rig: Intel i7-8700K @4.7GHz, 16Gb Ram, SSD, GTX 1080Ti, Win10x64, Asus VG278
Personally I'm not worried about file associations as I usually am working in a terminal where it's irrelevant and even when I do open something from explorer it only takes ten seconds or so to set up a file association, which is then there permanently. I think it's a bit of a stretch to imagine someone is capable of fixing a game but not configuring their file associations. Edit: Although, as pirateguybrush pointed out this could be a bit intimidating to new fixers.
If we had correct extensions then advanced text editors (vim, notepad++, etc) could be configured to automatically select the best highlighting and indentation rules (in the case of vim, .asm seems to already have a good default profile and hlsl can easily be set to match filetype=c).
For anything we have in the repository already I can easily do a bulk rename operation using the Linux mmv command. There's probably some windows tool out there that can do the same thing, or someone could whip up a batch file to do it.
Changing the existing naming for hlsl fixes could potentially be a cause of pain for users trying to switch to or from the stable 1.0.1 wrapper and 1.1.11, but as 1.1.x stabilises that will become less of a concern.
2x Geforce GTX 980 in SLI provided by NVIDIA, i7 6700K 4GHz CPU, Asus 27" VG278HE 144Hz 3D Monitor, BenQ W1070 3D Projector, 120" Elite Screens YardMaster 2, 32GB Corsair DDR4 3200MHz RAM, Samsung 850 EVO 500G SSD, 4x750GB HDD in RAID5, Gigabyte Z170X-Gaming 7 Motherboard, Corsair Obsidian 750D Airflow Edition Case, Corsair RM850i PSU, HTC Vive, Win 10 64bit
Alienware M17x R4 w/ built in 3D, Intel i7 3740QM, GTX 680m 2GB, 16GB DDR3 1600MHz RAM, Win7 64bit, 1TB SSD, 1TB HDD, 750GB HDD
Pre-release 3D fixes, shadertool.py and other goodies: http://github.com/DarkStarSword/3d-fixes
Support me on Patreon: https://www.patreon.com/DarkStarSword or PayPal: https://www.paypal.me/DarkStarSword
For this one, it's a texture2darray, so we need a slightly different format here. Pretty sure this one will work there:
Acer H5360 (1280x720@120Hz) - ASUS VG248QE with GSync mod - 3D Vision 1&2 - Driver 372.54
GTX 970 - i5-4670K@4.2GHz - 12GB RAM - Win7x64+evilKB2670838 - 4 Disk X25 RAID
SAGER NP9870-S - GTX 980 - i7-6700K - Win10 Pro 1607
Latest 3Dmigoto Release
Bo3b's School for ShaderHackers
Yes, don't get me wrong, I'm not saying it's a big deal or that people couldn't learn. It's just my philosophy that if we are going to change something, we ought to make it as good as we can, not just hack in yet another odd thing that people have to figure out. I like to pay my technical debt whenever I have to modify something that was working. If I'm introducing new bugs anyway, I might as well improve the overall use case.
I'm wary of changing the current naming convention because a number of people are already accustomed to it, and as you note the transition back and forth between versions would be annoying.
Now is just a good opportunity to consider the ramifications because we are adding a new file use case, and it'd be nice to not have to revisit this decision. We may not actually have an opinion on 'best', but if we do, now's the time.
Acer H5360 (1280x720@120Hz) - ASUS VG248QE with GSync mod - 3D Vision 1&2 - Driver 372.54
GTX 970 - i5-4670K@4.2GHz - 12GB RAM - Win7x64+evilKB2670838 - 4 Disk X25 RAID
SAGER NP9870-S - GTX 980 - i7-6700K - Win10 Pro 1607
Latest 3Dmigoto Release
Bo3b's School for ShaderHackers
Like my work? Donations can be made via PayPal to: rauti@inetmx.de
CRC32.asm -> asm files
CRC32.hlsl -> hlsl files.
I would still keep both ASM + HLSL formats supported by the wrapper since as we saw HLSL is very powerful and until this game we didn't actually needed ASM.
This is how I would do it in any case:)
1x Palit RTX 2080Ti Pro Gaming OC(watercooled and overclocked to hell)
3x 3D Vision Ready Asus VG278HE monitors (5760x1080).
Intel i9 9900K (overclocked to 5.3 and watercooled ofc).
Asus Maximus XI Hero Mobo.
16 GB Team Group T-Force Dark Pro DDR4 @ 3600.
Lots of Disks:
- Raid 0 - 256GB Sandisk Extreme SSD.
- Raid 0 - WD Black - 2TB.
- SanDisk SSD PLUS 480 GB.
- Intel 760p 256GB M.2 PCIe NVMe SSD.
Creative Sound Blaster Z.
Windows 10 x64 Pro.
etc
My website with my fixes and OpenGL to 3D Vision wrapper:
http://3dsurroundgaming.com
(If you like some of the stuff that I've done and want to donate something, you can do it with PayPal at tavyhome@gmail.com)
Wanted to separate pixelshaders from vertexshaders in filelist.
If this is the final decision I could fairly easily make it work with the 3Dmigoto syntax.
The actual filenames are a bit arbitrary.
At this stage we could still change it to:
16f398fc56dce109-ps_asm.txt or something similar.
Other than that I'm against changing widely used filenames.
Edit: Changed my code to work with 3Dmigoto fix.
Having txt files are just simpler.
Thanks to everybody using my assembler it warms my heart.
To have a critical piece of code that everyone can enjoy!
What more can you ask for?
donations: ulfjalmbrant@hotmail.com
I like that idea of having the type at the start of the filename instead of the end. If we do decide to change things up I'd put a +1 in for this :)
2x Geforce GTX 980 in SLI provided by NVIDIA, i7 6700K 4GHz CPU, Asus 27" VG278HE 144Hz 3D Monitor, BenQ W1070 3D Projector, 120" Elite Screens YardMaster 2, 32GB Corsair DDR4 3200MHz RAM, Samsung 850 EVO 500G SSD, 4x750GB HDD in RAID5, Gigabyte Z170X-Gaming 7 Motherboard, Corsair Obsidian 750D Airflow Edition Case, Corsair RM850i PSU, HTC Vive, Win 10 64bit
Alienware M17x R4 w/ built in 3D, Intel i7 3740QM, GTX 680m 2GB, 16GB DDR3 1600MHz RAM, Win7 64bit, 1TB SSD, 1TB HDD, 750GB HDD
Pre-release 3D fixes, shadertool.py and other goodies: http://github.com/DarkStarSword/3d-fixes
Support me on Patreon: https://www.patreon.com/DarkStarSword or PayPal: https://www.paypal.me/DarkStarSword
ps_%016llX.hlsl
ps_%016llX.cbo
vs_%016llX.asm
vs_%016llX.hlsl
vs_%016llX.cbo
As an example, not sure if I'm completely happy.
I would probably need a clean break making the wrapper not work with old fixes until files are renamed. I rely on Total Commander for batch renames as a windows user.
Edit: Code updated to use the current 3Dmigoto naming scheme. New version of 0.04 uploaded.
Thanks to everybody using my assembler it warms my heart.
To have a critical piece of code that everyone can enjoy!
What more can you ask for?
donations: ulfjalmbrant@hotmail.com
Like my work? Donations can be made via PayPal to: rauti@inetmx.de
There's something to be said for a clean break in naming, and there's also something to be said for not rocking the boat.
I kind of like that idea of 'vs' or 'ps' at the front too. But the file names are not a fully arbitrary choice, because of our 'customers' the ShaderHackers. Not sure there is a fully clear winner, but whatever we choose should be based on what our users find easiest.
We already have one vote from Pirate for keeping txt files, and one vote from Helifax to go with .asm/.hlsl, and one vote from Flugan for .txt. I've asked Mike for his opinion too.
Looking at the editors, I don't think there is a clear win to naming them with extensions. Notepad++ doesn't support HLSL, nor Asm well. The only editor I saw that worked well was Visual Studio for .hlsl and that's a fairly odd use case. Pretty sure that most of our customers use Notepad++.
Choices as examples (asm, hlsl, binary):
1) f9c83c25de6eaa51-ps.txt, f9c83c25de6eaa51-ps_replace.txt, f9c83c25de6eaa51-ps.bin
2) ps_f9c83c25de6eaa51.asm, ps_f9c83c25de6eaa51.hlsl, ps_f9c83c25de6eaa51.cso
3) f9c83c25de6eaa51-ps_asm.txt, f9c83c25de6eaa51-ps_hlsl.txt, f9c83c25de6eaa51-ps.bin
Acer H5360 (1280x720@120Hz) - ASUS VG248QE with GSync mod - 3D Vision 1&2 - Driver 372.54
GTX 970 - i5-4670K@4.2GHz - 12GB RAM - Win7x64+evilKB2670838 - 4 Disk X25 RAID
SAGER NP9870-S - GTX 980 - i7-6700K - Win10 Pro 1607
Latest 3Dmigoto Release
Bo3b's School for ShaderHackers
I prefer option 3 right now. Another point is that I often do bulk fixes on the ShaderCache, so would rather keep the same name in ShaderCache and ShaderFixes.
Rig: Intel i7-8700K @4.7GHz, 16Gb Ram, SSD, GTX 1080Ti, Win10x64, Asus VG278
http://web396.inetseite.de/Errors-3D_29.05.2015_1552_Losti.rar
I also inlcuded a screenshot each and a short problem description.
Like my work? Donations can be made via PayPal to: rauti@inetmx.de
Hi Flugan
I am using your Alpha.04 fix and it is awesome. i usually don't mind using compatabilty mode with a little tweaking but your fix is so much better.
I wanted to ask if your wrapper is specifically meant for Windows 8.1 because I am using Windows 7 64 Ultimate?
Also should I still be turning hairworks off? If seems like the shadows from Gerald's swords on his back falling on his hair are a bit off. Indoors seems to be perfect with hairworks.
Thanks.
Rampage 4 Extreme
4960x oc 4.6 Ghz, H100i watercooler
2080 Ti Sli
Windows 7 Ultimate Edition
5760x1080 PG258Q/2560x1440 PG278Q
4k Lg55c6v with edid mod
The wrapper is not intended to be just for 8.x, it should work fine on windows 7. It has a smaller footprint than 3Dmigoto so it has so far worked in windows 8.x where 3Dmigoto crashes.
3Dmigoto is ahead when it comes to features like textureOverride. I'm finally implementing hunting mode into flugan wrapper. Appears to be very near final but so far not heavily tested.
I also vote on option 4:
f9c83c25de6eaa51-ps-replace.asm, f9c83c25de6eaa51-ps_replace.txt, f9c83c25de6eaa51-ps_replace.bin
I'm not looking for a clean break as I wish to be able to use latest wrapper with old fixes without having to rename everything. Having matching filenames with only extensions changed while staying backwards compatible.
What does the ShaderCache do in 3Dmigoto. I'm currently storing bin files for all shaderfixes in the shaderfixes directory regardless of ini settings. Bin files are added, changed and deleted when reloading shaders with F10 depending on the changes in shaderfixes folder.
Thanks to everybody using my assembler it warms my heart.
To have a critical piece of code that everyone can enjoy!
What more can you ask for?
donations: ulfjalmbrant@hotmail.com