diff options
Diffstat (limited to 'drivers/gles3/storage/mesh_storage.cpp')
-rw-r--r-- | drivers/gles3/storage/mesh_storage.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/gles3/storage/mesh_storage.cpp b/drivers/gles3/storage/mesh_storage.cpp index 8ab66e2bc6..e073db3cfd 100644 --- a/drivers/gles3/storage/mesh_storage.cpp +++ b/drivers/gles3/storage/mesh_storage.cpp @@ -33,6 +33,7 @@ #include "mesh_storage.h" #include "config.h" #include "material_storage.h" +#include "texture_storage.h" #include "utilities.h" using namespace GLES3; @@ -219,7 +220,7 @@ void MeshStorage::mesh_add_surface(RID p_mesh, const RS::SurfaceData &p_surface) glGenBuffers(1, &s->vertex_buffer); glBindBuffer(GL_ARRAY_BUFFER, s->vertex_buffer); // If we have an uncompressed surface that contains normals, but not tangents, we need to differentiate the array - // from a compressed array in the shader. To do so, we allow the the normal to read 4 components out of the buffer + // from a compressed array in the shader. To do so, we allow the normal to read 4 components out of the buffer // But only give it 2 components per normal. So essentially, each vertex reads the next normal in normal.zw. // This allows us to avoid adding a shader permutation, and avoid passing dummy tangents. Since the stride is kept small // this should still be a net win for bandwidth. @@ -1248,7 +1249,7 @@ void MeshStorage::update_mesh_instances() { } glEnable(GL_RASTERIZER_DISCARD); - glBindFramebuffer(GL_FRAMEBUFFER, 0); + glBindFramebuffer(GL_FRAMEBUFFER, GLES3::TextureStorage::system_fbo); // Process skeletons and blend shapes using transform feedback while (dirty_mesh_instance_arrays.first()) { MeshInstance *mi = dirty_mesh_instance_arrays.first()->self(); |