From 2fee7b4bdf79259810c74ec1c10d0b639ecda10b Mon Sep 17 00:00:00 2001 From: badlogic Date: Mon, 24 Jun 2019 13:46:12 +0200 Subject: [PATCH] [love2d] Fixed vertex color multiplier. We support both the old 0-255 and the new 0-1 RGBA range. Closes #1392. --- spine-love/spine-love/spine.lua | 42 +++++++++++++++++---------------- 1 file changed, 22 insertions(+), 20 deletions(-) diff --git a/spine-love/spine-love/spine.lua b/spine-love/spine-love/spine.lua index 074435d52..9e2002631 100644 --- a/spine-love/spine-love/spine.lua +++ b/spine-love/spine-love/spine.lua @@ -200,20 +200,22 @@ function PolygonBatcher:draw (texture, vertices, uvs, numVertices, indices, colo local vertexStart = self.verticesLength + 1 local vertexEnd = vertexStart + numVertices local vertex = self.vertex + local colorScalar = 1; + if love._version_major <= 10 then colorScalar = 255 end if not self.useTwoColorTint then - vertex[5] = color.r * 255 - vertex[6] = color.g * 255 - vertex[7] = color.b * 255 - vertex[8] = color.a * 255 + vertex[5] = color.r * colorScalar + vertex[6] = color.g * colorScalar + vertex[7] = color.b * colorScalar + vertex[8] = color.a * colorScalar else - vertex[5] = color.r * 255 - vertex[6] = color.g * 255 - vertex[7] = color.b * 255 - vertex[8] = color.a * 255 - vertex[9] = darkColor.r * 255 - vertex[10] = darkColor.g * 255 - vertex[11] = darkColor.b * 255 - vertex[12] = darkColor.a * 255 + vertex[5] = color.r * colorScalar + vertex[6] = color.g * colorScalar + vertex[7] = color.b * colorScalar + vertex[8] = color.a * colorScalar + vertex[9] = darkColor.r * colorScalar + vertex[10] = darkColor.g * colorScalar + vertex[11] = darkColor.b * colorScalar + vertex[12] = darkColor.a * colorScalar end local v = 1 @@ -231,15 +233,15 @@ function PolygonBatcher:draw (texture, vertices, uvs, numVertices, indices, colo vertex[2] = tempVertex.y vertex[3] = tempVertex.u vertex[4] = tempVertex.v - vertex[5] = tempVertex.light.r * 255 - vertex[6] = tempVertex.light.g * 255 - vertex[7] = tempVertex.light.b * 255 - vertex[8] = tempVertex.light.a * 255 + vertex[5] = tempVertex.light.r * colorScalar + vertex[6] = tempVertex.light.g * colorScalar + vertex[7] = tempVertex.light.b * colorScalar + vertex[8] = tempVertex.light.a * colorScalar if (self.useTwoColorTint) then - vertex[9] = tempVertex.dark.r * 255 - vertex[10] = tempVertex.dark.g * 255 - vertex[11] = tempVertex.dark.b * 255 - vertex[12] = tempVertex.dark.a * 255 + vertex[9] = tempVertex.dark.r * colorScalar + vertex[10] = tempVertex.dark.g * colorScalar + vertex[11] = tempVertex.dark.b * colorScalar + vertex[12] = tempVertex.dark.a * colorScalar end mesh:setVertex(vertexStart, vertex) vertexStart = vertexStart + 1