summaryrefslogtreecommitdiffstats
path: root/src/com/android/magicsmoke/clouds.rs
diff options
context:
space:
mode:
authorMarco Nelissen <marcone@google.com>2011-01-19 09:19:39 -0800
committerMarco Nelissen <marcone@google.com>2011-01-19 09:19:39 -0800
commit8d57c78704797dff5df2df2b10a08dec885fe489 (patch)
tree94e0fddf7b0973ce2cbcbb76962f362ae8bc900c /src/com/android/magicsmoke/clouds.rs
parentf50de7e2660498d0c606597982639090ac1a8235 (diff)
downloadandroid_packages_wallpapers_MagicSmoke-8d57c78704797dff5df2df2b10a08dec885fe489.tar.gz
android_packages_wallpapers_MagicSmoke-8d57c78704797dff5df2df2b10a08dec885fe489.tar.bz2
android_packages_wallpapers_MagicSmoke-8d57c78704797dff5df2df2b10a08dec885fe489.zip
Fix horizontal and vertical panning.
Change-Id: I5177f3f3424233371136bdcbf358ce7056ea055d
Diffstat (limited to 'src/com/android/magicsmoke/clouds.rs')
-rw-r--r--src/com/android/magicsmoke/clouds.rs15
1 files changed, 10 insertions, 5 deletions
diff --git a/src/com/android/magicsmoke/clouds.rs b/src/com/android/magicsmoke/clouds.rs
index cc81e57..b0d55bf 100644
--- a/src/com/android/magicsmoke/clouds.rs
+++ b/src/com/android/magicsmoke/clouds.rs
@@ -31,6 +31,7 @@
// State set from java
float gXOffset;
+float gYOffset;
int gPreset;
int gTextureMask;
int gRotate;
@@ -48,6 +49,7 @@ typedef struct VertexShaderConstants_s {
float4 layer2;
float4 layer3;
float4 layer4;
+ float2 panoffset;
} VertexShaderConstants;
VertexShaderConstants *gVSConstants;
@@ -136,11 +138,11 @@ static void update()
rotate(gVSConstants->layer3, rotation[3]);
rotate(gVSConstants->layer4, rotation[4]);
- gVSConstants->layer0.w = -gXOffset * 0 + xshift[0];
- gVSConstants->layer1.w = -gXOffset * 8 + xshift[1];
- gVSConstants->layer2.w = -gXOffset * 16 + xshift[2];
- gVSConstants->layer3.w = -gXOffset * 24 + xshift[3];
- gVSConstants->layer4.w = -gXOffset * 32 + xshift[4];
+ gVSConstants->layer0.w = xshift[0];
+ gVSConstants->layer1.w = xshift[1];
+ gVSConstants->layer2.w = xshift[2];
+ gVSConstants->layer3.w = xshift[3];
+ gVSConstants->layer4.w = xshift[4];
float m = 0.35f;
gVSConstants->layer0.z = m * scale[0];
@@ -149,6 +151,9 @@ static void update()
gVSConstants->layer3.z = m * scale[3];
gVSConstants->layer4.z = m * scale[4];
+ gVSConstants->panoffset.x = gXOffset;
+ gVSConstants->panoffset.y = -gYOffset;
+
gFSConstants->clearColor = clearColor;
int pos = 0;