diff --git a/samplecode/SampleApp.cpp b/samplecode/SampleApp.cpp
index 2d0da1f..8fcdfa8 100644
--- a/samplecode/SampleApp.cpp
+++ b/samplecode/SampleApp.cpp
@@ -6,6 +6,7 @@
 #include "SkPaint.h"
 #include "SkPicture.h"
 #include "SkStream.h"
+#include "SkTime.h"
 #include "SkWindow.h"
 
 #include "SampleCode.h"
@@ -121,6 +122,18 @@
     evt->setScalars(gPrefSizeEvtName, 2, size);
 }
 
+static SkMSec gAnimTime;
+SkMSec SampleCode::GetAnimTime() { return gAnimTime; }
+
+SkScalar SampleCode::GetAnimScalar(SkScalar speed, SkScalar period) {
+    SkScalar seconds = SkFloatToScalar(gAnimTime / 1000.0f);
+    SkScalar value = SkScalarMul(speed, seconds);
+    if (period) {
+        value = SkScalarMod(value, period);
+    }
+    return value;
+}
+
 //////////////////////////////////////////////////////////////////////////////
 
 class SampleWindow : public SkOSWindow {
@@ -241,10 +254,13 @@
     delete fGLCanvas;
 }
 
-#define XCLIP_N  4
-#define YCLIP_N  1
+#define XCLIP_N  8
+#define YCLIP_N  8
 
 void SampleWindow::draw(SkCanvas* canvas) {
+    // update the animation time
+    gAnimTime = SkTime::GetMSecs();
+
     if (fNClip) {
      //   this->INHERITED::draw(canvas);
      //   SkBitmap orig = capture_bitmap(canvas);
