#✅RenoDX: Unreal Engine

1 messages · Page 1 of 1 (latest)

fallow mica
#

same

elfin lance
#

log is the same

#

17:48:04:403 [11704] | DEBUG | [RenoDX] utils::shader::BuildReplacementPipeline(Replacing 0xbbb5ca7b)

#

all I did was fix the lutbuilders the same as any other lutbuilder + add this to addon.cpp

// replace the 2 new  lutbuilders
    TracedShaderEntry(0x9DF2DDD4),
    TracedShaderEntry(0xBBB5CA7B),
#

I assume if the issue was a bad decomp it would just look fucked up

#

or not compile

#

vs. crash

spare bane
#

crash is not from lut builders

#

can't be

elfin lance
#

the last lines in the log are upgrade 32x32x32 rgb10a2 -> fp16

replace 0xBBB5CA7B

#

it might not be the reason for the crash; but thats all I see

#

@bold gulch can you stick the devkit in jousant

#

and tell me if there are custom shaders that come after the lutbuilder

#

a normal game is

#

-> lutbuilder
-> shader that samples lutbuilder [draws to swapchain]
-> ui [draws to swapchain]
-> ui [draws to swapchain]
etc.

spare bane
#

i'm adding an Unreal HDR Look

elfin lance
#

if the sample shader isnt drawing to swapchain, they're doing custom stuff

elfin lance
#

or something that mimics aces1000?

spare bane
#

80 80 80

#

yeah

#

#1321685184852135967 message

#

see ^

elfin lance
#

80 80 80 with reinhard seems pretty nuts

spare bane
#

fine here

elfin lance
#

looks really good though

spare bane
#

midgray actually matches

elfin lance
#

I dont know the jousant issues, but can I commit the lutbuilders anyway -- the code is well

#

the same

spare bane
#

but there's something in SDR that is causing blowout

#

i need to find it

elfin lance
#

it might just be jousant doing scuffed shit

#

are you gonna look into fixing highlight desaturation with tonemappass?

#

so I dont have to do the scuffed dice/frostbite method

#

but yea sorry guys, I tried getting the game to work; no idea

#

when it comes to fixing shaders, no problem

#

but when it comes to the game crashing or the "lower level" swapchain stuff; I have no idea -- thats shortfuse's territory

spare bane
#

what game is this?

elfin lance
#

Jousant

spare bane
#

on game pass

elfin lance
#

here are the fixed lutbuilders

elfin lance
#

idc about the game, but its only 3$ or something on keysites

fallow mica
#

yeah

spare bane
#

i'm downloading it

fallow mica
#

i bought it from a keysite

elfin lance
#

this is the unreal engine mod with the latest commits + 2 added lutbuilders

only difference between this and src/games/unrealengine is

  1. 2 files in sm6 lutbuilders folder

  2. addon.cpp [sm6 section]

    TracedShaderEntry(0x9DF2DDD4),
    TracedShaderEntry(0xBBB5CA7B),
fallow mica
#

dont remember which one though

elfin lance
#

I used decomp.exe with -f and --use-do-while

#

I think I got it from a humble bundle

bold gulch
#

what are the lutbuilder hashes

bold gulch
#

nvm i see

elfin lance
#

here are the .cso if you need them

#

yea jusant is 1$ on keysites

#

can you guys take over jusant?

#

I wanna take a nap

#

I was at the doctor today

#

and if you find what the problem was, ping me -- at this point I'm curious

bold gulch
elfin lance
#

doesnt draw to swapchain?

bold gulch
#

oh wait i didnt check that

elfin lance
#

did you check if shader#2 is UI or not?

#

because 100 ui shaders after the sample shader is normal UE shit

#

and there will always be 1 shader after the lutbuilder; you can find it easily via 543

bold gulch
#

how do i even check

#

no green things in devkit

elfin lance
#

the start of the shader asm/llvm will have 543 -- since thats their RNG for grain

bold gulch
#

its not ui

elfin lance
bold gulch
#

ui is the 3rd shader after

elfin lance
#

if there is a shader after the sample shader

#

the game does custom shit

#

but even then, it should just look fucked up

#

not crash

bold gulch
#

oh im dumb

#

its a vertex shader

#

forgot to disable those

#

so ya just lut sample shader

elfin lance
#

pulling a marat

#

so yea this is probably a shortfuse thing

#

earlier in the log

#
17:48:03:131 [24500] | DEBUG | [RenoDX] utils::shader::BuildReplacementPipeline(Replacing 0xbbb5ca7b)
17:48:03:131 [24500] | DEBUG | [RenoDX] utils::shader::BuildReplacementPipeline(Added replacement 0xbbb5ca7b)
17:48:03:132 [24500] | DEBUG | [RenoDX] utils::shader::BuildReplacementPipeline(Added replacement pipeline0x0000000000000000)
17:48:03:132 [24500] | ERROR | [RenoDX] utils::shader::PipelineShaderDetails(Failed to replace pipeline)
#

I wonder if there are input/output issues

#

try live loading the hlsl?

#

see if it replaces

#

does the version of the .dll files in the decomp folder matter

#

mine might be on the older side (dxil/dxcomppiler)

#

but if the shader decompiles and then has no issue compiling in vscode; it should be fine?

#

@bold gulch while we're on the subject, can you please send me the latest dxil/dxcompiler

#

is it DX Compiler release for February 2025 ?

elfin lance
#

is febuary what we want

spare bane
#

yes

elfin lance
#

ty

spare bane
#

@earnest bolt @pseudo maple i don't get a crash. it boots without me trying anything, but i don't the SK UI

#

just made SK load the game and didn't really set anything (still have reshade as the dxgi.dll)

elfin lance
#

ok ima take a nap, musa jusant is in your hands

spare bane
#

i'm in game

bold gulch
#

i dont wanna do ue mod stuff

elfin lance
#

did you change anything

spare bane
#

in South of Midnight

bold gulch
#

riperoni

spare bane
#

i downloaded jusant

earnest bolt
elfin lance
#

and if we all contribute fixing them little by little

#

the mod will grow exponentially

spare bane
#

it's hdr, it works

#

but no SK ui

earnest bolt
#

🤷‍♂️

elfin lance
bold gulch
#

not interesting

#

no custom stuff = boring

#

shaders i mean

#

brain isn't big enough to handle other shit

elfin lance
earnest bolt
spare bane
#

what's your setup

#

i just installed the game, installed reshade, dragged over addon. clicked play on SK

earnest bolt
#

i did the same

elfin lance
#

I try to fix up lutbuilders people share, because its 2 lines, makes the person happy, and also adds another lutbuilder to the mod which might be used in 10 other games

spare bane
#

you didn't actually try the newer builds

#

because they were debug

earnest bolt
#

ok

elfin lance
#

the first lutbuilder we fixed was one shortfuse walked me through, the one in SMT5 long ago

#

and that lutbuilder alone was used in almost 10 games

spare bane
#

i need to strip the dumb aces pipeline

#

aces kill highlights

earnest bolt
elfin lance
# spare bane i need to strip the dumb aces pipeline

I thought we dont go into aces until the code after lutbuildertonemap

[branch] // the branch goes through all the different output device cvars (sdr "aces", 1000/2000 HDR10, 1000/2000 scRGB, and 3 debug outputs [7 8 9])
(cbuffer == 0)

earnest bolt
#

also the colors are fucking up

spare bane
#

looks normal here

earnest bolt
#

move left and right slowly with the character and the whole scene changes

spare bane
#

what are you renodx settings?

