Loading tests/RenderScriptTests/SceneGraph/res/raw/diffuse_lights.glsl 0 → 100644 +22 −0 Original line number Diff line number Diff line varying vec3 varWorldPos; varying vec3 varWorldNormal; varying vec2 varTex0; void main() { vec3 V = normalize(UNI_cameraPos.xyz - varWorldPos.xyz); vec3 worldNorm = normalize(varWorldNormal); vec3 light0Vec = normalize(UNI_lightPos_0.xyz - varWorldPos.xyz); float light0_Diffuse = clamp(dot(worldNorm, light0Vec), 0.0, 1.0); vec3 light1Vec = normalize(UNI_lightPos_1.xyz - varWorldPos.xyz); float light1_Diffuse = clamp(dot(worldNorm, light1Vec), 0.0, 1.0); vec2 t0 = varTex0.xy; lowp vec4 col = UNI_diffuse; col.xyz = col.xyz * (light0_Diffuse * UNI_lightColor_0.xyz + light1_Diffuse * UNI_lightColor_1.xyz); gl_FragColor = col; } tests/RenderScriptTests/SceneGraph/res/raw/shader2v.glsl +5 −0 Original line number Diff line number Diff line /* rs_matrix4x4 model; rs_matrix4x4 viewProj; */ varying vec3 varWorldPos; varying vec3 varWorldNormal; varying vec2 varTex0; Loading tests/RenderScriptTests/SceneGraph/src/com/android/testapp/SimpleAppView.java +1 −0 Original line number Diff line number Diff line Loading @@ -41,6 +41,7 @@ public class SimpleAppView extends RSSurfaceView { if (mRS == null) { RenderScriptGL.SurfaceConfig sc = new RenderScriptGL.SurfaceConfig(); sc.setDepth(16, 24); sc.setSamples(1, 2, 1); mRS = createRenderScriptGL(sc); mRS.setSurface(holder, w, h); mRender = new SimpleAppRS(); Loading tests/RenderScriptTests/SceneGraph/src/com/android/testapp/TestAppRS.java +14 −1 Original line number Diff line number Diff line Loading @@ -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; Loading Loading @@ -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); } Loading Loading @@ -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); Loading @@ -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(); Loading @@ -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); } Loading tests/RenderScriptTests/SceneGraph/src/com/android/testapp/TestAppView.java +1 −0 Original line number Diff line number Diff line Loading @@ -59,6 +59,7 @@ public class TestAppView extends RSSurfaceView { if (mRS == null) { RenderScriptGL.SurfaceConfig sc = new RenderScriptGL.SurfaceConfig(); sc.setDepth(16, 24); sc.setSamples(1, 2, 1); mRS = createRenderScriptGL(sc); mRS.setSurface(holder, w, h); mRender = new TestAppRS(); Loading Loading
tests/RenderScriptTests/SceneGraph/res/raw/diffuse_lights.glsl 0 → 100644 +22 −0 Original line number Diff line number Diff line varying vec3 varWorldPos; varying vec3 varWorldNormal; varying vec2 varTex0; void main() { vec3 V = normalize(UNI_cameraPos.xyz - varWorldPos.xyz); vec3 worldNorm = normalize(varWorldNormal); vec3 light0Vec = normalize(UNI_lightPos_0.xyz - varWorldPos.xyz); float light0_Diffuse = clamp(dot(worldNorm, light0Vec), 0.0, 1.0); vec3 light1Vec = normalize(UNI_lightPos_1.xyz - varWorldPos.xyz); float light1_Diffuse = clamp(dot(worldNorm, light1Vec), 0.0, 1.0); vec2 t0 = varTex0.xy; lowp vec4 col = UNI_diffuse; col.xyz = col.xyz * (light0_Diffuse * UNI_lightColor_0.xyz + light1_Diffuse * UNI_lightColor_1.xyz); gl_FragColor = col; }
tests/RenderScriptTests/SceneGraph/res/raw/shader2v.glsl +5 −0 Original line number Diff line number Diff line /* rs_matrix4x4 model; rs_matrix4x4 viewProj; */ varying vec3 varWorldPos; varying vec3 varWorldNormal; varying vec2 varTex0; Loading
tests/RenderScriptTests/SceneGraph/src/com/android/testapp/SimpleAppView.java +1 −0 Original line number Diff line number Diff line Loading @@ -41,6 +41,7 @@ public class SimpleAppView extends RSSurfaceView { if (mRS == null) { RenderScriptGL.SurfaceConfig sc = new RenderScriptGL.SurfaceConfig(); sc.setDepth(16, 24); sc.setSamples(1, 2, 1); mRS = createRenderScriptGL(sc); mRS.setSurface(holder, w, h); mRender = new SimpleAppRS(); Loading
tests/RenderScriptTests/SceneGraph/src/com/android/testapp/TestAppRS.java +14 −1 Original line number Diff line number Diff line Loading @@ -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; Loading Loading @@ -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); } Loading Loading @@ -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); Loading @@ -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(); Loading @@ -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); } Loading
tests/RenderScriptTests/SceneGraph/src/com/android/testapp/TestAppView.java +1 −0 Original line number Diff line number Diff line Loading @@ -59,6 +59,7 @@ public class TestAppView extends RSSurfaceView { if (mRS == null) { RenderScriptGL.SurfaceConfig sc = new RenderScriptGL.SurfaceConfig(); sc.setDepth(16, 24); sc.setSamples(1, 2, 1); mRS = createRenderScriptGL(sc); mRS.setSurface(holder, w, h); mRender = new TestAppRS(); Loading