diff options
author | jfons <joan.fonssanchez@gmail.com> | 2021-06-12 00:40:13 +0200 |
---|---|---|
committer | jfons <joan.fonssanchez@gmail.com> | 2021-06-12 00:40:13 +0200 |
commit | 336778ed21dcdeead02f3206f859437baf35091f (patch) | |
tree | ad69f4823c11329398aa325dd501df534a680c3c | |
parent | 530e069bc3efef4de535a1973aa016698ffbe334 (diff) |
Fix tangents array in SurfaceTool
-rw-r--r-- | scene/resources/surface_tool.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/scene/resources/surface_tool.cpp b/scene/resources/surface_tool.cpp index f728376310..1e78561bec 100644 --- a/scene/resources/surface_tool.cpp +++ b/scene/resources/surface_tool.cpp @@ -370,13 +370,13 @@ Array SurfaceTool::commit_to_arrays() { for (uint32_t idx = 0; idx < vertex_array.size(); idx++) { const Vertex &v = vertex_array[idx]; - w[idx + 0] = v.tangent.x; - w[idx + 1] = v.tangent.y; - w[idx + 2] = v.tangent.z; + w[idx * 4 + 0] = v.tangent.x; + w[idx * 4 + 1] = v.tangent.y; + w[idx * 4 + 2] = v.tangent.z; //float d = v.tangent.dot(v.binormal,v.normal); float d = v.binormal.dot(v.normal.cross(v.tangent)); - w[idx + 3] = d < 0 ? -1 : 1; + w[idx * 4 + 3] = d < 0 ? -1 : 1; } a[i] = array; |