Esempio n. 1
0
  private void loadWaveformResources(Context context, GL10 gl) throws IOException {
    m_waveformTexture = GLHelpers.loadTexture(gl, context, R.drawable.waveform);
    gl.glTexParameterf(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_WRAP_S, GL10.GL_REPEAT);
    gl.glTexParameterf(GL10.GL_TEXTURE_2D, GL10.GL_TEXTURE_WRAP_T, GL10.GL_REPEAT);

    if (m_waveformVertices == null) {
      ByteBuffer vertices = GLHelpers.allocateFloatBuffer(WAVEFORM_POINTS * 3);
      vertices
          .putFloat(+WAVEFORM_HEAD_WIDTH / 2)
          .putFloat(0)
          .putFloat(0)
          .putFloat(-WAVEFORM_HEAD_WIDTH / 2)
          .putFloat(0)
          .putFloat(0)
          .putFloat(+0.5f)
          .putFloat(0)
          .putFloat(WAVEFORM_HEAD_HEIGHT)
          .putFloat(-0.5f)
          .putFloat(0)
          .putFloat(WAVEFORM_HEAD_HEIGHT)
          .putFloat(+0.5f)
          .putFloat(0)
          .putFloat(1 - WAVEFORM_TAIL_HEIGHT)
          .putFloat(-0.5f)
          .putFloat(0)
          .putFloat(1 - WAVEFORM_TAIL_HEIGHT)
          .putFloat(+WAVEFORM_TAIL_WIDTH / 2)
          .putFloat(0)
          .putFloat(1)
          .putFloat(-WAVEFORM_TAIL_WIDTH / 2)
          .putFloat(0)
          .putFloat(1);

      ByteBuffer texcoords = GLHelpers.allocateFloatBuffer(WAVEFORM_POINTS * 2);
      {
        vertices.position(0);
        for (int i = 0; i != WAVEFORM_POINTS; ++i) {
          float x = vertices.getFloat();
          /*float y=*/ vertices.getFloat();
          float z = vertices.getFloat();
          texcoords.putFloat(-x + 0.5f);
          texcoords.putFloat(z);
        }
      }
      m_waveformVertices = GLBufferObject.createVertices(3, GL10.GL_FLOAT, vertices);
      m_waveformTexcoords = GLBufferObject.createTexcoords(2, GL10.GL_FLOAT, texcoords);
    }
    m_waveformVertices.bind(gl);
    m_waveformTexcoords.bind(gl);
  }
Esempio n. 2
0
 public void loadResources(Context context, GL10 gl) throws IOException {
   m_noteMesh = new Mesh(gl, context.getAssets().open("note.mesh"));
   m_stringTexture = GLHelpers.loadTexture(gl, context, R.drawable.string);
   m_barTexture = GLHelpers.loadTexture(gl, context, R.drawable.bar);
   loadWaveformResources(context, gl);
 }