Project

General

Profile

« Previous | Next » 

Revision b11171e8

Added by Leszek Koltunski over 2 years ago

Add DistortedProgram.stopUsingProgram()

View differences:

src/main/java/org/distorted/library/main/DistortedLibrary.java
529 529
    mesh.bindTransformAttribs(mNormalProgram);
530 530
    GLES30.glLineWidth(8.0f);
531 531
    GLES30.glDrawArrays(GLES30.GL_LINES, 0, 2*num);
532
    mNormalProgram.stopUsingProgram();
532 533
    }
533 534

  
534 535
///////////////////////////////////////////////////////////////////////////////////////////////////
......
569 570
    GLES30.glEndTransformFeedback();
570 571
    mesh.copyTransformToVertex();
571 572
    GLES30.glBindBufferBase(GLES30.GL_TRANSFORM_FEEDBACK_BUFFER, 0, 0);
573
    mFullProgram.stopUsingProgram();
572 574
    }
573 575

  
574 576
///////////////////////////////////////////////////////////////////////////////////////////////////
......
596 598

  
597 599
      EffectQueue.send(queues, mMainOITProgramH, distance, mipmap, projection, inflate, 1 );
598 600
      GLES30.glDrawArrays(GLES30.GL_TRIANGLE_STRIP, 0, mesh.getNumVertices() );
601
      mMainOITProgram.stopUsingProgram();
599 602

  
600
      if( mesh.getShowNormals() )
601
        {
602
        mMainProgram.useProgram();
603
        mesh.send(mMainProgramH,0);
604
        EffectQueue.send(queues, mMainProgramH, distance, mipmap, projection, inflate, 0 );
605
        displayNormals(projection,mesh);
606
        }
603
      if( mesh.getShowNormals() ) displayNormals(projection,mesh);
607 604
      }
608 605
    }
609 606

  
......
630 627

  
631 628
      EffectQueue.send(queues, mMainProgramH, distance, mipmap, projection, inflate, 0 );
632 629
      GLES30.glDrawArrays(GLES30.GL_TRIANGLE_STRIP, 0, mesh.getNumVertices() );
630
      mMainProgram.stopUsingProgram();
633 631

  
634 632
      if( mesh.getShowNormals() ) displayNormals(projection,mesh);
635 633
      }
......
642 640
    if( mBlitProgram!=null )
643 641
      {
644 642
      mBlitProgram.useProgram();
645

  
646 643
      GLES30.glViewport(0, 0, surface.mWidth, surface.mHeight );
647 644
      GLES30.glUniform1i(mBlitTextureH, 0);
648 645
      GLES30.glUniform1f( mBlitDepthH , 1.0f-surface.mNear);
649 646
      GLES30.glVertexAttribPointer(mBlitProgram.mAttribute[0], 2, GLES30.GL_FLOAT, false, 0, mQuadPositions);
650 647
      GLES30.glDrawArrays(GLES30.GL_TRIANGLE_STRIP, 0, 4);
648
      mBlitProgram.stopUsingProgram();
651 649
      }
652 650
    }
653 651

  
......
658 656
    if( mBlitDepthProgram!=null )
659 657
      {
660 658
      mBlitDepthProgram.useProgram();
661

  
662 659
      GLES30.glViewport(0, 0, surface.mWidth, surface.mHeight );
663 660
      GLES30.glUniform1i(mBlitDepthTextureH, 0);
664 661
      GLES30.glUniform1i(mBlitDepthDepthTextureH, 1);
665 662
      GLES30.glUniform2f(mBlitDepthTexCorrH, corrW, corrH );
666 663
      GLES30.glVertexAttribPointer(mBlitDepthProgram.mAttribute[0], 2, GLES30.GL_FLOAT, false, 0, mQuadPositions);
667 664
      GLES30.glDrawArrays(GLES30.GL_TRIANGLE_STRIP, 0, 4);
665
      mBlitDepthProgram.stopUsingProgram();
668 666
      }
