skia2/include/core
dvonbeck 12c4fc2579 SkLightingShader normal vector CPU computation refactor.
The purpose of this change is to refactor the handling of normal maps out of SkLightingShader, laying the groundwork to eventually allow for multiple normal sources.

This CL's base was the CL for GPU handling: https://codereview.chromium.org/2043393002/

What this CL includes:

- A refactor of the SkLightingShader context's code that deals with reading normals off of a normal map. This is now abstracted out into a NormalSource::Provider class that the context uses.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2050773002

Committed: https://skia.googlesource.com/skia/+/790a70118327a129cb6b48fabe80f4e184c1e67c
Review-Url: https://codereview.chromium.org/2050773002
2016-06-27 11:40:45 -07:00
..
SkAnnotation.h remove unneeded flag for annotations 2016-03-05 06:00:12 -08:00
SkBBHFactory.h Revert of Add non-inline SkRTreeFactory constructor to fix clang-cl (patchset #2 id:20001 of https://codereview.chromium.org/1676833002/ ) 2016-02-26 16:31:12 -08:00
SkBitmap.h Revert of More removal of SkColorProfileType... (patchset #2 id:20001 of https://codereview.chromium.org/2071393002/ ) 2016-06-17 15:11:46 -07:00
SkBitmapDevice.h Image filters: de-nest SkImageFilter::Cache and Cache::Key. 2016-04-27 11:31:23 -07:00
SkBlitRow.h Port SkBlitRow::Color32 to SkOpts. 2015-09-10 10:38:02 -07:00
SkBlurTypes.h move common blur types into central header 2014-04-28 16:25:35 +00:00
SkCanvas.h SkCanvas::adjustToTopLayer() 2016-05-18 07:24:16 -07:00
SkChunkAlloc.h MIPS32r2: Fix Chromium runtime crash 2016-06-05 13:14:21 -07:00
SkClipStack.h Repurpose Release_Developer BUILDTYPE and remove SK_DEVELOPER. 2016-04-29 06:41:35 -07:00
SkColor.h Change SkColor4f to RGBA channel order 2016-06-24 06:31:47 -07:00
SkColorFilter.h sk_sp for Ganesh. 2016-06-09 08:01:03 -07:00
SkColorPriv.h Change SkUnitScalarClampToByte to more accurate implementation. 2016-02-24 10:07:52 -08:00
SkColorSpace.h Enable flattening and unflattening of SkColorSpace 2016-06-22 08:18:54 -07:00
SkColorTable.h Ensure that SkColorTable->fCount is set properly after decodes 2016-05-17 08:52:11 -07:00
SkData.h https://groups.google.com/forum/#!topic/skia-discuss/2F2she2nQMg 2016-05-06 08:03:44 -07:00
SkDataTable.h Move SkTDArray to private. 2016-02-18 08:53:33 -08:00
SkDeque.h This CL addresses "SkCanvas::save flags are not respected by GPU backend" (https://code.google.com/p/skia/issues/detail?id=1503). 2013-08-16 00:53:34 +00:00
SkDevice.h Clean up test drawContext usage 2016-04-28 14:32:04 -07:00
SkDocument.h SkDocument::CreateXPS fix roll 2016-04-27 12:07:55 -07:00
SkDraw.h SkPixmap::setColorSpace 2016-06-09 11:03:45 -07:00
SkDrawable.h Make SkDrawable an SkFlattenable 2016-04-25 06:40:26 -07:00
SkDrawFilter.h SkPaintFilterCanvas cleanup 2016-01-12 12:14:10 -08:00
SkDrawLooper.h Revert of Delete SkFlattenable::Type (patchset #2 id:20001 of https://codereview.chromium.org/1834303003/ ) 2016-04-04 14:57:19 -07:00
SkError.h Sanitizing source files in Housekeeper-Nightly 2013-09-05 07:01:19 +00:00
SkFilterQuality.h Skia Filter Quality and Scaling Metrics 2016-04-18 09:14:00 -07:00
SkFlattenable.h SkLightingShader normal vector CPU computation refactor. 2016-06-27 11:40:45 -07:00
SkFlattenableSerialization.h Revert of Delete SkFlattenable::Type (part 1) (patchset #1 id:1 of https://codereview.chromium.org/1861013002/ ) 2016-04-05 12:00:49 -07:00
SkFont.h Move SkTypeface to sk_sp. 2016-05-12 10:09:31 -07:00
SkFontLCDConfig.h Add SK_API to SkFontLCDConfig. 2016-05-03 11:56:03 -07:00
SkFontStyle.h Add oblique as a slant. 2016-04-27 10:21:05 -07:00
SkGraphics.h add SkGraphics::PurageAllCaches 2016-02-22 06:19:54 -08:00
SkImage.h Revert of Store mipmap levels in deferred texture image (patchset #15 id:280001 of https://codereview.chromium.org/2034933003/ ) 2016-06-22 07:10:06 -07:00
SkImageEncoder.h Delete SkImageDecoder 2016-03-24 10:41:47 -07:00
SkImageFilter.h Image filters: implement SkImage::makeWithFilter(). 2016-05-19 14:50:29 -07:00
SkImageGenerator.h Enable generating SkImage with the same uniqueID in SkImageGenerator subclass 2016-05-02 01:43:38 -07:00
SkImageInfo.h update callers to not use SkColorProfileType 2016-06-21 10:28:14 -07:00
SkLights.h Add SampleApp slide with animating lightmapped objects & transparency 2016-06-03 10:12:08 -07:00
SkMallocPixelRef.h For non-opaque SkBitmapDevices, replace malloc-then-zero with calloc. 2015-11-05 09:46:23 -08:00
SkMask.h Add default ctor to SkMask 2015-12-17 11:33:12 -08:00
SkMaskFilter.h Fix up flags to SkGpuBlurUtils::GaussianBlur 2016-06-27 11:11:05 -07:00
SkMath.h SkLeanWindows.h: #include "Windows.h" fewer places 2016-06-07 17:21:10 -07:00
SkMatrix44.h SkMatrix44 clarifications and clean-ups 2016-06-23 12:42:29 -07:00
SkMatrix.h Make SkPath::isOval() and SkPath::isRRect return the orientation and starting index. 2016-05-27 09:17:04 -07:00
SkMetaData.h "NULL !=" = NULL 2014-09-05 13:34:00 -07:00
SkMilestone.h Update Skia milestone to 53 after 52 branch 2016-05-19 05:26:57 -07:00
SkMultiPictureDraw.h Move SkTDArray to private. 2016-02-18 08:53:33 -08:00
SkOSFile.h add fsync to try to get complete skps from webpage picture capture 2015-12-16 13:41:23 -08:00
SkPaint.h Move SkTypeface to sk_sp. 2016-05-12 10:09:31 -07:00
SkPath.h Make SkPath::isOval() and SkPath::isRRect return the orientation and starting index. 2016-05-27 09:17:04 -07:00
SkPathEffect.h SkPathEffect.h: add SK_API where needed 2016-04-21 10:54:11 -07:00
SkPathMeasure.h fix path getSegment comment 2016-03-23 11:15:57 -07:00
SkPathRef.h Make SkPath::isOval() and SkPath::isRRect return the orientation and starting index. 2016-05-27 09:17:04 -07:00
SkPicture.h Revert of Update typeface serialization style. (patchset #3 id:40001 of https://codereview.chromium.org/2030683002/ ) 2016-06-13 11:27:55 -07:00
SkPictureAnalyzer.h SkPictureAnalyzer: expose the number of slow GPU commands. 2016-06-09 12:43:30 -07:00
SkPictureRecorder.h return pictures as sk_sp 2016-03-18 07:25:55 -07:00
SkPixelRef.h Lots of progress on switching to SkColorSpace rather than SkColorProfileType 2016-06-16 13:03:24 -07:00
SkPixelSerializer.h SkPixelSerializer: remove deprecated virtual 2015-12-10 09:30:57 -08:00
SkPixmap.h SkPixmap::setColorSpace 2016-06-09 11:03:45 -07:00
SkPngChunkReader.h Delete SkImageDecoder 2016-03-24 10:41:47 -07:00
SkPoint3.h Update SkLightingShader to support rotation 2015-08-20 05:15:07 -07:00
SkPoint.h Revert of Revert of stop calling SkScalarDiv (patchset #1 id:1 of https://codereview.chromium.org/1138263002/) 2015-05-12 10:37:34 -07:00
SkPostConfig.h SkLeanWindows.h: #include "Windows.h" fewer places 2016-06-07 17:21:10 -07:00
SkPreConfig.h SkLeanWindows.h: #include "Windows.h" fewer places 2016-06-07 17:21:10 -07:00
SkRasterizer.h Revert of Delete SkFlattenable::Type (patchset #2 id:20001 of https://codereview.chromium.org/1834303003/ ) 2016-04-04 14:57:19 -07:00
SkRect.h Add bounds to GrShape 2016-05-13 09:23:38 -07:00
SkRefCnt.h sk_sp for Ganesh. 2016-06-09 08:01:03 -07:00
SkRegion.h Remove useless SkASSERT in SkRect.h and SkRegion.h 2015-04-28 12:47:48 -07:00
SkRRect.h Make GrShape track the winding direction and starting point for rrect types. 2016-06-06 14:01:25 -07:00
SkRSXform.h add helper to create RSXform w/ anchorPt 2015-07-30 05:46:05 -07:00
SkRWBuffer.h Fixes for SkRWBuffer 2016-04-22 06:59:01 -07:00
SkScalar.h Swap SkGpuBlurUtils over to using SkIRects 2016-05-13 05:06:19 -07:00
SkShader.h sk_sp for Ganesh. 2016-06-09 08:01:03 -07:00
SkSize.h deprecate SkScalarRound (and its ilk), use SkScalarRound[ToInt,ToScalar]. #define SK_SUPPORT_DEPRECATED_SCALARROUND for legacy clients 2013-12-17 19:22:07 +00:00
SkStream.h SkWStream::writeText inlined. 2016-04-11 19:41:48 -07:00
SkString.h Reverse dependency between SkScalar.h and SkFixed.h. 2016-04-07 08:49:31 -07:00
SkStrokeRec.h Unify implementations of stroking radius calculationsns 2016-04-29 07:07:03 -07:00
SkSurface.h Revert of Make stencils be attachable to render targets created via SkSurface::MakeFromBackendTextureAsRender… (patchset #9 id:150001 of https://codereview.chromium.org/1924183003/ ) 2016-05-03 05:37:46 -07:00
SkSurfaceProps.h Tweak distance field path renderer behavior in gamma-correct mode to match 2016-04-13 13:56:21 -07:00
SkSwizzle.h Add missing SK_API to SkSwizzle.h 2016-03-24 07:50:14 -07:00
SkTextBlob.h Move SkTArray to include/private. 2016-02-17 13:13:44 -08:00
SkTime.h Make SkTime SK_API so that SkTime::GetDateTime() is visible to the clients. 2016-05-02 15:04:46 -07:00
SkTLazy.h Fix typo in SkTLazy copy ctor. src is a reference, not a pointer. 2016-03-25 09:11:35 -07:00
SkTraceMemoryDump.h Add support for light dumps in SkTraceMemoryDump interface. 2015-09-30 04:31:23 -07:00
SkTRegistry.h Rewrite SkTRegistry to take any trivially-copyable type. 2013-09-04 17:20:18 +00:00
SkTypeface.h Remove some uses of SK_SUPPORT_LEGACY_TYPEFACE_PTR. 2016-06-03 14:35:06 -07:00
SkTypes.h Move immintrin/arm_neon includes to where they are used. 2016-06-09 13:40:56 -07:00
SkUnPreMultiply.h Factor out UnPreMultiplyPreservingByteOrder 2014-01-15 22:24:58 +00:00
SkWriteBuffer.h Prototype code that turns any/every flattenable into JSON 2016-05-04 11:06:28 -07:00
SkWriter32.h Remove SkWriter32::contiguousArray(). 2016-04-29 14:45:36 -07:00
SkXfermode.h sk_sp for Ganesh. 2016-06-09 08:01:03 -07:00
SkYUVSizeInfo.h Update Skia's YUV API 2016-03-10 05:44:43 -08:00