OLD | NEW |
1 | 1 |
2 /* | 2 /* |
3 * Copyright 2006 The Android Open Source Project | 3 * Copyright 2006 The Android Open Source Project |
4 * | 4 * |
5 * Use of this source code is governed by a BSD-style license that can be | 5 * Use of this source code is governed by a BSD-style license that can be |
6 * found in the LICENSE file. | 6 * found in the LICENSE file. |
7 */ | 7 */ |
8 | 8 |
9 | 9 |
10 #include "SkXfermode.h" | 10 #include "SkXfermode.h" |
(...skipping 943 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
954 builder->fsCodeAppendf("\t\tvec4 %s = ", dstColor); | 954 builder->fsCodeAppendf("\t\tvec4 %s = ", dstColor); |
955 builder->fsAppendTextureLookup(samplers[0], bgCoords.c_str(), bg
CoordsType); | 955 builder->fsAppendTextureLookup(samplers[0], bgCoords.c_str(), bg
CoordsType); |
956 builder->fsCodeAppendf(";\n"); | 956 builder->fsCodeAppendf(";\n"); |
957 } else { | 957 } else { |
958 dstColor = builder->dstColor(); | 958 dstColor = builder->dstColor(); |
959 } | 959 } |
960 SkASSERT(NULL != dstColor); | 960 SkASSERT(NULL != dstColor); |
961 | 961 |
962 // We don't try to optimize for this case at all | 962 // We don't try to optimize for this case at all |
963 if (NULL == inputColor) { | 963 if (NULL == inputColor) { |
964 builder->fsCodeAppendf("\t\tconst vec4 ones = %s;\n", GrGLSLOnes
Vecf(4)); | 964 builder->fsCodeAppendf("\t\tconst vec4 ones = %s;\n", GrGLSLExpr
<4>(1).c_str()); |
965 inputColor = "ones"; | 965 inputColor = "ones"; |
966 } | 966 } |
967 builder->fsCodeAppendf("\t\t// SkXfermode::Mode: %s\n", SkXfermode::
ModeName(mode)); | 967 builder->fsCodeAppendf("\t\t// SkXfermode::Mode: %s\n", SkXfermode::
ModeName(mode)); |
968 | 968 |
969 // These all perform src-over on the alpha channel. | 969 // These all perform src-over on the alpha channel. |
970 builder->fsCodeAppendf("\t\t%s.a = %s.a + (1.0 - %s.a) * %s.a;\n", | 970 builder->fsCodeAppendf("\t\t%s.a = %s.a + (1.0 - %s.a) * %s.a;\n", |
971 outputColor, inputColor, inputColor, dstColo
r); | 971 outputColor, inputColor, inputColor, dstColo
r); |
972 | 972 |
973 switch (mode) { | 973 switch (mode) { |
974 case SkXfermode::kOverlay_Mode: | 974 case SkXfermode::kOverlay_Mode: |
(...skipping 988 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1963 return proc16; | 1963 return proc16; |
1964 } | 1964 } |
1965 | 1965 |
1966 SK_DEFINE_FLATTENABLE_REGISTRAR_GROUP_START(SkXfermode) | 1966 SK_DEFINE_FLATTENABLE_REGISTRAR_GROUP_START(SkXfermode) |
1967 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkProcCoeffXfermode) | 1967 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkProcCoeffXfermode) |
1968 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkClearXfermode) | 1968 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkClearXfermode) |
1969 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkSrcXfermode) | 1969 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkSrcXfermode) |
1970 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkDstInXfermode) | 1970 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkDstInXfermode) |
1971 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkDstOutXfermode) | 1971 SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkDstOutXfermode) |
1972 SK_DEFINE_FLATTENABLE_REGISTRAR_GROUP_END | 1972 SK_DEFINE_FLATTENABLE_REGISTRAR_GROUP_END |
OLD | NEW |