Remove translateZ and lights from SkCanvas
Bug: skia:6557
Change-Id: I0dbf70c4131ab59e7fc6c674a6587767af98e13a
Reviewed-on: https://skia-review.googlesource.com/15151
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
diff --git a/src/core/SkCanvas.cpp b/src/core/SkCanvas.cpp
index ad9bcf5..5e33dbf 100644
--- a/src/core/SkCanvas.cpp
+++ b/src/core/SkCanvas.cpp
@@ -293,22 +293,17 @@
SkMatrix fMatrix;
int fDeferredSaveCount;
- // This is the current cumulative depth (aggregate of all done translateZ calls)
- SkScalar fCurDrawDepth;
-
MCRec() {
fFilter = nullptr;
fLayer = nullptr;
fTopLayer = nullptr;
fMatrix.reset();
fDeferredSaveCount = 0;
- fCurDrawDepth = 0;
// don't bother initializing fNext
inc_rec();
}
- MCRec(const MCRec& prev) : fRasterClip(prev.fRasterClip), fMatrix(prev.fMatrix),
- fCurDrawDepth(prev.fCurDrawDepth) {
+ MCRec(const MCRec& prev) : fRasterClip(prev.fRasterClip), fMatrix(prev.fMatrix) {
fFilter = SkSafeRef(prev.fFilter);
fLayer = nullptr;
fTopLayer = prev.fTopLayer;
@@ -640,9 +635,6 @@
fAllowSimplifyClip = false;
fSaveCount = 1;
fMetaData = nullptr;
-#ifdef SK_EXPERIMENTAL_SHADOWING
- fLights = nullptr;
-#endif
fMCRec = (MCRec*)fMCStack.push_back();
new (fMCRec) MCRec;
@@ -1405,26 +1397,6 @@
this->setMatrix(SkMatrix::I());
}
-#ifdef SK_EXPERIMENTAL_SHADOWING
-void SkCanvas::translateZ(SkScalar z) {
- this->checkForDeferredSave();
- this->fMCRec->fCurDrawDepth += z;
- this->didTranslateZ(z);
-}
-
-SkScalar SkCanvas::getZ() const {
- return this->fMCRec->fCurDrawDepth;
-}
-
-void SkCanvas::setLights(sk_sp<SkLights> lights) {
- this->fLights = lights;
-}
-
-sk_sp<SkLights> SkCanvas::getLights() const {
- return this->fLights;
-}
-#endif
-
//////////////////////////////////////////////////////////////////////////////
void SkCanvas::clipRect(const SkRect& rect, SkClipOp op, bool doAA) {
diff --git a/src/core/SkLiteDL.cpp b/src/core/SkLiteDL.cpp
index fb629ddc..0162327 100644
--- a/src/core/SkLiteDL.cpp
+++ b/src/core/SkLiteDL.cpp
@@ -47,7 +47,7 @@
namespace {
#define TYPES(M) \
M(SetDrawFilter) M(Save) M(Restore) M(SaveLayer) \
- M(Concat) M(SetMatrix) M(Translate) M(TranslateZ) \
+ M(Concat) M(SetMatrix) M(Translate) \
M(ClipPath) M(ClipRect) M(ClipRRect) M(ClipRegion) \
M(DrawPaint) M(DrawPath) M(DrawRect) M(DrawRegion) M(DrawOval) M(DrawArc) \
M(DrawRRect) M(DrawDRRect) M(DrawAnnotation) M(DrawDrawable) M(DrawPicture) \
@@ -133,16 +133,6 @@
c->translate(dx, dy);
}
};
- struct TranslateZ final : Op {
- static const auto kType = Type::TranslateZ;
- TranslateZ(SkScalar dz) : dz(dz) {}
- SkScalar dz;
- void draw(SkCanvas* c, const SkMatrix&) const {
- #ifdef SK_EXPERIMENTAL_SHADOWING
- c->translateZ(dz);
- #endif
- }
- };
struct ClipPath final : Op {
static const auto kType = Type::ClipPath;
@@ -538,7 +528,6 @@
void SkLiteDL:: concat(const SkMatrix& matrix) { this->push <Concat>(0, matrix); }
void SkLiteDL::setMatrix(const SkMatrix& matrix) { this->push<SetMatrix>(0, matrix); }
void SkLiteDL::translate(SkScalar dx, SkScalar dy) { this->push<Translate>(0, dx, dy); }
-void SkLiteDL::translateZ(SkScalar dz) { this->push<TranslateZ>(0, dz); }
void SkLiteDL::clipPath(const SkPath& path, SkClipOp op, bool aa) {
this->push<ClipPath>(0, path, op, aa);
diff --git a/src/core/SkLiteRecorder.cpp b/src/core/SkLiteRecorder.cpp
index d252549..5affb3d 100644
--- a/src/core/SkLiteRecorder.cpp
+++ b/src/core/SkLiteRecorder.cpp
@@ -194,7 +194,3 @@
const SkPaint* paint) {
fDL->drawAtlas(atlas, xforms, texs, colors, count, bmode, cull, paint);
}
-
-void SkLiteRecorder::didTranslateZ(SkScalar dz) {
- fDL->translateZ(dz);
-}
diff --git a/src/core/SkLiteRecorder.h b/src/core/SkLiteRecorder.h
index 9f52493..3c156af 100644
--- a/src/core/SkLiteRecorder.h
+++ b/src/core/SkLiteRecorder.h
@@ -78,12 +78,6 @@
void onDrawAtlas(const SkImage*, const SkRSXform[], const SkRect[], const SkColor[],
int, SkBlendMode, const SkRect*, const SkPaint*) override;
-#ifdef SK_EXPERIMENTAL_SHADOWING
- void didTranslateZ(SkScalar) override;
-#else
- void didTranslateZ(SkScalar);
-#endif
-
private:
typedef SkNoDrawCanvas INHERITED;
diff --git a/src/core/SkPictureFlat.h b/src/core/SkPictureFlat.h
index 745a7e3..5340fcb 100644
--- a/src/core/SkPictureFlat.h
+++ b/src/core/SkPictureFlat.h
@@ -87,9 +87,9 @@
DRAW_DRAWABLE_MATRIX,
DRAW_TEXT_RSXFORM,
- TRANSLATE_Z,
+ TRANSLATE_Z, // deprecated (M60)
- DRAW_SHADOWED_PICTURE_LIGHTS,
+ DRAW_SHADOWED_PICTURE_LIGHTS, // deprecated (M60)
DRAW_IMAGE_LATTICE,
DRAW_ARC,
DRAW_REGION,
diff --git a/src/core/SkPicturePlayback.cpp b/src/core/SkPicturePlayback.cpp
index 3af7909..cad665b 100644
--- a/src/core/SkPicturePlayback.cpp
+++ b/src/core/SkPicturePlayback.cpp
@@ -783,14 +783,6 @@
canvas->translate(dx, dy);
} break;
- case TRANSLATE_Z: {
-#ifdef SK_EXPERIMENTAL_SHADOWING
- SkScalar dz = reader->readScalar();
- BREAK_ON_READ_ERROR(reader);
-
- canvas->translateZ(dz);
-#endif
- } break;
default:
SkASSERTF(false, "Unknown draw type: %d", op);
}
diff --git a/src/core/SkPictureRecord.cpp b/src/core/SkPictureRecord.cpp
index f794b73..69a35f5 100644
--- a/src/core/SkPictureRecord.cpp
+++ b/src/core/SkPictureRecord.cpp
@@ -234,18 +234,6 @@
this->INHERITED::didSetMatrix(matrix);
}
-void SkPictureRecord::didTranslateZ(SkScalar z) {
-#ifdef SK_EXPERIMENTAL_SHADOWING
- this->validate(fWriter.bytesWritten(), 0);
- // op + scalar
- size_t size = 1 * kUInt32Size + 1 * sizeof(SkScalar);
- size_t initialOffset = this->addDraw(TRANSLATE_Z, &size);
- this->addScalar(z);
- this->validate(initialOffset, size);
- this->INHERITED::didTranslateZ(z);
-#endif
-}
-
static bool clipOpExpands(SkClipOp op) {
switch (op) {
case kUnion_SkClipOp:
diff --git a/src/core/SkPictureRecord.h b/src/core/SkPictureRecord.h
index dcdfebe..08aa335 100644
--- a/src/core/SkPictureRecord.h
+++ b/src/core/SkPictureRecord.h
@@ -164,12 +164,6 @@
void didConcat(const SkMatrix&) override;
void didSetMatrix(const SkMatrix&) override;
-#ifdef SK_EXPERIMENTAL_SHADOWING
- void didTranslateZ(SkScalar) override;
-#else
- void didTranslateZ(SkScalar);
-#endif
-
void onDrawDRRect(const SkRRect&, const SkRRect&, const SkPaint&) override;
void onDrawText(const void* text, size_t, SkScalar x, SkScalar y, const SkPaint&) override;
diff --git a/src/core/SkRecordDraw.cpp b/src/core/SkRecordDraw.cpp
index 634676c..fbb7f7c 100644
--- a/src/core/SkRecordDraw.cpp
+++ b/src/core/SkRecordDraw.cpp
@@ -89,12 +89,6 @@
DRAW(ClipRect, clipRect(r.rect, r.opAA.op(), r.opAA.aa()));
DRAW(ClipRegion, clipRegion(r.region, r.op));
-#ifdef SK_EXPERIMENTAL_SHADOWING
-DRAW(TranslateZ, SkCanvas::translateZ(r.z));
-#else
-template <> void Draw::draw(const TranslateZ& r) { }
-#endif
-
DRAW(DrawArc, drawArc(r.oval, r.startAngle, r.sweepAngle, r.useCenter, r.paint));
DRAW(DrawDRRect, drawDRRect(r.outer, r.inner, r.paint));
DRAW(DrawImage, drawImage(r.image.get(), r.left, r.top, r.paint));
@@ -297,7 +291,6 @@
void trackBounds(const SetMatrix&) { this->pushControl(); }
void trackBounds(const Concat&) { this->pushControl(); }
void trackBounds(const Translate&) { this->pushControl(); }
- void trackBounds(const TranslateZ&) { this->pushControl(); }
void trackBounds(const ClipRect&) { this->pushControl(); }
void trackBounds(const ClipRRect&) { this->pushControl(); }
void trackBounds(const ClipPath&) { this->pushControl(); }
diff --git a/src/core/SkRecorder.cpp b/src/core/SkRecorder.cpp
index c111db6..64d613d 100644
--- a/src/core/SkRecorder.cpp
+++ b/src/core/SkRecorder.cpp
@@ -372,12 +372,6 @@
APPEND(Translate, dx, dy);
}
-void SkRecorder::didTranslateZ(SkScalar z) {
-#ifdef SK_EXPERIMENTAL_SHADOWING
- APPEND(TranslateZ, z);
-#endif
-}
-
void SkRecorder::onClipRect(const SkRect& rect, SkClipOp op, ClipEdgeStyle edgeStyle) {
INHERITED(onClipRect, rect, op, edgeStyle);
SkRecords::ClipOpAndAA opAA(op, kSoft_ClipEdgeStyle == edgeStyle);
diff --git a/src/core/SkRecorder.h b/src/core/SkRecorder.h
index c815744..5344934 100644
--- a/src/core/SkRecorder.h
+++ b/src/core/SkRecorder.h
@@ -62,12 +62,6 @@
void didSetMatrix(const SkMatrix&) override;
void didTranslate(SkScalar, SkScalar) override;
-#ifdef SK_EXPERIMENTAL_SHADOWING
- void didTranslateZ(SkScalar) override;
-#else
- void didTranslateZ(SkScalar);
-#endif
-
void onDrawDRRect(const SkRRect&, const SkRRect&, const SkPaint&) override;
void onDrawDrawable(SkDrawable*, const SkMatrix*) override;
void onDrawText(const void* text,