Преглед изворни кода

Re-fix Disabling Half Floats on iOS

A previous change missed setting a flag that specified whether half
floats were being used on vertex positions when in the GLES2 driver

This caused errors with the vertex buffer when platforms (specifically
iOS) which do not properly support half float vertex attributes on
GLES2, try to remapt the vertex buffer to stop using half floats
(in this case that remapping never happened and caused artifacts)

Re-enable setting that flag to fix rendering issues on these platforms

(cherry picked from commit bf5b2f48e6100d939954312f5185f9366eeb2363)
Omar El Sheikh пре 3 година
родитељ
комит
ca67b2bce1
1 измењених фајлова са 1 додато и 0 уклоњено
  1. 1 0
      drivers/gles2/rasterizer_storage_gles2.cpp

+ 1 - 0
drivers/gles2/rasterizer_storage_gles2.cpp

@@ -2287,6 +2287,7 @@ void RasterizerStorageGLES2::mesh_add_surface(RID p_mesh, uint32_t p_format, VS:
 				if (p_format & VS::ARRAY_COMPRESS_VERTEX) {
 					attribs[i].type = _GL_HALF_FLOAT_OES;
 					positions_stride += attribs[i].size * 2;
+					uses_half_float = true;
 				} else {
 					attribs[i].type = GL_FLOAT;
 					positions_stride += attribs[i].size * 4;