aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/instanced/InstanceProcessor.cpp
diff options
context:
space:
mode:
authorGravatar Ethan Nicholas <ethannicholas@google.com>2017-02-09 13:57:14 -0500
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-02-09 20:26:39 +0000
commit84645e3c679581d191406b2d7ab93c3f6c5e3a63 (patch)
tree7f8bd7445db4dbffa52e16ae78bb488ba483e2ce /src/gpu/instanced/InstanceProcessor.cpp
parent99dbe7b2c4996c094a440f512e9f7eb9c2708884 (diff)
re-land of skslc type constructor cleanups
BUG=skia: Change-Id: I953be07e2389dd4a9e7dcce0ddfd7505b309bda1 Reviewed-on: https://skia-review.googlesource.com/8265 Reviewed-by: Ethan Nicholas <ethannicholas@google.com> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Diffstat (limited to 'src/gpu/instanced/InstanceProcessor.cpp')
-rw-r--r--src/gpu/instanced/InstanceProcessor.cpp22
1 files changed, 18 insertions, 4 deletions
diff --git a/src/gpu/instanced/InstanceProcessor.cpp b/src/gpu/instanced/InstanceProcessor.cpp
index 8626eb92d4..2ac5b8e8c8 100644
--- a/src/gpu/instanced/InstanceProcessor.cpp
+++ b/src/gpu/instanced/InstanceProcessor.cpp
@@ -115,12 +115,26 @@ public:
void fetchNextParam(GrSLType type = kVec4f_GrSLType) const {
SkASSERT(fParamsBuffer.isValid());
- if (type != kVec4f_GrSLType) {
- fVertexBuilder->codeAppendf("%s(", GrGLSLTypeString(type));
+ switch (type) {
+ case kVec2f_GrSLType: // fall through
+ case kVec3f_GrSLType: // fall through
+ case kVec4f_GrSLType:
+ break;
+ default:
+ fVertexBuilder->codeAppendf("%s(", GrGLSLTypeString(type));
}
fVertexBuilder->appendTexelFetch(fParamsBuffer, "paramsIdx++");
- if (type != kVec4f_GrSLType) {
- fVertexBuilder->codeAppend(")");
+ switch (type) {
+ case kVec2f_GrSLType:
+ fVertexBuilder->codeAppend(".xy");
+ break;
+ case kVec3f_GrSLType:
+ fVertexBuilder->codeAppend(".xyz");
+ break;
+ case kVec4f_GrSLType:
+ break;
+ default:
+ fVertexBuilder->codeAppend(")");
}
}