diff options
| author | Alex Sakhartchouk <alexst@google.com> | 2012-02-29 09:06:10 -0800 |
|---|---|---|
| committer | Alex Sakhartchouk <alexst@google.com> | 2012-02-29 09:06:10 -0800 |
| commit | b23b58ad343ccbf8835c7067698a60fc6bc1a870 (patch) | |
| tree | c832571f92822473b69766308c01f48f320e6171 /tests/RenderScriptTests/SceneGraph/src/com/android/testapp/TestAppRS.java | |
| parent | f203b83d2fac1def48dfba23d7020a8c6b4abb70 (diff) | |
| download | frameworks_base-b23b58ad343ccbf8835c7067698a60fc6bc1a870.zip frameworks_base-b23b58ad343ccbf8835c7067698a60fc6bc1a870.tar.gz frameworks_base-b23b58ad343ccbf8835c7067698a60fc6bc1a870.tar.bz2 | |
Enable AA in scenegraph. Minor shader work in sample.
Change-Id: Ifa81d2b19901002f901f25ac9dce5a4ca09fa363
Diffstat (limited to 'tests/RenderScriptTests/SceneGraph/src/com/android/testapp/TestAppRS.java')
| -rw-r--r-- | tests/RenderScriptTests/SceneGraph/src/com/android/testapp/TestAppRS.java | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/tests/RenderScriptTests/SceneGraph/src/com/android/testapp/TestAppRS.java b/tests/RenderScriptTests/SceneGraph/src/com/android/testapp/TestAppRS.java index f159e85..3aa80f4 100644 --- a/tests/RenderScriptTests/SceneGraph/src/com/android/testapp/TestAppRS.java +++ b/tests/RenderScriptTests/SceneGraph/src/com/android/testapp/TestAppRS.java @@ -65,6 +65,7 @@ public class TestAppRS { // Shaders private FragmentShader mPaintF; private FragmentShader mLightsF; + private FragmentShader mLightsDiffF; private FragmentShader mAluminumF; private FragmentShader mPlasticF; private FragmentShader mDiffuseF; @@ -173,6 +174,11 @@ public class TestAppRS { fb.setShader(mRes, R.raw.plastic_lights); mLightsF = fb.create(); + fb = new FragmentShader.Builder(mRS); + fb.setObjectConst(lightParams.getAllocation().getType()); + fb.setShader(mRes, R.raw.diffuse_lights); + mLightsDiffF = fb.create(); + FullscreenBlur.initShaders(mRes, mRS); } @@ -203,6 +209,7 @@ public class TestAppRS { private void addShadersToScene() { mActiveScene.appendShader(mPaintF); mActiveScene.appendShader(mLightsF); + mActiveScene.appendShader(mLightsDiffF); mActiveScene.appendShader(mAluminumF); mActiveScene.appendShader(mPlasticF); mActiveScene.appendShader(mDiffuseF); @@ -219,8 +226,12 @@ public class TestAppRS { RenderState paint = new RenderState(mGenericV, mPaintF, null, null); RenderState aluminum = new RenderState(mGenericV, mAluminumF, null, null); RenderState lights = new RenderState(mGenericV, mLightsF, null, null); + RenderState diff_lights = new RenderState(mGenericV, mLightsDiffF, null, null); + RenderState diff_lights_no_cull = new RenderState(mGenericV, mLightsDiffF, null, + ProgramRaster.CULL_NONE(mRS)); RenderState glassTransp = new RenderState(mGenericV, mPaintF, ProgramStore.BLEND_ALPHA_DEPTH_TEST(mRS), null); + RenderState texState = new RenderState(mGenericV, mTextureF, null, null); initRenderPasses(); @@ -239,10 +250,12 @@ public class TestAppRS { mActiveScene.assignRenderStateToMaterial(glassTransp, "^GlassLight"); mActiveScene.assignRenderStateToMaterial(lights, "^LightBlinn"); + mActiveScene.assignRenderStateToMaterial(diff_lights, "^LightLambert"); + mActiveScene.assignRenderStateToMaterial(diff_lights_no_cull, "^LightLambertNoCull"); + mActiveScene.assignRenderStateToMaterial(texState, "^TextureOnly"); Renderable plane = (Renderable)mActiveScene.getRenderableByName("pPlaneShape1"); if (plane != null) { - RenderState texState = new RenderState(mGenericV, mTextureF, null, null); plane.setRenderState(texState); plane.setVisible(!mUseBlur); } |
