mirror of
https://github.com/HifiExperiments/overte.git
synced 2025-04-14 23:36:03 +02:00
Lightclusters no unpack position from zdb
This commit is contained in:
parent
6f7a1eaefa
commit
02cf15d115
3 changed files with 10 additions and 4 deletions
|
@ -118,7 +118,7 @@ DeferredFragment unpackDeferredFragmentNoPositionNoAmbient(vec2 texcoord) {
|
|||
<@include DeferredTransform.slh@>
|
||||
<$declareDeferredFrameTransform()$>
|
||||
|
||||
vec4 unpackDeferredPosition(DeferredFrameTransform deferredTransform, float depthValue, vec2 texcoord) {
|
||||
vec4 unpackDeferredPosition(float depthValue, vec2 texcoord) {
|
||||
int side = 0;
|
||||
if (isStereo()) {
|
||||
if (texcoord.x > 0.5) {
|
||||
|
@ -131,6 +131,12 @@ vec4 unpackDeferredPosition(DeferredFrameTransform deferredTransform, float dept
|
|||
return vec4(evalEyePositionFromZdb(side, depthValue, texcoord), 1.0);
|
||||
}
|
||||
|
||||
// This method to unpack position is fastesst
|
||||
vec4 unpackDeferredPositionFromZdb(vec2 texcoord) {
|
||||
float Zdb = texture(depthMap, texcoord).x;
|
||||
return unpackDeferredPosition(Zdb, texcoord);
|
||||
}
|
||||
|
||||
vec4 unpackDeferredPositionFromZeye(vec2 texcoord) {
|
||||
float Zeye = -texture(linearZeyeMap, texcoord).x;
|
||||
int side = 0;
|
||||
|
@ -151,7 +157,7 @@ DeferredFragment unpackDeferredFragment(DeferredFrameTransform deferredTransform
|
|||
DeferredFragment frag = unpackDeferredFragmentNoPosition(texcoord);
|
||||
|
||||
frag.depthVal = depthValue;
|
||||
frag.position = unpackDeferredPosition(deferredTransform, frag.depthVal, texcoord);
|
||||
frag.position = unpackDeferredPosition(frag.depthVal, texcoord);
|
||||
|
||||
return frag;
|
||||
}
|
||||
|
|
|
@ -32,7 +32,7 @@ void main(void) {
|
|||
// Grab the fragment data from the uv
|
||||
vec2 texCoord = varTexCoord0.st;
|
||||
|
||||
vec4 fragEyePos = unpackDeferredPositionFromZeye(texCoord);
|
||||
vec4 fragEyePos = unpackDeferredPositionFromZdb(texCoord);
|
||||
vec4 fragWorldPos = getViewInverse() * fragEyePos;
|
||||
|
||||
// From frag world pos find the cluster
|
||||
|
|
|
@ -29,7 +29,7 @@ void main(void) {
|
|||
// Grab the fragment data from the uv
|
||||
vec2 texCoord = varTexCoord0.st;
|
||||
|
||||
vec4 fragEyePos = unpackDeferredPositionFromZeye(texCoord);
|
||||
vec4 fragEyePos = unpackDeferredPositionFromZdb(texCoord);
|
||||
vec4 fragWorldPos = getViewInverse() * fragEyePos;
|
||||
|
||||
// From frag world pos find the cluster
|
||||
|
|
Loading…
Reference in a new issue