skia2/gyp
egdaniel 09aa1fce69 Refactor how we store and use samplers in Ganesh
The main goal of this refactorization is to allow Vulkan to use separate
sampler and texture objects in the shader and descriptor sets and combine
them into a sampler2d in the shader where needed.

A large part of this is separating how we store samplers and uniforms in the
UniformHandler. We no longer need to store handles to samplers besides when
we are initially emitting code. After we emit code all we ever do is loop over
all samplers and do some processor independent work on them, so we have no need
for direct access to individual samplers.

In the GLProgram all we ever do is set the sampler uniforms in the ctor and never
touch them again, so no need to save sampler info there. The texture access on
program reuse just assume that they come in the same order as we set the texture
units for the samplers

For Vulkan, it is a similar story. We create the descriptor set layouts with the samplers,
then when we get new textures, we just assume they come in in the same order as we
set the samplers on the descriptor sets. Thus no need to save direct vulkan info.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1885863004

Committed: https://skia.googlesource.com/skia/+/45b61a1c4c0be896e7b12fd1405abfece799114f

Review URL: https://codereview.chromium.org/1885863004
2016-04-20 07:09:46 -07:00
..
android_deps.gyp Fix gyp files so that gyp_to_Android.mk succeeds 2016-01-25 11:40:02 -08:00
android_framework_lib.gyp Move SkBitmapRegionDecoder to include/android and src/android 2015-11-13 06:11:09 -08:00
android_output.gyp Add copyright headers to remaining gyp files. 2015-03-25 10:22:41 -07:00
android_system.gyp Add copyright headers to remaining gyp files. 2015-03-25 10:22:41 -07:00
angle.gyp Move SkGLContext and some GrGLInterface implementations to skgputest module 2016-03-30 18:56:20 -07:00
animator.gyp rm src/animator/SkTime.cpp 2016-03-25 15:22:47 -07:00
apptype_console.gypi Remove all code related to NaCl 2015-04-02 12:16:36 -07:00
bench.gyp Remove internal calls to SkImage::getTexture 2016-02-29 11:41:52 -08:00
bench.gypi SkPDF/Bench: add bench for SkPDFSharedStream (deflate) 2016-02-24 15:17:20 -08:00
canvas_state_lib.gyp Add copyright headers to remaining gyp files. 2015-03-25 10:22:41 -07:00
codec_android.gyp Use a smart pointer for SkColorSpace factories 2016-03-07 07:09:03 -08:00
codec.gyp Rename encoders to Sk*ImageEncoder 2016-03-25 08:58:55 -07:00
common_conditions.gypi We meant these to be YES... sigh. 2016-03-28 12:43:39 -07:00
common_variables.gypi mojo -> nojo 2016-04-14 09:42:34 -07:00
common.gypi Turn off Discardable scaled image cache 2016-03-25 09:48:45 -07:00
core.gyp Move CPU feature detection to its own file. 2016-04-19 14:00:13 -07:00
core.gypi Move CPU feature detection to its own file. 2016-04-19 14:00:13 -07:00
debugger.gyp unified PNG encoding between SkDrawCommand and skiaserve 2016-03-21 10:19:39 -07:00
dm.gyp Use a statically linked libhwui for testing. 2016-02-16 09:19:36 -08:00
dm.gypi Move DM png code to picture_utils, for use by other tools. 2016-04-19 09:18:11 -07:00
dng_sdk.gyp Enable RAW codec for Windows 2016-02-29 07:14:42 -08:00
effects.gyp Revert of sRGB support in Ganesh. Several pieces: (patchset #12 id:220001 of https://codereview.chromium.org/1789663002/ ) 2016-03-17 13:01:26 -07:00
effects.gypi Split AlphaThresholdEffect out into its own file 2016-04-18 07:20:05 -07:00
etc1.gyp Revert of Depend on ETC1 via DEPS instead of a direct third_party checkin. (patchset #1 id:1 of https://codereview.chromium.org/1296253003/ ) 2015-08-17 11:15:00 -07:00
everything.gyp Add SkDrawPosTextHCommand JSON, fix skiaserve build. 2016-03-09 07:42:54 -08:00
example.gyp Create a standalone example for using Skia with SDL 2015-11-13 11:22:19 -08:00
expat.gyp msan: build expat from source 2016-02-07 13:31:23 -08:00
experimental.gyp experimental: coreGraphicsPdf2png 2016-03-09 11:26:51 -08:00
FileReaderApp.gyp remove SkGPipe 2016-01-08 06:30:14 -08:00
find.py Sort build files for consistent link order. 2015-05-20 09:26:47 -07:00
flags.gyp Move SkGLContext and some GrGLInterface implementations to skgputest module 2016-03-30 18:56:20 -07:00
freetype.gyp Update android_make to support both --gcc and --clang options. 2016-03-07 12:30:47 -08:00
freetype.gypi Update Android FreeType version. 2015-10-27 08:39:39 -07:00
fuzz.gyp Make fuzz builds set SK_FUZZ_LOGGING 2016-04-12 12:02:59 -07:00
giflib.gyp Update giflib to 5.1.1 (AOSP hash) 2015-08-24 12:00:15 -07:00
gmslides.gypi unified PNG encoding between SkDrawCommand and skiaserve 2016-03-21 10:19:39 -07:00
gpu.gyp Move SkGLContext and some GrGLInterface implementations to skgputest module 2016-03-30 18:56:20 -07:00
gpu.gypi Refactor how we store and use samplers in Ganesh 2016-04-20 07:09:46 -07:00
gputest.gyp Add CreatePlatformGLTestContext_none.cpp for Google3 build 2016-04-01 04:50:45 -07:00
icu.gyp Revert "Factor out xcode c/cpp settings into variables to apply to cmake builds." 2016-02-03 13:06:28 -08:00
images.gyp Delete SkPageFlipper 2016-03-25 10:31:22 -07:00
iOSShell.gyp Modify iOSShell-gyp to generate unique bundle identifier 2015-12-02 09:45:30 -08:00
jsoncpp.gyp Roll jsoncpp, drop dependency on Chromium overrides. 2014-08-19 07:21:00 -07:00
kilobench.gyp Move SkGLContext and some GrGLInterface implementations to skgputest module 2016-03-30 18:56:20 -07:00
ktx.gyp add -Iinclude/private anywhere we have -Isrc/core 2015-07-28 08:55:14 -07:00
libjpeg-turbo-selector.gyp Remove dependencies on Android's forked decoder libraries 2015-11-06 11:15:49 -08:00
libjpeg-turbo.gyp Switch Skia's libjpeg-turbo to 1.4.2 2015-11-23 11:09:14 -08:00
libpng.gyp Update libpng to 1.6.22beta 2016-02-19 11:14:43 -08:00
libwebp_skia.gypi Comments Style: s/skbug.com/bug.skia.org/ 2015-11-07 05:29:00 -08:00
libwebp.gyp Update libwebp to version 0.5.0 2016-01-22 06:58:27 -08:00
lua.gyp Update android_make to support both --gcc and --clang options. 2016-03-07 12:30:47 -08:00
microhttpd.gyp Create explicit microhttpd.gyp 2016-03-09 15:07:02 -08:00
most.gyp First pass at VulkanViewer 2016-04-06 06:08:59 -07:00
nanomsg.gyp Experiment with find as a road to Gyp sanity. 2015-05-16 15:47:10 -07:00
opts.gyp spin off some safe parts from AVX2 CL 2016-01-25 09:26:54 -08:00
opts.gypi Port S32A_opaque blit row to SkOpts. 2016-03-23 06:29:12 -07:00
pathops_skpclip.gyp remove SkGPipe 2016-01-08 06:30:14 -08:00
pathops_unittest.gyp Move SkGLContext and some GrGLInterface implementations to skgputest module 2016-03-30 18:56:20 -07:00
pathops_unittest.gypi More conic-specific tests revealed a few conic-specific bugs. Because javascript / canvas make visualizing conics tricky, new native tools are required. 2015-10-30 12:03:06 -07:00
pdf.gyp Revert of SkPDF: PDF/A runtime switch (patchset #1 id:100001 of https://codereview.chromium.org/1891873002/ ) 2016-04-15 12:30:21 -07:00
pdf.gypi Revert of SkPDF: PDF/A runtime switch (patchset #1 id:100001 of https://codereview.chromium.org/1891873002/ ) 2016-04-15 12:30:21 -07:00
piex.gyp msan: define BREAK_IF_DEBUGGING_AND_OUT_OF_RANGE in piex 2016-02-08 09:35:05 -08:00
ports.gyp rm src/ports/SkTime_*.cpp 2016-03-28 09:00:22 -07:00
SampleApp.gyp Move SkGLContext and some GrGLInterface implementations to skgputest module 2016-03-30 18:56:20 -07:00
sdl.gyp Initial gyp files for SDL 2015-10-29 07:09:53 -07:00
sfnt.gyp Move SkTemplates.h to private. 2015-08-19 11:56:48 -07:00
sfntly.gyp Disable sanitizers with a blacklist. 2015-12-08 14:26:17 -08:00
shaderc.gyp Make build_shaderc.py blow away output dir and allow build_type arg to contain either Debug or Release 2016-04-13 08:02:43 -07:00
SimpleCocoaApp.gyp Allows windowed apps to be built on the Mac just by writing a SkOSWindow subclass without needing nib/plist files. 2015-06-18 11:49:42 -07:00
SimpleiOSApp.gyp Add copyright headers to remaining gyp files. 2015-03-25 10:22:41 -07:00
skia_for_android_framework_defines.gypi exernalize imagefactory guard 2016-04-15 10:56:52 -07:00
skia_for_chromium_defines.gypi Remove SK_IGNORE_GL_TEXTURE_TARGET from skia_for_chromium_defines.gypi 2015-12-07 14:05:31 -08:00
skia_launcher.gyp Add copyright headers to remaining gyp files. 2015-03-25 10:22:41 -07:00
skia_lib.gyp Move SkBitmapRegionDecoder to include/android and src/android 2015-11-13 06:11:09 -08:00
skiaserve.gyp Adding support for playback to L32/S32/F16 canvas. 2016-04-19 10:16:53 -07:00
svg.gyp add -Iinclude/private anywhere we have -Isrc/core 2015-07-28 08:55:14 -07:00
tests.gypi Use a statically linked libhwui for testing. 2016-02-16 09:19:36 -08:00
tools.gyp Move DM png code to picture_utils, for use by other tools. 2016-04-19 09:18:11 -07:00
utils.gyp remove SkGPipe 2016-01-08 06:30:14 -08:00
utils.gypi Templatize SkToXXX. 2016-03-19 15:06:56 -07:00
v8.gyp Allows windowed apps to be built on the Mac just by writing a SkOSWindow subclass without needing nib/plist files. 2015-06-18 11:49:42 -07:00
views.gyp Move SkGLContext and some GrGLInterface implementations to skgputest module 2016-03-30 18:56:20 -07:00
visualbench.gyp Cleanup android build files and tools 2016-04-18 12:57:35 -07:00
vulkanviewer.gyp Some more improvements/fixes to the VulkanViewer 2016-04-07 11:09:51 -07:00
xml.gyp remove unused BML (binary xml) code 2016-04-09 11:09:49 -07:00
xps.gyp SkPDF: move all pdf sources into src/pdf 2016-03-12 05:59:39 -08:00
yasm.gyp followups 2016-02-12 12:58:10 -08:00
zlib.gyp Put all XSAN bots on the same DEPS-sourced build of Clang. 2016-02-12 12:15:23 -08:00