earnest bolt
#

stock atm

#

oh it seems to be the same bug that guy got earlier about changing a setting and it fixes it, i hit reset on peak to change 1000 -> 1499

spare bane
#

special K doesn't save Reshade settings, but that's w/e. as long as it doesn't crash

spare bane
earnest bolt
#

as far as i can tell sk isnt even running but who knows

spare bane
#

you can tell because the cursor changes

earnest bolt
#

it probably is

spare bane
#

when you press ctrl shift escape

#

it also breaks the hdr analysis shader

#

but somehow reshade window can draw

#

it's all weird

earnest bolt
#

one step closer to having both working soyjak_grin95

spare bane
#

have to run everything through SK isn't ideal and moving addons around is tedious

earnest bolt
#

i like sk's feature set and i don't like being forced to pick between good hdr and sk

spare bane
#

I renamed dxgi.dll to Reshade64.dll and booted SK and it hardlocked my PC (writing from my phone)

earnest bolt
#

fun soyjak_grin95

spare bane
#

it recovered and said the game crashed

#

second time it booted

#

Reshade wasn't even set to load

cobalt marlin
#

Yeah SK autoloads reshade when named ReShade32/64.dll

#

Either in game root folder or in the SK profile folder's ReShade subfolder for the game

earnest bolt
#

maybe it's a stupid thing like that

spare bane
#

i have this, not loading

#

let's try case sensitivity

earnest bolt
#

that loads from global plugins i believe, the tickbox

spare bane
#

no reshade unless i move everything

#

maybe it needs to be in the other folder

earnest bolt
#

no idea, i don't like sk's reshade implementation, it's far too complicated and confusing

spare bane
#

yeah, i thas to be \Binaries\WinGDK but dxgi.dll reshade doesn't

earnest bolt
#

that is what i said yes

spare bane
#

both work fine

#

the whole shared addon folder thing is probably what's cursed

earnest bolt
#

so how you get both working?

cobalt marlin
#

Yay, eventually, once going through per game messes, it gets working when it actually can

spare bane
#
  • "D:\XboxGames\South Of Midnight\Content\Midnight\Binaries\WinGDK\ReShade64.dll"
  • "D:\XboxGames\South Of Midnight\Content\renodx-unrealengine.addon64"

Launch from SK

#

nothing fancy

#

even have prevent fullscreen on

cobalt marlin
#

Should never be that complicated

spare bane
#

to be fair, UE is busted like that

#

and xbox games makes it extra cursed

#

because reshade needs to target the launcher.exe

cobalt marlin
#

Yeah but everything next to win64shipping exe should work easy

spare bane
#

it might work

cobalt marlin
#

Ideally ofc

spare bane
#

i just already had the addon64 in there

#

and reshade picked up lilium's shaders

cobalt marlin
earnest bolt
#

fml

spare bane
#

lol

earnest bolt
#

which addon again

spare bane
#

did you remove dxgi.dll from "D:\XboxGames\South Of Midnight\Content\dxgi.dll"

earnest bolt
#

may have forgotten some inis

spare bane
#

hmm

#

i actually have two reshades...

earnest bolt
#

nope its just straight up cursed

#

sk but no reshade

spare bane
#

lol

#

it's this

earnest bolt
#

wait its loaded WTF

#

no addon tho

spare bane
#
  • "D:\XboxGames\South Of Midnight\Content\ReShade64.dll"
  • "D:\XboxGames\South Of Midnight\Content\renodx-unrealengine.addon64"
  • "D:\XboxGames\South Of Midnight\Content\Midnight\Binaries\WinGDK\ReShade64.dll" (yes again)
#

and now SK works

#

let me remove that second reshade64 for a sanity check

earnest bolt
cobalt marlin
#

no ReShade2.ini produced ?

spare bane
#

idk care about that right now

#

yep, need two Reshade64.dll files

cobalt marlin
#

wtf

earnest bolt
#

which is it

spare bane
#

doesn't matter

#

they're in two paths is the point

#

let me rename to the right case

#

@pseudo maple this works: <#1321685184852135967 message> and no need to configure anything. just click play in SK

earnest bolt
#

sweet jebus it works Soy_Point43

#

had the changing colors bug but can fix that with reset

#

wait no, its buggin

spare bane
#

i've never been able to reproduce that

#

do you get that without SK?

earnest bolt
#

yeah i was iirc but after all this testing who knows

spare bane
#

i'd like to solve it at some point

earnest bolt
#

it did seem to happen more when ui brightness is not 203 but i cant reproduce it

#

i normally use 120nit

spare bane
#

what about nvidia and stuff? you said you used an overlay?

#

or maybe some driver option? color calibration?

earnest bolt
#

i have that off now, nvidia driver is set to reference mode, no hdr calibration app

#

peak brightness shows as unknown in windows settings, usually 1499 (lg tv)

spare bane
#

the mod, despite appearances, is not very complex

#

you can try scRGB instead of HDR10 and also try swapchain compatibility mode and it might do something

pseudo maple
spare bane
#

or else you don't get the SK ui

#

if you don't have in the "root", then no SK UI. If you don't have in WinGDK, no Reshade UI

#

