Lines Matching defs:shader
65 // "argsAttr.z=numTotalEdges" tells the shader the literal number of edges in the
68 // shader to only allocate one segment the preceding round join.
90 // patch that explicitly tells the shader what type of curve it is.
146 const GrStrokeTessellationShader& shader, SkString* code, GrGPArgs* gpArgs,
316 })", shader.maxParametricSegments_log2() /* Parametric/radial sort loop count. */);
323 if (!shader.stroke().isHairlineStyle()) {
339 void GrStrokeTessellationShader::Impl::emitFragmentCode(const GrStrokeTessellationShader& shader,
341 if (!shader.hasDynamicColor()) {
342 // The fragment shader just outputs a uniform color.
358 const auto& shader = geomProc.cast<GrStrokeTessellationShader>();
359 const auto& stroke = shader.stroke();
361 if (!shader.hasDynamicStroke()) {
365 tolerances = skgpu::StrokeTolerances::MakeNonHairline(shader.viewMatrix().getMaxScale(),
380 float maxScale = shader.viewMatrix().getMaxScale();
385 if (shader.mode() == GrStrokeTessellationShader::Mode::kFixedCount) {
386 SkASSERT(shader.fixedCountNumTotalEdges() != 0);
387 pdman.set1f(fEdgeCountUniform, (float)shader.fixedCountNumTotalEdges());
391 const SkMatrix& m = shader.viewMatrix();
396 if (!shader.hasDynamicColor()) {
397 pdman.set4fv(fColorUniform, 1, shader.color().vec());