669 667
    }
670 668

  
......
801 799
      }
802 800

  
803 801
    mOITClearProgram.useProgram();
804

  
805 802
    GLES30.glViewport(0, 0, surface.mWidth, surface.mHeight );
806 803
    GLES30.glUniform2f(mOITClearTexCorrH, 1.0f, 1.0f );   // corrections do not really matter here - only present because of common vertex shader.
807 804
    GLES30.glUniform1f( mOITClearDepthH , 1.0f);          // likewise depth
808 805
    GLES30.glUniform2ui(mOITClearSizeH, surface.mWidth, surface.mHeight);
809 806
    GLES30.glVertexAttribPointer(mOITClearProgram.mAttribute[0], 2, GLES30.GL_FLOAT, false, 0, mQuadPositions);
810 807
    GLES30.glDrawArrays(GLES30.GL_TRIANGLE_STRIP, 0, 4);
808
    mOITClearProgram.stopUsingProgram();
811 809
    }
812 810

  
813 811
///////////////////////////////////////////////////////////////////////////////////////////////////
......
818 816
    if( mOITBuildProgram!=null )
819 817
      {
820 818
      mOITBuildProgram.useProgram();
821

  
822 819
      GLES30.glViewport(0, 0, surface.mWidth, surface.mHeight );
823 820
      GLES30.glUniform1i(mOITBuildTextureH, 0);
824 821
      GLES30.glUniform1i(mOITBuildDepthTextureH, 1);
......
828 825
      GLES30.glUniform1f(mOITBuildDepthH , 1.0f-surface.mNear);
829 826
      GLES30.glVertexAttribPointer(mOITBuildProgram.mAttribute[0], 2, GLES30.GL_FLOAT, false, 0, mQuadPositions);
830 827
      GLES30.glDrawArrays(GLES30.GL_TRIANGLE_STRIP, 0, 4);
828
      mOITBuildProgram.stopUsingProgram();
831 829
      }
832 830
    }
833 831

  
......
839 837
    if( mOITCollapseProgram!=null )
840 838
      {
841 839
      mOITCollapseProgram.useProgram();
842

  
843 840
      GLES30.glViewport(0, 0, surface.mWidth, surface.mHeight );
844 841
      GLES30.glUniform1i(mOITCollapseDepthTextureH, 1);
845 842
      GLES30.glUniform2f(mOITCollapseTexCorrH, corrW, corrH );
......
847 844
      GLES30.glUniform1f( mOITCollapseDepthH , 1.0f-surface.mNear);
848 845
      GLES30.glVertexAttribPointer(mOITCollapseProgram.mAttribute[0], 2, GLES30.GL_FLOAT, false, 0, mQuadPositions);
849 846
      GLES30.glDrawArrays(GLES30.GL_TRIANGLE_STRIP, 0, 4);
847
      mOITCollapseProgram.stopUsingProgram();
850 848
      }
851 849
    }
852 850

  
......
858 856
    if( mOITRenderProgram!=null )
859 857
      {
860 858
      mOITRenderProgram.useProgram();
861

  
862 859
      GLES30.glViewport(0, 0, surface.mWidth, surface.mHeight );
863 860
      GLES30.glUniform2f(mOITRenderTexCorrH, corrW, corrH );
864 861
      GLES30.glUniform2ui(mOITRenderSizeH, surface.mWidth, surface.mHeight);
865 862
      GLES30.glUniform1f( mOITRenderDepthH , 1.0f-surface.mNear);
866 863
      GLES30.glVertexAttribPointer(mOITRenderProgram.mAttribute[0], 2, GLES30.GL_FLOAT, false, 0, mQuadPositions);
867 864
      GLES30.glDrawArrays(GLES30.GL_TRIANGLE_STRIP, 0, 4);
865
      mOITRenderProgram.stopUsingProgram();
868 866
      }
869 867
    }
870 868

  

Also available in: Unified diff