diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/sksl/SkSLSPIRVCodeGenerator.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/sksl/SkSLSPIRVCodeGenerator.cpp b/src/sksl/SkSLSPIRVCodeGenerator.cpp index 1f8f224399..d367df93cb 100644 --- a/src/sksl/SkSLSPIRVCodeGenerator.cpp +++ b/src/sksl/SkSLSPIRVCodeGenerator.cpp @@ -2932,6 +2932,13 @@ void SPIRVCodeGenerator::writeGlobalVars(Program::Kind kind, const VarDeclaratio fCurrentBlock = 0; } this->writeLayout(var->fModifiers.fLayout, id); + if (var->fModifiers.fFlags & Modifiers::kFlat_Flag) { + this->writeInstruction(SpvOpDecorate, id, SpvDecorationFlat, fDecorationBuffer); + } + if (var->fModifiers.fFlags & Modifiers::kNoPerspective_Flag) { + this->writeInstruction(SpvOpDecorate, id, SpvDecorationNoPerspective, + fDecorationBuffer); + } } } |