@bold gulch @elfin lance Jusant crashes? I just get no upgrade (haven't injected new lut shader yet)

bold gulch
#

Steam version crashes on launch

fallow mica
#

im steam version too

pseudo maple
# spare bane both are

Forcing HDR10 or scRGB also works, but I see part of the problem now.
By the time the code that checks for ReShade64.dll runs, the dumbass Unreal Engine has changed the working directory.

#

So I need to build the full path relative to the executable and use that explicitly.

spare bane
pseudo maple
#

It's hugely problematic 😕

#

I even know about the problem and constantly forget to account for it.

spare bane
#

@pseudo maple also, we use this Reshade #🧩renodx-dev message

#

that might not need the swapchain forcing

#

(just so we're on the same page)

pseudo maple
#

Seems to be working alright now.
Still don't like that ReShade has to be loaded in-between initialization -- before SK fully initializes everything, but after it creates the dummy window to get the vftable from DXGI.
SK has an alternate mode where it can cache the vftable addresses, but I disable that whenever ReShade is present because that generally causes even more problems. 🤷 Can't win.

#

--
Actually, come to think of it...
The vftable cache wasn't being disabled because SK didn't spot ReShade in the game's directory, because the damn engine changed the working directory.
That may have been the problem all along.

spare bane
#

well, i also had to change a bunch of swapchain stuff

#

there used to be a crash

#

no SK UI was after i fixed the crash

elfin lance
#

I dont have the game, but the issue seems to be crashing

spare bane
#

@elfin lance we're talking about South of Midnight

elfin lance
#

the reply button didnt go through

spare bane
#

jusant has a pipeline layout that doesn't use a descriptor table, which is the lut builder. that's all i found

#

game wants that blown out look apparently

pseudo maple
#

Yup, that was the problem all along.

#

SK wasn't looking in the right directory for dxgi.dll

#

So didn't active ReShade compatibility code.

spare bane
#

oof, but i do appreciate the help on bypassing tool windows and dummy windows

pseudo maple
elfin lance
spare bane
pseudo maple
#

That even fixed compatibility with The Witness, lol.
I've been trying to figure out for years why I couldn't load ReShade as dxgi.dll in that game and have SK's UI work.

#

Unreal Engine's a hot mess sometimes.

spare bane
#

i just was messing with Jusant (another UE game) and it won't save my RenoDX settings. nothing to do with SK.

elfin lance
#

so if I find another game that has issues with desc tables; all I do is add it to this list?

if (product_name == "Jusant") return true;

spare bane
#

yep

elfin lance
#

do I just need a small snippet of the window name?

#

or full window name?

spare bane
#

20:45:48:978 [27704] | INFO | [RenoDX] No default settings for ASC-WinGDK-Shipping.exe (Jusant)

#

whatever is in there

elfin lance
#

copy

spare bane
#

that's product_name

elfin lance
#

did you use diff colors in your lutbuilders

spare bane
#

no, the last one is Grading Strength 0

#

going to have to figure out some sort of clean way of "don't blowout highlights"

spare bane
#

but it's the grading technically, we don't step all of it

#

i'm working on a different setup for UE

elfin lance
#

ok yea I checked the lutbuilders you commited, same colors I used

spare bane
#

this might be inverse blue correct though: ```cpp
float _823 = ((mad(0.061360642313957214f, _787, mad(-4.540197551250458e-09f, _785, (_783 * 0.9386394023895264f))) - _783) * cb0_036y) + _783;
float _824 = ((mad(0.169205904006958f, _787, mad(0.8307942152023315f, _785, (_783 * 6.775371730327606e-08f))) - _785) * cb0_036y) + _785;
float _825 = (mad(-2.3283064365386963e-10f, _785, (_783 * -9.313225746154785e-10f)) * cb0_036y) + _787;

#

because ap1 has the blue correct

elfin lance
#

yea

spare bane
#

actually, we don't want to inverse it

elfin lance
#

iirc you said we dont need blue correct

spare bane
#

idk why they do it

elfin lance
#

because renodx aces/renodrt has it built in

#

so I think the latest untonemapped_ap1 go before blue correct

spare bane
#

oh, there's a lerp

#

like to scale "how much blue correct"

elfin lance
#

oh

spare bane
#

so you can inverse to decide how little you want

elfin lance
#

guess we can start forcing lerp str to 0 for that

spare bane
#

i think all the weird color grading has already happen so everything after is just ACES RRT, and SDR tonemap, then maybe lut, then final pow/gamma

elfin lance
#

color space conersions for output device

spare bane
#

so i'm thinking of making a CreateUEConfig(untonemapped_ap1)

#

then you can plug in stuff to the config

#

there's a clip to bt709 in there

elfin lance
#

per game configs?

spare bane
#

well, per lut builder

elfin lance
#

idk how well that would work

#

remember romance saga 2

#

where it used the same lutbuilder as all the other games we found

#

but it had different toe/shoulder/etc

spare bane
#

like, i want to bypass RRT

elfin lance
#

so the very first lutbuilder fix we made didnt work

#

problem is the raw image heavily relie son it

#

or else we get opaque blue instead of white

spare bane
#
  // BlueBlueCorrectInv
  r5.x = dot(float3(1.06537485, 1.44678506e-06, -0.0653710067), r1.xyz);
  r5.y = dot(float3(-3.45525592e-07, 1.20366347, -0.203667715), r1.xyz);
  r5.z = dot(float3(1.9865448e-08, 2.12079581e-08, 0.999999583), r1.xyz);
  // lerp with BlueCorrection
  r5.xyz = r5.xyz + -r1.xyz;
  r1.xyz = cb0[36].yyy * r5.xyz + r1.xyz;

  // Convert to target space but lacks clamp
  r5.x = saturate(dot(cb1[12].xyz, r1.xyz));
  r5.y = saturate(dot(cb1[13].xyz, r1.xyz));
  r5.z = saturate(dot(cb1[14].xyz, r1.xyz));
elfin lance
#

good ole devs trying to figure out how to get a color with aces hue shifts

spare bane
#

this is what i mean, it saturates

#

to bt709

#

hard saturate

elfin lance
#

oh

spare bane
#

that's lutbuilder_0x31FE4421.ps_5_x

#
    r3.x = dot(float3(1.06537485, 1.44678506e-06, -0.0653710067), r0.xyz);
    r3.y = dot(float3(-3.45525592e-07, 1.20366347, -0.203667715), r0.xyz);
    r3.z = dot(float3(1.9865448e-08, 2.12079581e-08, 0.999999583), r0.xyz);
    r3.xyz = r3.xyz + -r0.xyz;
    r0.xyz = cb0[66].xxx * r3.xyz + r0.xyz;
    r3.x = dot(float3(1.70505154, -0.621790707, -0.0832583979), r0.xyz);
    r3.y = dot(float3(-0.130257145, 1.14080286, -0.0105485283), r0.xyz);
    r3.z = dot(float3(-0.0240032747, -0.128968775, 1.15297174), r0.xyz);
    r2.xyz = max(float3(0, 0, 0), r3.xyz);

this is stock lutbuilder_0xC1BCC6B5.ps_5_x

#

goes to bt709

#

removes all negative colors

#

somehow crisis core retains AP1

#

but if it had a lut, rip

elfin lance
#

because there is a max0

#

and games that use it do get WCG

#

is 0xc1b "stock" ?

#

because it is in a lot of games

#

so it would make sense if it was UE 4.27 stock

spare bane
#

i think so

elfin lance
spare bane
#

apparently 0xC1BCC6B5 is bugged

#

but i had hand checked it before and did this: ```cpp
// r4.y = cmp(0 < r3.x);
// r3.x = cmp(r3.x < 0);
// r3.x = (int)-r4.y + (int)r3.x;
// r3.x = (int)r3.x;
r3.x = sign(r3.x);

elfin lance
#

would be interesting to see that game with the shader piped through

#

the converstion to dxil tool

#

dxbc2dxil

#

and then decomp

spare bane
#

let's fin dout

elfin lance
#

because in theory that would result in a clean decomp

spare bane
#

hmm, it just gives me llvm

#

which is "fine" but i didn't actually build a cli for raw llvm (though i could)

elfin lance
#

llvm as in a "text" file that is just the llvm output

#

not a compiled binary

spare bane
#

yeah, i'm adding the argument now --llvm

#
if (is_llvm) {
  disassembly = renodx::utils::path::ReadTextFile(paths[0]);
} else {
  auto code = renodx::utils::path::ReadBinaryFile(paths[0]);
  disassembly = renodx::utils::shader::compiler::directx::DisassembleShader(code);
}
#

hmm, looks strange

elfin lance
#

can we get a shorter arg for

#

[--use-do-while]

#

like

#

-udw

#

all the other ones have it

#

unless its not "documented"

#
C:\Users\desktop\Desktop\dev stuff\tools\shortfuse decomp>decomp.exe
USAGE: decomp.exe {cso} [{hlsl}] [--flatten] [-f] [--skip-existing] [-s] [--use-do-while]
spare bane
#

oh, i didn't need to do the --llvm

elfin lance
#

I guess -u would be fine too since there arnt a lot of args, but its up to you

spare bane
#

.\bin\dxbc2dxil.exe .\0xC1BCC6B5.ps_5_0.cso /o shader.bin works

spare bane
#

but i can't decompile it

#

spirv probably could, but let me fix this up

elfin lance
#

spriv = rip despairge

spare bane
#

entry:

#

if23.else: ; preds = %if3.else

#

oh

#

i can fix llvm by hand and then pass it

#
; Name                 Index             InterpMode DynIdx
; -------------------- ----- ---------------------- ------
; TEXCOORD                 0          noperspective       
; SV_Position              0                              
; SV_RenderTargetArrayIndex     0        nointerpolation       

cursed formatting

#

not the formatting, straight up no info

elfin lance
#

peak index 0

spare bane
#

it's usually ```cpp
// Name Index Mask Register SysValue Format Used
// -------------------- ----- ------ -------- -------- ------- ------
// TEXCOORD 0 xy 0 NONE float xy
// SV_POSITION 0 xyzw 1 POS float
// SV_RenderTargetArrayIndex 0 x 2 RTINDEX uint x

#

no format

#

oh

#

nevermind, it's weird

#

there's two output signatures sections

#

one is missing

elfin lance
#

like svtarget.0 and 1?

spare bane
#

too cursed

elfin lance
#

if its too cursed for you

#

idk what to tell you

#

I was never able to get bins from 11on12 or sm5 -> 6 that pix does to decompile

#

even though the llvm looks "decent"

spare bane
#

this isn't actually a normal sm6 though, whatever dxbc2dxil does

#

it doesn't disassemble the same

elfin lance
#

copy

#

probably the same for w/e pix does

spare bane
#

problem is i depend on the ; comments more than i should

#

instead of the stuff at the bottom

#
!10 = !{i32 1, !"SV_Position", i8 9, i8 3, !9, i8 0, i32 1, i8 4, i32 1, i8 0, null}
!11 = !{i32 2, !"SV_RenderTargetArrayIndex", i8 5, i8 4, !9, i8 1, i32 1, i8 1, i32 2, i8 0, null}
; Input signature:
;
; Name                 Index             InterpMode DynIdx
; -------------------- ----- ---------------------- ------
; TEXCOORD                 0          noperspective       
; SV_Position              0                              
; SV_RenderTargetArrayIndex     0        nointerpolation       
elfin lance
#

ngl if it wasnt for the comments, llvm would be gibberish for me

spare bane
#

i started from the top, and then found all the info repeated at the bottom

#

meaning i should have built from the metadata at the bottom first, and then filled that in with stuff from the comments if they were available

pseudo maple
#

Thanks for fixing the forced fullscreen, also.

I often play games like this. The screen's 4K, but I have a 21:9 window centered on screen with a black window behind it.
Forced fullscreen was preventing me from doing that 🙂

spare bane
#
renodx::utils::settings::ResetSettings();
renodx::utils::settings::UpdateSettings({
    {"ColorGradeContrast", 80.f},
    {"ColorGradeSaturation", 80.f},
    {"ColorGradeBlowout", 80.f},
    {"ColorGradeStrength", 0.f},
});

it's just this in code

elfin lance
#

AI Limit is looking good, with my hdr look at home setup

#

rip meant to go to #🧩renodx-dev

#

ohh well

elfin lance
#

its not too strong, but looks gud

spare bane
#

80 80 80 is basically ACES

elfin lance
#

yea I seen a pic

#

btw whatever version of Unity AI Limit is on, the one that uses CS for uberposts -- it doesnt have 500 permutations

#

I have a dude playing my WIP mod, and he went through multiple areas and

#

still uses the same shader

spare bane
#

uh, are we running the wrong path the whole time?

#

3dmigoto where everything is a float

#

same here

elfin lance
#

LMAO

spare bane
#

should be r0.xyz = asuint(cb0[44].y) != 0u ? r1.xyz : r0.xyz;

elfin lance
#

would float and asuint(float) return 2 diff numbers?

spare bane
#

0u != 0.f

elfin lance
#

yea ik

#

thats why I'm asking

#

like would it be different enough to run a diff path

spare bane
#

it's the comparison

#

i got griefed by it before

elfin lance
#

or would it be "close enough" to where it would "just work"

#

I got griefed by it in yumia

#

miru helped me out

#

had to change a bunch of stuff to asuint()

#

3dm cmp memes

spare bane
#

meh... i should start the fxc decompiler

elfin lance
spare bane
#

i'm not going to go and fix all the float int cast nonsense in all those shaders

elfin lance
#

for sm5 -> sm6

#

and thats basically all of fxc dun

spare bane
#

it upgrades some stuff though that isn't backwards compatible

elfin lance
#

ah

#

true

#

if it uses shit like select

#

cant recompile as sm5

#

but I mean can you not fix that up in the decomp

#

I guess select wont easily replace as a regular bool

spare bane
#

also harder to 1:1 check

elfin lance
#

yea

#

was just a thought

spare bane
#

i don't think it's as hard to be honest

#

fxc has all the if/else logic built for you

#

you just do per line

#

you don't have to keep track of previous values like in sm6

#

ladder ladder

elfin lance
spare bane
elfin lance
#

I remember when I saw my first sm6 shader

spare bane
#

wrong number

elfin lance
#

it was a UE lutbuilder, jedi survivor

#

and I saw all the fucking ladders

elfin lance
#

frontier_phi_1_2_ladder_8 = frontier_phi_1_2_ladder_5_ladder_8;

#

I instnatly noped out

spare bane
elfin lance
#

yea I see 3dm grief us hard

#

I wonder how much sm5 mods on the modpage

#

have wrong colors

#

but since stuff looks "decent enough"

#

we just moved on with the mod

spare bane
#

this is atan

r5.y = r5.y * -2 + 1.57079637;
r5.y = r5.z ? r5.y : 0;
r3.w = r3.w * r5.x + r5.y;
r5.x = cmp(r3.z < -r3.z);
r5.x = r5.x ? -3.141593 : 0;
r3.w = r5.x + r3.w;
r5.x = min(r3.x, r3.z);
r3.x = max(r3.x, r3.z);
r3.z = cmp(r5.x < -r5.x);
r3.x = cmp(r3.x >= -r3.x);
r3.x = r3.x ? r3.z : 0;
r3.x = r3.x ? -r3.w : r3.w;
elfin lance
#

The arctangent of the x parameter. This value is within the range of -π/2 to π/2.

#

pie * 2 = diamater

#

idk what pie / 2 is

#

wait no radius * 2 = diamater

spare bane
#

the problem isn't so much it's atan, it's that it's wrong in the decompile

elfin lance
#

ik

#

I was about to ask

#

wtf is atan

#

google isnt helping

#

it assumes I know 5th grade math

#

r5.x = r5.x ? -3.141593 : 0; ohh wow negative pi

bold gulch
#

arctan

elfin lance
spare bane
#

@viscid mirage let me know if 0xC1BCC6B5 looks better now

pseudo maple
#

🤣
Speaking of which, static analysis just pointed out this lovely mistake.

  DWORD  dwWait =  WAIT_OBJECT_0;
  while (dwWait == WAIT_OBJECT_0)
  {
    dwWait =
      MsgWaitForMultipleObjects ( 3, hWaitEvents, FALSE,
                                        INFINITE, QS_ALLINPUT );
  
    XINPUT_STATE                  xstate = { };
    SK_XInput_PollController (0, &xstate);
    SK_XInput_PollController (1, &xstate);
    SK_XInput_PollController (2, &xstate);
    SK_XInput_PollController (3, &xstate);
  
    ResetEvent (hHotplugUnawareXInputRefresh.m_h);
  } while ( dwWait == WAIT_OBJECT_0 ); // Events #1 and #2 end this thread

That was clearly do-while a long time ago, now it's while followed by another while.
Harmless thankfully.

spare bane
rotund otter
#

Ok so trying latest SK with repo Add-on build, and both load but I can't get to the SK UI

#

This is with dxgi.dll and the add-on in the Binaries/WinSDK folder

#

(south of midnight)

rotund otter
#

Ah using SK to lazy load works

viscid mirage
#

nice, thanks

#

could we maybe get custom sliders for game specific fixes or would that be too much work

spare bane
#

too much. we should extract stuff into folders then

viscid mirage
#

hmm

#

the game has a hatching effect and some weird stuff on highlights

#

if I made a native mod, I'd offer those as additional sliders to tone those down

viscid mirage
lapis stratus
#

has anyone tried Split Fiction with RenoDX? If I'm not mistaken native HDR is capped

elfin lance
#

it will be super bloated

tardy bear
#

Wuthering Waves

#

R8G8B8A8_TYPELESS Outpu size

#

When performing frequent operations, it will crash

#

R8G8B8A8_TYPELESS OFF

spare bane
#

what reshade build are you using?

#

and the addon build from when?

tardy bear
#

Will not crash during frequent operations

#

DX11

#

Sorry, I didn't understand what you meant

spare bane
#

i can't debug old versions

#

so what version of reshade are you using and what version of renodx are you using?

tardy bear
#

Reshade 6.4.1

#

RenoDX

spare bane
#

um.. "RenoDX" is not version

tardy bear
#

There is no version, or I don't know the version of RenoDX

spare bane
#

what's the date that it says in the RenoDX UI at the bottom?

#

after Build:

tardy bear
#

RenoDX

spare bane
#

that's the addon UI

#

the RenoDX UI

spare bane
tardy bear
#

RenoDX?

spare bane
#

that... makes no sense

#

maybe the build numbers are broken?

#

regardless if you don't have "Prevent Fullscreen", it's an older build.

#

also, use this reshade version: #🧩renodx-dev message

tardy bear
#

R8G8B8A8_TYPELESS Outpu size

#

R8G8B8A8_TYPELESS Outpu size
Color Grading works well

#

OK

tired mulch
#

month set to august for some reason

spare bane
#

yeah, i'm looking at that

tired mulch
#

latest repo & reshade

#

Should prevent fullscreen be on?

spare bane
#

probably yeah, but can crash some games

#

i copy pasted some date stuff from the internet

#

90% of copy paste i have to end up rewriting

#

meh

#

i found it anyway

tardy bear
#

DX11 mode, working well
DX12 mode, RTX, The same configuration runs poorly
So I can only use DX11 mode

tired mulch
#

@spare bane is color grading strength 0 equivalent to just ignoring the game's LUT for the look and just using renoDRT on the untonemapped image?

spare bane
#

untonemapped still has some grading in linear

finite basalt
#

dang yall were busy cooking in here hard yesterday

spare bane
#

it's:

  • linear grading
  • untonemapped (here)
  • ACES rrt
  • UE SDR tonemap
  • SDR LUT (if it exists)
  • color lerps
  • custom gamma
#

the SDR tonemap may not be ACES-like (80/80/80), but you can usually replicate it, as long as you're willing to manually account for scene games and no LUTs

tired mulch
#

80 constrat 80 sat 80 blowout right

spare bane
#

it's the Bypass SDR Grading button

#

but yeah

#

that's roughly aces

tired mulch
#

hmm i dont see that bypass sdr grading button

#

#1321685184852135967 message

viscid mirage
#

its at the bottom, next to reset all

tired mulch
#

oh thanks i see it now

spare bane
#

new game drops usually are like that

#

(South of Midnight)

finite basalt
#

my two favorite software hacks

#

working together 🥹

tired mulch
#

looks like wuwa is still clamping doomer42

spare bane
#

new shaders i think

tired mulch
#

at least it doesn't seem to apply in menus
difference between sdr bypass and the game's grading is pretty huge tho

spare bane
#

i'm assuming the blownout one is vanilla

tired mulch
#

yeah the right one is vanilla

#

skin tones are a bit weird in the sdr bypass though

spare bane
#

yeah, probably mean to blowout

#

which is why there's no one shot solution

stoic latch
#

Forgot to mention I played through all of ender magnolia with the mod and it was perfect

viscid mirage
#

would probably better than just skipping the sdr grade entirely

cobalt marlin
#

😢 Latest snapshot, latest pinned reshade, latest SK.. Redout2 is more unstable than ever before, can't get past the main menu

spare bane
#

when did it last work?

cobalt marlin
#

Hmmm.. few days ago

#

With which builds tho... can't tell

spare bane
#

there's nightlies. is it from b8g8r8a8_typeless ?

cobalt marlin
#

No idea, I haven't retouched settings for a while

#

It used to only crash very rarely as warned about on the mods/wiki page

hearty anchor
#

you guys still using this reshade?

tired mulch
#

Use the pinned one

#

#🧩renodx-dev message

elfin lance
#

I'm surprised both of those games worked all the way through

#

enotria is a small game

#

so one sample shader might be fine

#

but ender magnolia has a bunch of different areas/biomes

cobalt marlin
#

I just played a good session without SK and it was all fine until a fatal error popup on exiting the game.

quiet jetty
#

Got it working for Terminator Resistance I get what they were going for that cinematic feel but damn that raised black level from the original gross

tired mulch
#

is FG still flickering for transformer dll for you guys

tired mulch
#

Nevermind solved it

unborn verge
#

FYI, Returnal (and few other games afaik) auto enables the native HDR if windows HDR is enabled
Would it be possible to add the option to the addon to block native HDR like SK has?

#

I also remember that hijacking the native HDR output was on the table at some point, dunno which option would be better

hearty anchor
#

DX12 still crashes for me

tight acorn
#

oy lads ping me when mod is gud stage so i can make vidya aboot it

spare bane
#

18:59:05:567 [11292] | DEBUG | [RenoDX] utils::resource::OnInitDevice(Hooking device: 284816512, api: opengl)
?

tired mulch
hearty anchor
tired mulch
nimble river
#

@spare bane should HDR be on in game for South of Midnight when using unrealengine renodx? I get a desaturated/grey image when I do that

earnest bolt
#

no

nimble river
marble stump
#

How did you do that when the game has no reshade settings for renodx? I've had the same issue from the start, like it's swapping between different presets, one of which is more red overall

grim kernel
marble stump
#

Yeah but with SoM in particular, the mod only works normally for me when ingame HDR is off

#

And then, I don't see the mod UI at all, don't even see it in the addon section even though it's working since there is HDR

spare bane
#

are you using SK?

marble stump
#

I am since earlier today, but it was behaving the same way prior to SK too

#

I'll try with the latest mod and without SK

spare bane
#

HDR should be off in all Unreal mods

marble stump
#

In-game HDR right? Should there still be a UI element for the reno addon?

#

In Midnight specifically

spare bane
#

HDR should be off in all Unreal mods

#

at least this renodx-unrealengine.addon64

#

Unreal HDR is fundamentally broken

marble stump
#

Got it, just not sure why I don't see the mod HUD for this game, even though I do see it for other UE games

spare bane
#

because that's an SK bug that was fixed in SK

tired mulch
#

Have you updated?

marble stump
#

all good now, I set it to lazy and it works. I had the issue with the mod UI not being visible in the game even before SK, so I didn't try to mess with the load order.

#

I just nuked everything and reinstalled rehsade+sk from scratch and it works, just gootta test if the red flashing/tonemapper switch thing is still happening

#

I tried changing any settings per Ersh's advice, but the same thing still happens, sadly. Does SoM need any upgrades in the UE mod settings?

spare bane
#

i haven't been able to replicate it

#

so hard to track why it happens

marble stump
#

I tried dumping lutbuilders when it's happening but I don't see a folder being created. Is the renodx folder supposed to appear next to the exe when the dumping option is enabled?

spare bane
#

i don't think it's related

#

it seems only UE related

marble stump
#

damn

#

no idea how to narrow it down further then :S

#

I could be completely wrong but switching between color spaces like US modern/JPN modern looks very similar if not the same to what I'm seeing

#

but only it's happening randomly and rapidly, usually when moving the camera and moving around

spare bane
#
struct ShaderInjectData {
  float toneMapType;
  float toneMapPeakNits;
  float toneMapGameNits;
  float toneMapUINits;

  float toneMapGammaCorrection;
  float toneMapHueShift;
  float toneMapHueCorrection;
  float toneMapHueProcessor;

  float toneMapPerChannel;
  float colorGradeExposure;
  float colorGradeHighlights;
  float colorGradeShadows;

  float colorGradeContrast;
  float colorGradeSaturation;
  float colorGradeHighlightSaturation;
  float colorGradeBlowout;

  float colorGradeFlare;
  float colorGradeColorSpace;
  float colorGradeRestorationMethod;
  float colorGradeStrength;

  float processingUseSCRGB;
};

these are the cbuffers in order

#

so if some of them are being reset to 0, could explain

#

i wonder if it's the proxy

#

hmm

quiet jetty
# earnest bolt looks a bit crushed though

Yeah trying to get it balanced it was set at shadows 40, contrast 65, and flare 50. Tried to fix the black raise with just using reno before falling back with liliums black floor fix

viscid mirage
#

wanted to add support for raincode, need hue shift and correction to be 0 by default since they cause issues. is this not the correct way to do that

const std::unordered_map<
    std::string,                             // Filename or ProductName
    std::unordered_map<std::string, float>>  // {Key, Value}
    GAME_DEFAULT_SETTINGS = {
        (...)
        {
            "RainCodePlus-Win64-Shipping.exe",
            {
                {"Upgrade_B8G8R8A8_TYPELESS", UPGRADE_TYPE_OUTPUT_RATIO},
                {"ToneMapHueShift", 0.f},
                {"ToneMapHueCorrection", 0.f},
            },
        },
#

the bgra8 upgrade gets correctly set as the default for the game

#

but it doesn't work for the other two settings, theres nothing in the log for those

hearty anchor
#

I just opened the game and it hung again

#

This is on lazy

spare bane
#

16:55:12:223 [ 5144] | WARN | [RenoDX] GetPeakNits(Not HDR)

Is HDR on?

hearty anchor
#

I have SpecialK temporarily enable HDR

#

No error this time 🤔

warped lynx
finite basalt
#

oh rain code is a great option

warped lynx
#

back before the renodx unreal mod existed

#

some stuff was still clamped

#

so adrian replaced some shaders and remove some saturates

earnest bolt
#

The actiony bits in south of midnight with the mid, they look quite dim, is the look just the intended effect? Feels like SDR

#

these sections

warped lynx
#

looks clamped

#

turn on the lut dump option

#

actually first see if the contrast slider does anything

earnest bolt
#

Contrast seem to do something but the whole image seems muted

#

Where do the luts get dumped

glossy valve
#

renodx folder besides game's exe

earnest bolt
#

Don’t have one

#

Loading via SK

#

Or do they dump on exit?

glossy valve
#

They dump immediately if it's a new lutbuilder

#

Nothing getting dumped means lutbuilder is already included

elfin lance
#

or its a compute shader (dx11 CS might dump, not 100% sure)

earnest bolt
#

Can’t see anything

glossy valve
earnest bolt
glossy valve
#

Ah brain isn't working but it's probably clamped by something

earnest bolt
#

Well I see no dumped anything with the option turned on

#

Dno if a SK + reshade thing

glossy valve
#

If your game is the steam version then you can share the save data

earnest bolt
#

Nah it’s game pass

glossy valve
#

Does it clamp early on in the game?

earnest bolt
#

No just during these fighting sections

#

They are a bit later on in the game

#

Lots in chapter 5

glossy valve
#

Ah I'll play it soon so will fix it then

earnest bolt
#

You go into like a circular ring thing and fight enemies basically

earnest bolt
#

They also seem to be clamped in these running towards a tree sections

earnest bolt
#

chapter 6 seems clamped

glossy valve
neat pulsar
#

how are we getting reshade into games from game pass like South of Midnight? I'm getting a permission warning. Is it just how mine is set up or am I not going through the reshade installer?

glossy valve
#

If you're using reshade installer choose gamelaunchhelper.exe instead of the game's actual exe

neat pulsar
#

Awesome; thanks! I can use the hdr analysis tool now; haven't used the UE mod before now though, so I need to get that set up

#

question: is all I have to do with reshade-addon version is drop the renodx-unrealengine.addon64 in the content folder? I'm getting an error message

#

05:00:31:247 [30276] | INFO | Loading add-on from 'C:\Program Files\WindowsApps\Microsoft.XGSMidnight_1.1.2.0_x64__8wekyb3d8bbwe.\renodx-unrealengine.addon64' ...
05:00:31:248 [30276] | ERROR | Failed to load add-on from 'C:\Program Files\WindowsApps\Microsoft.XGSMidnight_1.1.2.0_x64__8wekyb3d8bbwe.\renodx-unrealengine.addon64' with error code 126!

#

hold up; working through the pin comment

#

on the last part checking the settings now, as I'm still getting an error message

earnest bolt
#

WindowsApps is a protected location

#

You should change the installation so it’s not that folder

neat pulsar
#

hmm, wonder why it's loading from there when I pointed to the D drive

earnest bolt
#

Put the addon in Content

neat pulsar
#

see in my second photo, the addon is sitting beside the southofmidnight exe on the D drive where I keep the game, but reshade seems to be pointing to the protected folder on the C drive

#

maybe I'll just uninstall reshade and start over

glossy valve
#

Install reshade in any other game then copy dxgi.dll & renodx-unrealengine to South Of Midnight\Content\Midnight\Binaries\WinGDK

neat pulsar
#

So I did that and copied the files over. When I open the game without the dxgi.dll it loads with an error. When I add that in, the game crashes. Everything is on the D drive. The log shows this:

#

05:52:03:029 [30796] | INFO | Initializing crosire's ReShade version '6.4.0.1955' (64-bit) loaded from 'C:\Program Files\WindowsApps\Microsoft.XGSMidnight_1.1.2.0_x64__8wekyb3d8bbwe\Midnight\Binaries\WinGDK\dxgi.dll' into 'C:\Program Files\WindowsApps\Microsoft.XGSMidnight_1.1.2.0_x64__8wekyb3d8bbwe\Midnight\Binaries\WinGDK\SouthOfMidnight.exe' (0x5AA16DA7) ...
05:52:03:031 [30796] | WARN | Another ReShade instance was already loaded from 'C:\Program Files\WindowsApps\Microsoft.XGSMidnight_1.1.2.0_x64__8wekyb3d8bbwe\dxgi.dll'! Aborting initialization ...
05:52:03:033 [30796] | INFO | Exiting ...
05:52:03:035 [30796] | INFO | Uninstalling 0 hook(s) ...
05:52:03:036 [30796] | INFO | Finished exiting.

earnest bolt
#

I would uninstall the game tbh

#

And then reinstall to a new location

#

old reshade, update that too

earnest bolt
grim forge
#

Has anyone tried Darksiders 3 with Renodx? Really curious if it works well in that game!

fallow mica
#

just try it yourself

#

its UE

unborn verge
#

RenoUE is crashing the Metal Eden demo (UE 5.3.1), not using anything else, all overlays disabled (except for steam), using the latest RenoUE and Reshade #🧩renodx-dev message
Reshade log

hearty anchor
elfin lance
#

and I'll try to fix those lutbuilders

fallow mica
#

thanks

elfin lance
#

if the game fires up native hdr every launch

#

you'll have to use SK

#

to hide hdr capabilities

fallow mica
#

@unborn verge tesed it i remember

unborn verge
#

Yeah

elfin lance
#

0x86F9308B

0xD5D3DF19

unborn verge
#

The only workaround is to disable windows HDR before starting the game

elfin lance
#

the second lutbuilder is weird

#

everything is optimized really weird in bools and shit

fallow mica
#

im pretty sure its kinda custom

#

since its a sony game

elfin lance
#

yea 0xd5d is like some weird shit

#

idk how to fix it

#

I can only fix one of them

#

0x86F9308B

fallow mica
#

so we need shortfuse then

elfin lance
#

I can give you an addon with only 1 fixed lutbuilder for fun

fallow mica
#

btw native hdr also kinda wired

elfin lance
elfin lance
#

like horizon1 and gow2018

#

where they expected the tv to display map

fallow mica
#

this is with 10k profile

elfin lance
#

oh

fallow mica
#

hightlights look wired

#

like every highlight is at peak brightness

elfin lance
#

it was dumped by the UE addon

#

but it seems to be missing most of the lutbuilder

fallow mica
#

im still at the first level though

elfin lance
fallow mica
#

dont know if it will break later

elfin lance
#

it might not work in another region

#

since it dumped 2 lutbuilders

spare bane
#

looks hella custom

elfin lance
#

but one of them might've been the main menu

#

ima commit the fixed lutbuilder for now

#

just for the collection

fallow mica
#

i expect it to be custom

spare bane
#

srgb to linear and then 1.5x exposure for aces hdr

neat pulsar
#

Thanks

spare bane
#

sdr is a custom colorspace adjustment and gamma encode 2.0

elfin lance
#

I wonder if that was the native hdr lutbuilder

#

and the one I fixed was the sdr lutbuilder

spare bane
#

it has both

#

has outputs 3/4/5/6 and 11

spare bane
#

doesn't seem to be any 1000/2000 difference

elfin lance
#

and scale to peak

spare bane
#

not here

unborn verge
#

It looks like it streaches tbh

spare bane
#

clip to peak

#

there's no peak nits here

#

just one cbuffer that is the output type: 3,4,5,6,11

fallow mica
spare bane
#

cb[11].z for colorspace and cb[11].y for output type

#

@elfin lance you need to output cb[11].y and see what you get

fallow mica
#

highlights look super bright in native hdr

spare bane
#

if it uses cb[11].y == 11 we need to account for that

unborn verge
elfin lance
#

2.0 should be brighter

fallow mica
#

SDR is way darker at default setting

#

like contrast 0 in sdr = contrast 50 in hdr

unborn verge
spare bane
#

@elfin lance what's the shader i'm looking at if the PR is different

elfin lance
#

one of them was a standard unreal lutbuilder

elfin lance
fallow mica
#

yeah

elfin lance
#

figured I'd throw it in the lutbuilder collection

fallow mica
#

but im at first level

elfin lance
#

and the second lutbuilder is this custom shit

fallow mica
#

literally the start of the game

elfin lance
#

and the cursed one you're looking at is idk from where; but it came from returnal too

spare bane
#

might be old code to show how cursed sony is

elfin lance
#

maybe; but for now that one lutbuilder seems to work just fine

#

if he keeps playing we'll see what happens

#

my guess is the regular lutbuilder spawns for sdr -- which is what we want

#

and the lutbuilder that clamps (custom lutbuilder) is for native hdr -- even though it has the cbuffers for all the paths

#

or unused

#

@fallow mica if you move the UI nits slider in returnal

#

with my addon

#

does it only scale the UI?

fallow mica
#

let me try it

elfin lance
#

if it scales stuff thats not just the UI

#

that means there are custom shaders

fallow mica
#

yeah it only scales the UI

elfin lance
#

everything works correctly then

#

enjoy

#

let me know if later areas have differnet lutbuilders

#

hopefully whatever the cursed builder was is unused Cursed

fallow mica
#

the game is really hard though

#

i doubt i will finish it

elfin lance
fallow mica
#

someone in my steam family bought it

elfin lance
#

I'm surprised the game is shader model 5

#

ngl

fallow mica
#

yeah

#

it has raytracing even

elfin lance
#

yea ik

#

did you have to do any tweaks

#

to get around it forcing native hdr?

#

or the mod just works?

fallow mica
#

need this

elfin lance
#

I mean you said the game forces native hdr on

fallow mica
#

yeah

#

it looks broken

#

need to turn it off everytime

#

let me show you how in game hdr on with reno looks like

elfin lance
#

the cursed lutbuilder is probably the native hdr lutbuilder then

fallow mica
#

yeah

#

i play with your modified addon and it only dump that cursed one

elfin lance
#

apparently I own returnal

#

lets see when the cursed builder spawns

fallow mica
#

looks like this

#

red artifacts on the ground

elfin lance
#

yea because the unreal mod isnt made to be played with games that are native hdr

#

the game is probably doing a bunch of stuff

fallow mica
#

i remember one game will crash if you do that

elfin lance
#

but we're not handling it

#

hopefully returnal doesnt install the ass epic overlay

fallow mica
#

i never buy games on egs

elfin lance
#

Edit launcher.ini, set NoOperation to 1. Save. Uninstall it if it got uninstalled.```
#

I dont even have an EGS acc

#

but some steam games install the EOS overlay

elfin lance
#

it does

#

but you can remove it

#

@spare bane I downloaded the game, the cursed lutbuilder doesnt draw at all (both sdr and hdr) -- probably grabbed from shader precompilation or somewhere idk

#

only the shader I made a pull request for gets drawn

spare bane
#

any other shaders needed or i just merge the pr?

elfin lance
#

the game is very pretty

(Returnal, RenoDX UE HDR)

spare bane
#

what if you disable color grading?

elfin lance
spare bane
#

btw, i realized i should have upgradetonemap invert the loss in saturation from hdrcolor / neutralsdr

elfin lance
midnight needle
#

Does this mod for AMD GPU or only Nvidia?

elfin lance
#

should be universal

spare bane
#

dx11 is universal. dx12 might have issues, but not completely sure

elfin lance
#

thats right; dx12 upgrade memes

midnight needle
#

Asking cuz on GitHub it says about upgrading something for some games

spare bane
#

it's a DLSS-FG thing

midnight needle
#

Ok, thx

spare bane
#

Unreal makes a proxy texture for DLSS-FG regardless if the game will use it.

#

that proxy has to be upgraded

warped lynx
#

using this in a native hdr game

spare bane
elfin lance
fallow mica
#

i use the ue addon in a lot of native hdr games

spare bane
#

you need the 80/80/80 for aces match

elfin lance
#

I was talking more about the scene

fallow mica
#

ue hdr = garbage most of the time

midnight needle
#

I know it's wrong channel but is it somethj g like that possible for GTA v or Witcher 3?

elfin lance
spare bane
#

csb

#

it's the button

#

bypass sdr grade

elfin lance
#

oh thats what bypass sdr grade does

#

808080, grading str 100

#

here is bypass sdr grade

#

the blue flowers dont "look right"

midnight needle
fallow mica
#

returnal has insane amount of gamut expansion in native hdr

warped lynx
#

isn't that just aces

elfin lance
#

808080 grading str 100

[Returnal, RenoDX Unreal Engine HDR]

#

grading bypass

#

vanilla

#

man we really need "hide hdr support from game"

#

SK doesnt work with the game

#

and turning off native hdr every launch is ass

spare bane
#

there's so many ways to detect hdr, unfortunately, and we're talking about blocking Windows functions

elfin lance
unborn verge
#

Would lut builders be cached in the shader precomp?

spare bane
#

ue doesn't use the directx cache afaik

#

custom

#

if it uses directx, renodx would pick it up, regardless of cache state

elfin lance
#

like

#

C:\Users\desktop\AppData\Local\Enotria\Saved\Enotria_PCD3D_SM6.upipelinecache

spare bane
#

i wish there was a way to disable UE's custom thing and use microsoft's

elfin lance
#

even if you update your drivers

#

it doesnt re-compile shaders

#

delete the file, doesnt recompile

#

(Enotria the last Song -- pizza souls)

#

the only time I've seen it recompile

#

is when the game itself updated

#

they're probably setting a flag somewhere in a conf/ini file

#

"shadersCompiled=1"

#

and as long as its 1, it wont recompile

#

peak pepega setup Pepega

#

I asked Kal in the patreons section if he can add

#

hide HDR Capabilities to Skinny as an option

#

I wonder if the custom lutbuilder is a leftover -- even though its not ran; it still gets precompiled

viscid mirage
#

tried it in sekiro to get HDR + the DLSS mod working

#

but couldn't

elfin lance
#

rip

viscid mirage
#

@spare bane for the thaumaturge lutbuilder I added with the PR I actually had to use an old decomp, the newest version spits out an "unexpected goto" error

#

I also still can't figure out why the dialogue scenes are clamped :/

#

do you still have the game

spare bane
#

use -use-do-while

#

or whatever the flag is

viscid mirage
#

ah thx

elfin lance
viscid mirage
#

the game is really crash prone

elfin lance
viscid mirage
#

with the devkit

spare bane
viscid mirage
#

same

unborn verge
#

@elfin lance Low health effect breaks HDR in Returnal, doesn't seem to produce new LUT file
Maybe that's what the other LUT file is for?
Anything can be done about it?

elfin lance
#

does it change anything?

#

if it changes something, that means its using the same lutbuilder

#

and it might either be an upgrade issue or

#

low health draws another shader after the lutbuilder

#

ima do some chores around the house and check it out

unborn verge
#

good 'ol B8G8R8A8_TYPELESS does the trick

elfin lance
#

so low health looks right with bgra8 typeless?

unborn verge
#

yeah

elfin lance
#

moving the color grading sliders like contrast up and down

#

is an easy way to check if its missing a shader or resource upgrades/custom stuff

#

if the lutbuilder is missing, the contrast slider would do nothing

elfin lance
unborn verge
#

BTW I couldn't get to the third biome, but the first two work, so I assume others will work too

elfin lance
spare bane
#

just casually updated 53 shaders pepe_hide

spare bane
#

south of midnight is just straight up blownout

#

it's custom sdr blowout

#

hmm

#

hdr just has no sdr grading

#
r7.xyz = cb0[42].yzw * r1.xyz;
r1.xyz = -r1.xyz * cb0[42].yzw + cb0[43].xyz;
r1.xyz = cb0[43].www * r1.xyz + r7.xyz;
r1.xyz = max(r1.xyz, r0.xyz);
r1.xyz = log2(r1.xyz);
r1.xyz = cb0[27].yyy * r1.xyz;
r1.xyz = exp2(r1.xyz);
r7.xy = cmp(asint(cb0[66].zz) == int2(3, 5));
r0.w = (int)r7.y | (int)r7.x;
if (r0.w != 0) {
  r7.xyz = float3(1.5, 1.5, 1.5) * r1.xyz;

unreal does this in HDR, which is apply some of the SDR effects when in BT709, and then does ACES 1000

#

where as sdr does aces rrt, custom tonemap and then those sdr effects

#

the max(r1.xyz, r0.xyz) is weird though

#

wait... that's...

#

none of this makes sense

#

ue seems more broken now than before

elfin lance
#

does it matter if the decompilation is broken after we run applyusertonemap?

#

probably not

#

I guess vanilla would be broken

elfin lance
spare bane
#

r1.xyz is what we have for untonemapped_ap1 but in bt709

#

so they do some of the final gamma adjustments and stuff in bt709, like SDR does

#

but it doesn't have the UE tonemapper

#

it's there that south of midnight goes to hell

elfin lance
#

could it be vignette memes -- the no vignette cvar is tonemappingparam.3 or something

#

I think the description is "filmic no vignette"

spare bane
#
// Pre desaturate
WorkingColor = lerp( dot( WorkingColor, AP1_RGB2Y ), WorkingColor, 0.96 );

const half ToeScale      = 1 + FilmBlackClip - FilmToe;
const half ShoulderScale  = 1 + FilmWhiteClip - FilmShoulder;

const float InMatch = 0.18;
const float OutMatch = 0.18;

float ToeMatch;
if( FilmToe > 0.8 )
{
  // 0.18 will be on straight segment
  ToeMatch = ( 1 - FilmToe  - OutMatch ) / FilmSlope + log10( InMatch );
}
else
{
  // 0.18 will be on toe segment

  // Solve for ToeMatch such that input of InMatch gives output of OutMatch.
  const float bt = ( OutMatch + FilmBlackClip ) / ToeScale - 1;
  ToeMatch = log10( InMatch ) - 0.5 * log( (1+bt)/(1-bt) ) * (ToeScale / FilmSlope);
}

float StraightMatch = ( 1 - FilmToe ) / FilmSlope - ToeMatch;
float ShoulderMatch = FilmShoulder / FilmSlope - StraightMatch;

half3 LogColor = log10( WorkingColor );
half3 StraightColor = FilmSlope * ( LogColor + StraightMatch );

half3 ToeColor    = (    -FilmBlackClip ) + (2 *      ToeScale) / ( 1 + exp( (-2 * FilmSlope /      ToeScale) * ( LogColor -      ToeMatch ) ) );
half3 ShoulderColor  = ( 1 + FilmWhiteClip ) - (2 * ShoulderScale) / ( 1 + exp( ( 2 * FilmSlope / ShoulderScale) * ( LogColor - ShoulderMatch ) ) );

ToeColor    = select(LogColor <      ToeMatch,      ToeColor, StraightColor);
ShoulderColor  = select(LogColor > ShoulderMatch, ShoulderColor, StraightColor);

half3 t = saturate( ( LogColor - ToeMatch ) / ( ShoulderMatch - ToeMatch ) );
t = ShoulderMatch < ToeMatch ? 1 - t : t;
t = (3-2*t)*t*t;
half3 ToneColor = lerp( ToeColor, ShoulderColor, t );

// Post desaturate
ToneColor = lerp( dot( float3(ToneColor), AP1_RGB2Y ), ToneColor, 0.93 );
#

that's UE tonemap

elfin lance
#

thats right we have the source lmao

spare bane
#

desaturate once to 96% saturation, tonemap to sdr, desaturate again to 93%

elfin lance
#

why?

#

peak memes

spare bane
#

don't ask yourself that

#

you know why

#

"it looks better!"

#

hardcoded nonsense

#

i need to show much is lost

elfin lance
#

I didnt know you could desaturate with just color = lerp(y(color), color, x)

spare bane
#

that's the grayscale way

#

where y of a color is grayscale

elfin lance
#

I think I get it

spare bane
#

jesus, the sun is yellow because clipping