Index: src/core/SkLights.cpp |
diff --git a/src/core/SkLights.cpp b/src/core/SkLights.cpp |
index 962997fc31436c4a3b4428a194210b227d9cef24..445a896408d55a613880034311f87fe3d643f636 100644 |
--- a/src/core/SkLights.cpp |
+++ b/src/core/SkLights.cpp |
@@ -42,14 +42,15 @@ sk_sp<SkLights> SkLights::MakeFromBuffer(SkReadBuffer& buf) { |
} |
} |
+ bool isRadial = buf.readBool(); |
if (isPoint) { |
- SkScalar intensity = 0.0f; |
+ SkScalar intensity; |
intensity = buf.readScalar(); |
- Light light = Light::MakePoint(color, dirOrPos, intensity); |
+ Light light = Light::MakePoint(color, dirOrPos, intensity, isRadial); |
light.setShadowMap(depthMap); |
builder.add(light); |
} else { |
- Light light = Light::MakeDirectional(color, dirOrPos); |
+ Light light = Light::MakeDirectional(color, dirOrPos, isRadial); |
light.setShadowMap(depthMap); |
builder.add(light); |
} |
@@ -70,8 +71,13 @@ void SkLights::flatten(SkWriteBuffer& buf) const { |
buf.writeBool(isPoint); |
buf.writeScalarArray(&light.color().fX, 3); |
buf.writeScalarArray(&light.dir().fX, 3); |
+ |
bool hasShadowMap = light.getShadowMap() != nullptr; |
buf.writeBool(hasShadowMap); |
+ |
+ bool isFlat = light.isRadial(); |
jvanverth1
2016/09/02 14:01:59
Nit: change to isRadial
vjiaoblack
2016/09/02 14:15:57
Done.
|
+ buf.writeBool(isFlat); |
+ |
if (hasShadowMap) { |
buf.writeImage(light.getShadowMap()); |
} |