Maybe you can look in this part of the code
You might want to check the file FogOfWarWorker.cpp
There is a part of the code that checks with a line trace if there is a hit found, the command needs a starting and a ending point, in the code they are: position and currentWorldSpacePos
if (!Manager->GetWorld()->LineTraceTestByChannel(position, currentWorldSpacePos, ECC_WorldStatic, queryParams)) {
More on this command here
if you look some lines above this command, the code is inside a nested loop, which i assume is the responsible for iterating around the surrounding texels/positions of the character.
this nested loop iterates in X and Y but the Z component is not changed.
FVector currentWorldSpacePos = FVector(((x - (int)halfTextureSize)) * dividend, ((y - (int)halfTextureSize)) * dividend, position.Z);//<---see the position.Z, this part is not changed inside the loop
in fact the position.Z comes from a call outside the loop some lines above
FVector position = (*Itr)->GetActorLocation();
Playing with this Z value (adding some vector or scalar) to make the line traces above the Actor Location could give you the a change in height of sight.
I hope this can be of help, is not a solution but a starting point.