diff options
author | Juan Linietsky <reduzio@gmail.com> | 2017-08-31 08:44:22 -0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-08-31 08:44:22 -0300 |
commit | 51066fcde78714bde438d84486624431bcca7188 (patch) | |
tree | 33a892146bfd21bd784d884f274b72f3873146f2 /drivers | |
parent | c109a6e5a489ed4bdd9473cf60d2c853a622624e (diff) | |
parent | 5d2b059d461edb641a8224b32accd7e58cf8ded3 (diff) | |
download | redot-engine-51066fcde78714bde438d84486624431bcca7188.tar.gz |
Merge pull request #10305 from H4kor/gles3
Fixes a bug in multimesh_instance_get_color
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/gles3/rasterizer_storage_gles3.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/gles3/rasterizer_storage_gles3.cpp b/drivers/gles3/rasterizer_storage_gles3.cpp index 4cc6dcd5fb..a66a3d020b 100644 --- a/drivers/gles3/rasterizer_storage_gles3.cpp +++ b/drivers/gles3/rasterizer_storage_gles3.cpp @@ -3963,7 +3963,7 @@ Color RasterizerStorageGLES3::multimesh_instance_get_color(RID p_multimesh, int ERR_FAIL_COND_V(multimesh->color_format == VS::MULTIMESH_COLOR_NONE, Color()); int stride = multimesh->color_floats + multimesh->xform_floats; - float *dataptr = &multimesh->data[stride * p_index + multimesh->color_floats]; + float *dataptr = &multimesh->data[stride * p_index + multimesh->xform_floats]; if (multimesh->color_format == VS::MULTIMESH_COLOR_8BIT) { union { @@ -3971,6 +3971,8 @@ Color RasterizerStorageGLES3::multimesh_instance_get_color(RID p_multimesh, int float colf; } cu; + cu.colf = dataptr[0]; + return Color::hex(BSWAP32(cu.colu)); } else if (multimesh->color_format == VS::MULTIMESH_COLOR_FLOAT) { |