summaryrefslogtreecommitdiffstats
path: root/libs/rs/java/Samples/src/com/android/samples/RsRenderStatesRS.java
diff options
context:
space:
mode:
authorAlex Sakhartchouk <alexst@google.com>2010-09-30 11:36:37 -0700
committerAlex Sakhartchouk <alexst@google.com>2010-09-30 11:36:37 -0700
commitf5b3510c706ed1f7611760dff0c94f2111531c68 (patch)
tree05d2f7976a7ec1000a5ad0ee035151704da8a49c /libs/rs/java/Samples/src/com/android/samples/RsRenderStatesRS.java
parente224fabb2c59e9f1274c3569c04b91787824add0 (diff)
downloadframeworks_base-f5b3510c706ed1f7611760dff0c94f2111531c68.zip
frameworks_base-f5b3510c706ed1f7611760dff0c94f2111531c68.tar.gz
frameworks_base-f5b3510c706ed1f7611760dff0c94f2111531c68.tar.bz2
Adding anisotropic filtering and related samples.
Change-Id: Idb173274417feb5e25bfd64c5e9fa2492a23a17e
Diffstat (limited to 'libs/rs/java/Samples/src/com/android/samples/RsRenderStatesRS.java')
-rw-r--r--libs/rs/java/Samples/src/com/android/samples/RsRenderStatesRS.java27
1 files changed, 24 insertions, 3 deletions
diff --git a/libs/rs/java/Samples/src/com/android/samples/RsRenderStatesRS.java b/libs/rs/java/Samples/src/com/android/samples/RsRenderStatesRS.java
index d4e83d3..a15c4a1 100644
--- a/libs/rs/java/Samples/src/com/android/samples/RsRenderStatesRS.java
+++ b/libs/rs/java/Samples/src/com/android/samples/RsRenderStatesRS.java
@@ -19,11 +19,12 @@ package com.android.samples;
import java.io.Writer;
import android.content.res.Resources;
+import android.graphics.Bitmap;
+import android.graphics.BitmapFactory;
import android.renderscript.*;
import android.renderscript.ProgramStore.DepthFunc;
+import android.renderscript.Sampler.Value;
import android.util.Log;
-import android.graphics.BitmapFactory;
-import android.graphics.Bitmap;
public class RsRenderStatesRS {
@@ -42,7 +43,7 @@ public class RsRenderStatesRS {
mOptionsARGB.inScaled = false;
mOptionsARGB.inPreferredConfig = Bitmap.Config.ARGB_8888;
mMode = 0;
- mMaxModes = 8;
+ mMaxModes = 9;
initRS();
}
@@ -53,6 +54,8 @@ public class RsRenderStatesRS {
private Sampler mLinearWrap;
private Sampler mMipLinearWrap;
private Sampler mNearestClamp;
+ private Sampler mMipLinearAniso8;
+ private Sampler mMipLinearAniso15;
private ProgramStore mProgStoreBlendNoneDepth;
private ProgramStore mProgStoreBlendNone;
@@ -74,10 +77,12 @@ public class RsRenderStatesRS {
private ProgramRaster mCullBack;
private ProgramRaster mCullFront;
+ private ProgramRaster mCullNone;
private Allocation mTexTorus;
private Allocation mTexOpaque;
private Allocation mTexTransparent;
+ private Allocation mTexChecker;
private Allocation mAllocPV;
@@ -243,10 +248,12 @@ public class RsRenderStatesRS {
mTexTorus = loadTextureRGB(R.drawable.torusmap);
mTexOpaque = loadTextureRGB(R.drawable.data);
mTexTransparent = loadTextureARGB(R.drawable.leaf);
+ mTexChecker = loadTextureRGB(R.drawable.checker);
mScript.set_gTexTorus(mTexTorus);
mScript.set_gTexOpaque(mTexOpaque);
mScript.set_gTexTransparent(mTexTransparent);
+ mScript.set_gTexChecker(mTexChecker);
}
private void initFonts() {
@@ -295,18 +302,32 @@ public class RsRenderStatesRS {
mNearestClamp = Sampler.CLAMP_NEAREST(mRS);
mMipLinearWrap = Sampler.WRAP_LINEAR_MIP_LINEAR(mRS);
+ bs = new Sampler.Builder(mRS);
+ bs.setMin(Sampler.Value.LINEAR_MIP_LINEAR);
+ bs.setMag(Sampler.Value.LINEAR);
+ bs.setWrapS(Sampler.Value.WRAP);
+ bs.setWrapT(Sampler.Value.WRAP);
+ bs.setAnisotropy(8.0f);
+ mMipLinearAniso8 = bs.create();
+ bs.setAnisotropy(15.0f);
+ mMipLinearAniso15 = bs.create();
+
mScript.set_gLinearClamp(mLinearClamp);
mScript.set_gLinearWrap(mLinearWrap);
mScript.set_gMipLinearWrap(mMipLinearWrap);
+ mScript.set_gMipLinearAniso8(mMipLinearAniso8);
+ mScript.set_gMipLinearAniso15(mMipLinearAniso15);
mScript.set_gNearestClamp(mNearestClamp);
}
private void initProgramRaster() {
mCullBack = ProgramRaster.CULL_BACK(mRS);
mCullFront = ProgramRaster.CULL_FRONT(mRS);
+ mCullNone = ProgramRaster.CULL_NONE(mRS);
mScript.set_gCullBack(mCullBack);
mScript.set_gCullFront(mCullFront);
+ mScript.set_gCullNone(mCullNone);
}
private void initRS() {