@@ -636,130 +636,6 @@ void Program::UpdateLogInfo() {
636
636
set_log_info (log .empty () ? nullptr : log .c_str ());
637
637
}
638
638
639
- void Program::ClearUniforms (std::vector<uint8_t >* zero_buffer) {
640
- DCHECK (zero_buffer);
641
- if (uniforms_cleared_) {
642
- return ;
643
- }
644
- uniforms_cleared_ = true ;
645
- for (const UniformInfo& uniform_info : uniform_infos_) {
646
- GLint location = uniform_info.element_locations [0 ];
647
- GLsizei size = uniform_info.size ;
648
- uint32_t unit_size =
649
- GLES2Util::GetElementCountForUniformType (uniform_info.type ) *
650
- GLES2Util::GetElementSizeForUniformType (uniform_info.type );
651
- DCHECK_LT (0u , unit_size);
652
- uint32_t size_needed = size * unit_size;
653
- if (size_needed > zero_buffer->size ()) {
654
- zero_buffer->resize (size_needed, 0u );
655
- }
656
- const void * zero = &(*zero_buffer)[0 ];
657
- switch (uniform_info.type ) {
658
- case GL_FLOAT:
659
- glUniform1fv (location, size, reinterpret_cast <const GLfloat*>(zero));
660
- break ;
661
- case GL_FLOAT_VEC2:
662
- glUniform2fv (location, size, reinterpret_cast <const GLfloat*>(zero));
663
- break ;
664
- case GL_FLOAT_VEC3:
665
- glUniform3fv (location, size, reinterpret_cast <const GLfloat*>(zero));
666
- break ;
667
- case GL_FLOAT_VEC4:
668
- glUniform4fv (location, size, reinterpret_cast <const GLfloat*>(zero));
669
- break ;
670
- case GL_INT:
671
- case GL_BOOL:
672
- case GL_SAMPLER_2D:
673
- case GL_SAMPLER_CUBE:
674
- case GL_SAMPLER_EXTERNAL_OES: // extension.
675
- case GL_SAMPLER_2D_RECT_ARB: // extension.
676
- glUniform1iv (location, size, reinterpret_cast <const GLint*>(zero));
677
- break ;
678
- case GL_INT_VEC2:
679
- case GL_BOOL_VEC2:
680
- glUniform2iv (location, size, reinterpret_cast <const GLint*>(zero));
681
- break ;
682
- case GL_INT_VEC3:
683
- case GL_BOOL_VEC3:
684
- glUniform3iv (location, size, reinterpret_cast <const GLint*>(zero));
685
- break ;
686
- case GL_INT_VEC4:
687
- case GL_BOOL_VEC4:
688
- glUniform4iv (location, size, reinterpret_cast <const GLint*>(zero));
689
- break ;
690
- case GL_FLOAT_MAT2:
691
- glUniformMatrix2fv (
692
- location, size, false , reinterpret_cast <const GLfloat*>(zero));
693
- break ;
694
- case GL_FLOAT_MAT3:
695
- glUniformMatrix3fv (
696
- location, size, false , reinterpret_cast <const GLfloat*>(zero));
697
- break ;
698
- case GL_FLOAT_MAT4:
699
- glUniformMatrix4fv (
700
- location, size, false , reinterpret_cast <const GLfloat*>(zero));
701
- break ;
702
-
703
- // ES3 types.
704
- case GL_UNSIGNED_INT:
705
- glUniform1uiv (location, size, reinterpret_cast <const GLuint*>(zero));
706
- break ;
707
- case GL_SAMPLER_3D:
708
- case GL_SAMPLER_2D_SHADOW:
709
- case GL_SAMPLER_2D_ARRAY:
710
- case GL_SAMPLER_2D_ARRAY_SHADOW:
711
- case GL_SAMPLER_CUBE_SHADOW:
712
- case GL_INT_SAMPLER_2D:
713
- case GL_INT_SAMPLER_3D:
714
- case GL_INT_SAMPLER_CUBE:
715
- case GL_INT_SAMPLER_2D_ARRAY:
716
- case GL_UNSIGNED_INT_SAMPLER_2D:
717
- case GL_UNSIGNED_INT_SAMPLER_3D:
718
- case GL_UNSIGNED_INT_SAMPLER_CUBE:
719
- case GL_UNSIGNED_INT_SAMPLER_2D_ARRAY:
720
- glUniform1iv (location, size, reinterpret_cast <const GLint*>(zero));
721
- break ;
722
- case GL_UNSIGNED_INT_VEC2:
723
- glUniform2uiv (location, size, reinterpret_cast <const GLuint*>(zero));
724
- break ;
725
- case GL_UNSIGNED_INT_VEC3:
726
- glUniform3uiv (location, size, reinterpret_cast <const GLuint*>(zero));
727
- break ;
728
- case GL_UNSIGNED_INT_VEC4:
729
- glUniform4uiv (location, size, reinterpret_cast <const GLuint*>(zero));
730
- break ;
731
- case GL_FLOAT_MAT2x3:
732
- glUniformMatrix2x3fv (
733
- location, size, false , reinterpret_cast <const GLfloat*>(zero));
734
- break ;
735
- case GL_FLOAT_MAT3x2:
736
- glUniformMatrix3x2fv (
737
- location, size, false , reinterpret_cast <const GLfloat*>(zero));
738
- break ;
739
- case GL_FLOAT_MAT2x4:
740
- glUniformMatrix2x4fv (
741
- location, size, false , reinterpret_cast <const GLfloat*>(zero));
742
- break ;
743
- case GL_FLOAT_MAT4x2:
744
- glUniformMatrix4x2fv (
745
- location, size, false , reinterpret_cast <const GLfloat*>(zero));
746
- break ;
747
- case GL_FLOAT_MAT3x4:
748
- glUniformMatrix3x4fv (
749
- location, size, false , reinterpret_cast <const GLfloat*>(zero));
750
- break ;
751
- case GL_FLOAT_MAT4x3:
752
- glUniformMatrix4x3fv (
753
- location, size, false , reinterpret_cast <const GLfloat*>(zero));
754
- break ;
755
-
756
- default :
757
- NOTREACHED ();
758
- break ;
759
- }
760
- }
761
- }
762
-
763
639
void Program::Update () {
764
640
Reset ();
765
641
UpdateLogInfo ();
@@ -2554,11 +2430,6 @@ void ProgramManager::UnuseProgram(
2554
2430
RemoveProgramInfoIfUnused (shader_manager, program);
2555
2431
}
2556
2432
2557
- void ProgramManager::ClearUniforms (Program* program) {
2558
- DCHECK (program);
2559
- program->ClearUniforms (&zero_);
2560
- }
2561
-
2562
2433
void ProgramManager::UpdateDrawIDUniformLocation (Program* program) {
2563
2434
DCHECK (program);
2564
2435
program->UpdateDrawIDUniformLocation ();
0 commit comments