code: private void emit(float[] particlePositions, float[] particleVelocities,
                        float[] particleTimeStamps)
      {
          float[] allParticlePositions = new float[particlePositions.length + particleBoundingVolume.length];
          System.arraycopy(particlePositions, 0, allParticlePositions, 0, particlePositions.length);
          System.arraycopy(particleBoundingVolume, 0, allParticlePositions,
                          particlePositions.length, particleBoundingVolume.length);
  
          float[] allSpawnTimes = new float[particleTimeStamps.length + BVSpawnTimes.length];
          System.arraycopy(particleTimeStamps, 0, allSpawnTimes, 0, particleTimeStamps.length);
          System.arraycopy(BVSpawnTimes, 0, allSpawnTimes, particleTimeStamps.length, BVSpawnTimes.length);
  
          float[] allParticleVelocities = new float[particleVelocities.length + BVVelocities.length];
          System.arraycopy(particleVelocities, 0, allParticleVelocities, 0, particleVelocities.length);
          System.arraycopy(BVVelocities, 0, allParticleVelocities, particleVelocities.length, BVVelocities.length);
  
  
          Particles particleMesh = new Particles(mGVRContext, mMaxAge,
                  mParticleSize, mEnvironmentAcceleration, mParticleSizeRate, mFadeWithAge,
                  mParticleTexture, mColor, mNoiseFactor);
  
  
          GVRSceneObject particleObject = particleMesh.makeParticleMesh(allParticlePositions,
                  allParticleVelocities, allSpawnTimes);
  
          this.addChildObject(particleObject);
          meshInfo.add(Pair.create(particleObject, currTime));
      }
docs: Append the bounding volume particle positions, times and velocities to the existing mesh
  before creating a new scene object with this mesh attached to it.
  Also, append every created scene object and its creation time to corresponding array lists.
  
  @param particlePositions
  @param particleVelocities
  @param particleTimeStamps