diff options
author | Sven Gothel <[email protected]> | 2015-03-21 23:01:12 +0100 |
---|---|---|
committer | Sven Gothel <[email protected]> | 2015-03-21 23:01:12 +0100 |
commit | 0c5c4be020c2d55540058a49b2a879f46d5a1e13 (patch) | |
tree | 00f84c2ca18cc233b826014094b9cad0769a3ea5 /LibOVR/Src/CAPI/Shaders/DistortionTimewarp_vs.vsh | |
parent | cbbd775b6c754927632c333ff01424a0d2048c7c (diff) | |
parent | e490c3c7f7bb5461cfa78a214827aa534fb43a3e (diff) |
Merge branch 'vanilla_0.4.4' and resolve conflicts
TODO: Validate for removed patches due to relocation
Resolved Conflicts:
LibOVR/Src/Kernel/OVR_ThreadsWinAPI.cpp
LibOVR/Src/OVR_Linux_HMDDevice.cpp
LibOVR/Src/OVR_OSX_HMDDevice.cpp
LibOVR/Src/OVR_Profile.cpp
LibOVR/Src/OVR_Sensor2Impl.cpp
LibOVR/Src/OVR_SensorFusion.cpp
LibOVR/Src/OVR_SensorImpl.cpp
LibOVR/Src/OVR_Win32_DeviceStatus.cpp
LibOVR/Src/OVR_Win32_HIDDevice.cpp
LibOVR/Src/OVR_Win32_HIDDevice.h
LibOVR/Src/OVR_Win32_HMDDevice.cpp
Diffstat (limited to 'LibOVR/Src/CAPI/Shaders/DistortionTimewarp_vs.vsh')
-rw-r--r-- | LibOVR/Src/CAPI/Shaders/DistortionTimewarp_vs.vsh | 36 |
1 files changed, 0 insertions, 36 deletions
diff --git a/LibOVR/Src/CAPI/Shaders/DistortionTimewarp_vs.vsh b/LibOVR/Src/CAPI/Shaders/DistortionTimewarp_vs.vsh deleted file mode 100644 index cf41ec0..0000000 --- a/LibOVR/Src/CAPI/Shaders/DistortionTimewarp_vs.vsh +++ /dev/null @@ -1,36 +0,0 @@ -float2 EyeToSourceUVScale;
-float2 EyeToSourceUVOffset;
-float4x4 EyeRotationStart;
-float4x4 EyeRotationEnd;
-
-float2 TimewarpTexCoordToWarpedPos(float2 inTexCoord, float4x4 rotMat)
-{
- // Vertex inputs are in TanEyeAngle space for the R,G,B channels (i.e. after chromatic aberration and distortion).
- // These are now "real world" vectors in direction (x,y,1) relative to the eye of the HMD.
- // Apply the 3x3 timewarp rotation to these vectors.
- float3 transformed = float3( mul ( rotMat, float4(inTexCoord,1,1) ).xyz);
- // Project them back onto the Z=1 plane of the rendered images.
- float2 flattened = transformed.xy / transformed.z;
- // Scale them into ([0,0.5],[0,1]) or ([0.5,0],[0,1]) UV lookup space (depending on eye)
- return flattened * EyeToSourceUVScale + EyeToSourceUVOffset;
-
-}
-
-void main(in float2 Position : POSITION, in float4 Color : COLOR0, in float2 TexCoord0 : TEXCOORD0,
- out float4 oPosition : SV_Position, out float4 oColor : COLOR, out float3 oTexCoord0 : TEXCOORD0)
-{
-
- oPosition.x = Position.x;
- oPosition.y = Position.y;
- oPosition.z = 0.5;
- oPosition.w = 1.0;
-
- float timewarpLerpFactor = Color.a;
- float4x4 lerpedEyeRot = lerp(EyeRotationStart, EyeRotationEnd, timewarpLerpFactor);
-
- // Warped positions are a bit more involved, hence a separate function
- oTexCoord0 = float3(TimewarpTexCoordToWarpedPos(TexCoord0, lerpedEyeRot), 1);
- oColor = Color.r; // Used for vignette fade.
-}
-
-
|