Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(97)

Side by Side Diff: src/effects/SkDisplacementMapEffect.cpp

Issue 2154753003: Introduce GrColorSpaceXform, for gamut conversion on textures (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright 2013 Google Inc. 2 * Copyright 2013 Google Inc.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license that can be 4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file. 5 * found in the LICENSE file.
6 */ 6 */
7 7
8 #include "SkDisplacementMapEffect.h" 8 #include "SkDisplacementMapEffect.h"
9 9
10 #include "SkBitmap.h" 10 #include "SkBitmap.h"
(...skipping 448 matching lines...) Expand 10 before | Expand all | Expand 10 after
459 GrDisplacementMapEffect::GrDisplacementMapEffect( 459 GrDisplacementMapEffect::GrDisplacementMapEffect(
460 SkDisplacementMapEffect::ChannelSelectorType xChann elSelector, 460 SkDisplacementMapEffect::ChannelSelectorType xChann elSelector,
461 SkDisplacementMapEffect::ChannelSelectorType yChann elSelector, 461 SkDisplacementMapEffect::ChannelSelectorType yChann elSelector,
462 const SkVector& scale, 462 const SkVector& scale,
463 GrTexture* displacement, 463 GrTexture* displacement,
464 const SkMatrix& offsetMatrix, 464 const SkMatrix& offsetMatrix,
465 GrTexture* color, 465 GrTexture* color,
466 const SkISize& colorDimensions) 466 const SkISize& colorDimensions)
467 : fDisplacementTransform(kLocal_GrCoordSet, offsetMatrix, displacement, 467 : fDisplacementTransform(kLocal_GrCoordSet, offsetMatrix, displacement,
468 GrTextureParams::kNone_FilterMode) 468 GrTextureParams::kNone_FilterMode)
469 , fDisplacementAccess(displacement) 469 , fDisplacementAccess(displacement, nullptr)
470 , fColorTransform(kLocal_GrCoordSet, color, GrTextureParams::kNone_FilterMod e) 470 , fColorTransform(kLocal_GrCoordSet, color, GrTextureParams::kNone_FilterMod e)
471 , fDomain(GrTextureDomain::MakeTexelDomain(color, SkIRect::MakeSize(colorDim ensions)), 471 , fDomain(GrTextureDomain::MakeTexelDomain(color, SkIRect::MakeSize(colorDim ensions)),
472 GrTextureDomain::kDecal_Mode) 472 GrTextureDomain::kDecal_Mode)
473 , fColorAccess(color) 473 , fColorAccess(color, nullptr /* COLORXFORMTODO */)
474 , fXChannelSelector(xChannelSelector) 474 , fXChannelSelector(xChannelSelector)
475 , fYChannelSelector(yChannelSelector) 475 , fYChannelSelector(yChannelSelector)
476 , fScale(scale) { 476 , fScale(scale) {
477 this->initClassID<GrDisplacementMapEffect>(); 477 this->initClassID<GrDisplacementMapEffect>();
478 this->addCoordTransform(&fDisplacementTransform); 478 this->addCoordTransform(&fDisplacementTransform);
479 this->addTextureAccess(&fDisplacementAccess); 479 this->addTextureAccess(&fDisplacementAccess);
480 this->addCoordTransform(&fColorTransform); 480 this->addCoordTransform(&fColorTransform);
481 this->addTextureAccess(&fColorAccess); 481 this->addTextureAccess(&fColorAccess);
482 } 482 }
483 483
(...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after
617 void GrGLDisplacementMapEffect::GenKey(const GrProcessor& proc, 617 void GrGLDisplacementMapEffect::GenKey(const GrProcessor& proc,
618 const GrGLSLCaps&, GrProcessorKeyBuilder* b) { 618 const GrGLSLCaps&, GrProcessorKeyBuilder* b) {
619 const GrDisplacementMapEffect& displacementMap = proc.cast<GrDisplacementMap Effect>(); 619 const GrDisplacementMapEffect& displacementMap = proc.cast<GrDisplacementMap Effect>();
620 620
621 uint32_t xKey = displacementMap.xChannelSelector(); 621 uint32_t xKey = displacementMap.xChannelSelector();
622 uint32_t yKey = displacementMap.yChannelSelector() << kChannelSelectorKeyBit s; 622 uint32_t yKey = displacementMap.yChannelSelector() << kChannelSelectorKeyBit s;
623 623
624 b->add32(xKey | yKey); 624 b->add32(xKey | yKey);
625 } 625 }
626 #endif 626 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698