diff options
-rw-r--r-- | libs/rs/java/Balls/src/com/android/balls/BallsRS.java | 15 | ||||
-rw-r--r-- | libs/rs/java/Balls/src/com/android/balls/balls.rs | 6 |
2 files changed, 14 insertions, 7 deletions
diff --git a/libs/rs/java/Balls/src/com/android/balls/BallsRS.java b/libs/rs/java/Balls/src/com/android/balls/BallsRS.java index 9c845aa..359f334 100644 --- a/libs/rs/java/Balls/src/com/android/balls/BallsRS.java +++ b/libs/rs/java/Balls/src/com/android/balls/BallsRS.java @@ -30,7 +30,8 @@ public class BallsRS { private RenderScriptGL mRS; private ScriptC_balls mScript; private ScriptC_ball_physics mPhysicsScript; - private ProgramFragment mPF; + private ProgramFragment mPFLines; + private ProgramFragment mPFPoints; private ProgramVertex mPV; private ProgramRaster mPR; private ProgramStore mPS; @@ -89,10 +90,13 @@ public class BallsRS { pfb.setTexture(ProgramFragment.Builder.EnvMode.MODULATE, ProgramFragment.Builder.Format.RGBA, 0); pfb.setVaryingColor(true); - mPF = pfb.create(); - rs.contextBindProgramFragment(mPF); + mPFPoints = pfb.create(); - mPF.bindTexture(loadTexture(R.drawable.flares), 0); + pfb = new ProgramFragment.Builder(rs); + pfb.setVaryingColor(true); + mPFLines = pfb.create(); + + mPFPoints.bindTexture(loadTexture(R.drawable.flares), 0); mPoints = new ScriptField_Point(mRS, PART_COUNT); mArcs = new ScriptField_Point(mRS, PART_COUNT * 2); @@ -118,7 +122,8 @@ public class BallsRS { mScript.bind_balls1(new ScriptField_Ball(mRS, PART_COUNT)); mScript.bind_balls2(new ScriptField_Ball(mRS, PART_COUNT)); - mScript.set_gPF(mPF); + mScript.set_gPFLines(mPFLines); + mScript.set_gPFPoints(mPFPoints); createProgramVertex(); createProgramRaster(); diff --git a/libs/rs/java/Balls/src/com/android/balls/balls.rs b/libs/rs/java/Balls/src/com/android/balls/balls.rs index 493633b..bbd03cf 100644 --- a/libs/rs/java/Balls/src/com/android/balls/balls.rs +++ b/libs/rs/java/Balls/src/com/android/balls/balls.rs @@ -6,7 +6,8 @@ #pragma stateFragment(parent) -rs_program_fragment gPF; +rs_program_fragment gPFPoints; +rs_program_fragment gPFLines; rs_program_vertex gPV; rs_program_raster gPR; rs_program_store gPS; @@ -93,11 +94,12 @@ int root() { } frame++; - rsgBindProgramFragment(gPF); + rsgBindProgramFragment(gPFLines); rsgBindProgramVertex(gPV); rsgBindProgramRaster(gPR); rsgBindProgramStore(gPS); rsgDrawMesh(arcMesh, 0, 0, arcIdx); + rsgBindProgramFragment(gPFPoints); rsgDrawMesh(partMesh); rsClearObject(&bc.ain); rsClearObject(&bc.aout); |