|
62 | 62 | GrFragmentProcessor::PipelineCoordTransformRange transformRange(programInfo.pipeline()); |
63 | 63 | fGeometryProcessor->setData(fDataManager, programInfo.primProc(), transformRange); |
64 | 64 |
|
| 65 | + GrFragmentProcessor::CIter fpIter(programInfo.pipeline()); |
| 66 | + GrGLSLFragmentProcessor::Iter glslIter(fFragmentProcessors.get(), fFragmentProcessorCnt); |
| 67 | + for (; fpIter && glslIter; ++fpIter, ++glslIter) { |
| 68 | + glslIter->setData(fDataManager, *fpIter); |
| 69 | + } |
| 70 | + SkASSERT(!fpIter && !glslIter); |
| 71 | + |
| 72 | + { |
| 73 | + SkIPoint offset; |
| 74 | + GrTexture* dstTexture = programInfo.pipeline().peekDstTexture(&offset); |
| 75 | + fXferProcessor->setData(fDataManager, programInfo.pipeline().getXferProcessor(), dstTexture, |
| 76 | + offset); |
| 77 | + } |
| 78 | + |
65 | 79 | if (!programInfo.hasDynamicPrimProcTextures()) { |
66 | 80 | auto proxies = programInfo.hasFixedPrimProcTextures() ? programInfo.fixedPrimProcTextures() |
67 | 81 | : nullptr; |
|
90 | 104 | } |
91 | 105 |
|
92 | 106 | GrFragmentProcessor::CIter fpIter(programInfo.pipeline()); |
93 | | - GrGLSLFragmentProcessor::Iter glslIter(fFragmentProcessors.get(), fFragmentProcessorCnt); |
94 | | - for (; fpIter && glslIter; ++fpIter, ++glslIter) { |
95 | | - glslIter->setData(fDataManager, *fpIter); |
| 107 | + for (; fpIter; ++fpIter) { |
96 | 108 | for (int i = 0; i < fpIter->numTextureSamplers(); ++i) { |
97 | 109 | const auto& sampler = fpIter->textureSampler(i); |
98 | 110 | fSamplerBindings.emplace_back(sampler.samplerState(), sampler.peekTexture(), fGpu); |
99 | 111 | } |
100 | 112 | } |
101 | | - SkASSERT(!fpIter && !glslIter); |
102 | | - |
103 | | - { |
104 | | - SkIPoint offset; |
105 | | - GrTexture* dstTexture = programInfo.pipeline().peekDstTexture(&offset); |
106 | | - |
107 | | - fXferProcessor->setData(fDataManager, programInfo.pipeline().getXferProcessor(), |
108 | | - dstTexture, offset); |
109 | | - } |
110 | 113 |
|
111 | 114 | if (GrTextureProxy* dstTextureProxy = programInfo.pipeline().dstProxyView().asTextureProxy()) { |
112 | 115 | fSamplerBindings.emplace_back( |
|
0 commit comments