mirror of
				https://github.com/ocornut/imgui.git
				synced 2025-10-26 12:27:30 +00:00 
			
		
		
		
	save and restore sampler in GL 3 examples
This commit is contained in:
		| @@ -42,6 +42,7 @@ void ImGui_ImplSdlGL3_RenderDrawLists(ImDrawData* draw_data) | ||||
|     glActiveTexture(GL_TEXTURE0); | ||||
|     GLint last_program; glGetIntegerv(GL_CURRENT_PROGRAM, &last_program); | ||||
|     GLint last_texture; glGetIntegerv(GL_TEXTURE_BINDING_2D, &last_texture); | ||||
|     GLint last_sampler; glGetIntegerv(GL_SAMPLER_BINDING, &last_sampler); | ||||
|     GLint last_array_buffer; glGetIntegerv(GL_ARRAY_BUFFER_BINDING, &last_array_buffer); | ||||
|     GLint last_element_array_buffer; glGetIntegerv(GL_ELEMENT_ARRAY_BUFFER_BINDING, &last_element_array_buffer); | ||||
|     GLint last_vertex_array; glGetIntegerv(GL_VERTEX_ARRAY_BINDING, &last_vertex_array); | ||||
| @@ -101,6 +102,7 @@ void ImGui_ImplSdlGL3_RenderDrawLists(ImDrawData* draw_data) | ||||
|             else | ||||
|             { | ||||
|                 glBindTexture(GL_TEXTURE_2D, (GLuint)(intptr_t)pcmd->TextureId); | ||||
|                 glBindSampler(0, 0); // rely on combined texture/sampler state. | ||||
|                 glScissor((int)pcmd->ClipRect.x, (int)(fb_height - pcmd->ClipRect.w), (int)(pcmd->ClipRect.z - pcmd->ClipRect.x), (int)(pcmd->ClipRect.w - pcmd->ClipRect.y)); | ||||
|                 glDrawElements(GL_TRIANGLES, (GLsizei)pcmd->ElemCount, sizeof(ImDrawIdx) == 2 ? GL_UNSIGNED_SHORT : GL_UNSIGNED_INT, idx_buffer_offset); | ||||
|             } | ||||
| @@ -111,6 +113,7 @@ void ImGui_ImplSdlGL3_RenderDrawLists(ImDrawData* draw_data) | ||||
|     // Restore modified GL state | ||||
|     glUseProgram(last_program); | ||||
|     glBindTexture(GL_TEXTURE_2D, last_texture); | ||||
|     glBindSampler(0, last_sampler); | ||||
|     glActiveTexture(last_active_texture); | ||||
|     glBindVertexArray(last_vertex_array); | ||||
|     glBindBuffer(GL_ARRAY_BUFFER, last_array_buffer); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Nicolas Guillemot
					Nicolas Guillemot