1// GENERATED FILE - DO NOT EDIT. 2// Generated by gen_vk_internal_shaders.py. 3// 4// Copyright 2018 The ANGLE Project Authors. All rights reserved. 5// Use of this source code is governed by a BSD-style license that can be 6// found in the LICENSE file. 7// 8// shaders/gen/ImageCopy.frag.00000028.inc: 9// Pre-generated shader for the ANGLE Vulkan back-end. 10 11#pragma once 12constexpr uint8_t kImageCopy_frag_00000028[] = { 13 0x1f,0x8b,0x08,0x00,0x00,0x00,0x00,0x00,0x02,0xff,0x85,0x96,0xff,0x4f,0xd5,0x55, 14 0x18,0xc7,0x0f,0xf7,0x03,0xf7,0x22,0xc4,0x17,0x01,0x25,0x5c,0x58,0x7e,0x61,0xab, 15 0x61,0x40,0x8b,0x8c,0x20,0xdd,0xc8,0xc8,0x24,0x94,0x14,0x7e,0xa8,0xa5,0x13,0x4a, 16 0x58,0x06,0xb1,0x34,0x7f,0x24,0x85,0xd6,0xd4,0x0a,0xd6,0x98,0xb5,0x82,0xcd,0xe0, 17 0x87,0x82,0x59,0xad,0xad,0x9f,0x5a,0x6b,0xa5,0x23,0xcd,0xfa,0x83,0x5a,0x5f,0xb6, 18 0xb6,0xce,0x73,0x78,0x3d,0xee,0xdd,0x5d,0xcd,0xbb,0x9d,0xdd,0x7b,0xde,0xcf,0xb7, 19 0xf7,0xfb,0x39,0xcf,0x39,0xbb,0x59,0x6e,0x57,0x21,0x84,0x92,0x50,0x11,0xca,0xc3, 20 0xaf,0x61,0xe3,0xb3,0x39,0xe4,0x22,0x12,0x42,0x65,0xc8,0xa7,0xef,0x83,0x03,0x43, 21 0x03,0x6d,0x6f,0x9e,0x3b,0xd5,0xd6,0xf9,0x58,0x87,0xd9,0xab,0x43,0x96,0xfc,0xcc, 22 0x56,0x13,0x0a,0xa1,0x34,0x7e,0xdb,0x7a,0x7d,0xf4,0xf4,0x94,0xe1,0x55,0x71,0x7d, 23 0x11,0x57,0x6d,0xf4,0x33,0xbc,0x60,0x39,0xe2,0xaf,0xaa,0x94,0xd3,0x62,0x42,0x78, 24 0x36,0x94,0x85,0x7a,0xea,0xed,0xe2,0xdb,0xb1,0x12,0xb0,0x72,0xc1,0x72,0x60,0xb5, 25 0x82,0x65,0x60,0x0d,0x82,0x95,0x82,0xdd,0x2b,0x58,0x19,0xd8,0x7d,0x82,0xe5,0xc1, 26 0x1e,0x10,0xac,0x00,0xb6,0x5b,0xb0,0x72,0xb0,0x07,0x05,0xdb,0x04,0xb6,0x47,0xb0, 27 0x0a,0xb0,0x0e,0xc1,0x2a,0xc1,0x3a,0x05,0xbb,0x07,0xac,0x4b,0xb0,0x2a,0xb0,0x27, 28 0x53,0x9f,0xb2,0x3b,0x7a,0xad,0x67,0x07,0xe2,0xf7,0x4e,0xfa,0xe3,0xfb,0x1d,0xb2, 29 0xb7,0x3e,0x6f,0x67,0x5f,0x1f,0xa3,0x72,0xc9,0x9e,0xa5,0xde,0xd8,0xef,0x2d,0xd1, 30 0x27,0x8f,0x4e,0xeb,0x6b,0x63,0xdc,0x17,0xd0,0x6f,0xf6,0xad,0xd1,0xb3,0x02,0xbb, 31 0xd9,0x2a,0xd1,0x52,0x9a,0xb0,0xd2,0xc4,0xb7,0x04,0x2d,0x3d,0xec,0xab,0x24,0x57, 32 0x35,0xfe,0x5e,0xab,0x8e,0x5c,0x21,0xf1,0xaa,0xbd,0xd3,0x57,0xaf,0x69,0xab,0xee, 33 0x2e,0xcb,0x7d,0xac,0x7e,0x03,0xfd,0xae,0xa7,0x7e,0x43,0xaa,0xb3,0x81,0xb5,0xa2, 34 0x6d,0x2b,0x7c,0xcc,0xbf,0x11,0x5b,0x41,0xec,0xcd,0xa2,0x67,0x3b,0xf6,0xba,0x34, 35 0x37,0xb9,0xd4,0xcb,0x56,0x78,0x7b,0x9f,0x3d,0xae,0x95,0xd9,0x71,0xfb,0x23,0xd4, 36 0x71,0xfb,0x5e,0x7a,0x61,0x7d,0xd8,0x4f,0x4e,0xab,0xd3,0x14,0x2b,0xf4,0xb2,0x2f, 37 0x09,0xff,0xfe,0xf8,0xde,0xb8,0x3c,0xc5,0xef,0x5e,0xb4,0xd9,0xfe,0x40,0x11,0x87, 38 0xbe,0xa2,0x7d,0x3f,0xbd,0xb6,0xf8,0xe7,0xd0,0x92,0x17,0xfb,0x20,0x7b,0xe3,0xf4, 39 0x22,0x1c,0x32,0xb1,0x8f,0x16,0xf5,0x66,0x9a,0x19,0xf7,0xfd,0xe5,0xa2,0xde,0x5e, 40 0x61,0x66,0xad,0xde,0x35,0x72,0xed,0x87,0xef,0x35,0xee,0x79,0x96,0x7a,0x51,0x96, 41 0x78,0x95,0xc2,0xd7,0xb0,0x3f,0x22,0x62,0xfd,0xdb,0xc7,0x5c,0xd5,0xd0,0xaf,0xc1, 42 0xc8,0xa0,0x9a,0xbb,0x5c,0xc3,0xf2,0xde,0x4c,0x31,0x9f,0x9b,0xb1,0xf7,0xc6,0x0c, 43 0x8d,0xdc,0xe7,0x2d,0x9c,0xf5,0x3e,0x7c,0x9a,0xc0,0xdf,0x8e,0x3e,0xb6,0xdf,0x46, 44 0x5c,0x13,0x71,0x76,0xd6,0xf7,0x13,0xd7,0x4c,0x9c,0xcf,0xa7,0xe1,0x5f,0x46,0x9f, 45 0x1d,0xf2,0x0e,0xd8,0xf9,0xff,0x1e,0x99,0xb7,0xc0,0xe7,0xaf,0xe8,0xef,0xef,0x41, 46 0x0b,0x7a,0xec,0xf7,0xd1,0x18,0x97,0xe7,0x4d,0xd8,0x86,0xef,0x79,0xfa,0xf5,0x10, 47 0xf8,0xb1,0xb8,0x33,0x4e,0x5f,0x83,0xb9,0xdf,0x9f,0x31,0x87,0xe7,0xb2,0xef,0xdf, 48 0xa2,0x97,0xf9,0xfd,0x88,0x4f,0x19,0x31,0xbb,0x45,0xc3,0x1e,0x34,0xb4,0x8a,0x86, 49 0x87,0xc1,0x5d,0x43,0x1b,0x98,0x6b,0xe8,0x10,0x0d,0x66,0x6b,0xe7,0x6d,0xb2,0xba, 50 0xed,0xa2,0xe1,0x51,0x6a,0x97,0x88,0x86,0x4e,0x70,0xd7,0xf0,0x0d,0x98,0xfb,0x99, 51 0x06,0xcf,0xd5,0x21,0x1a,0xae,0xe3,0xd3,0x42,0x4c,0xbb,0x68,0x78,0x1c,0x0d,0x7b, 52 0x45,0x43,0x17,0xb8,0x6b,0x78,0x02,0xcc,0x35,0xf4,0x88,0x06,0xb3,0x75,0xa7,0xb9, 53 0xdb,0xa8,0xdb,0xcd,0x1c,0x15,0x52,0xbe,0x8d,0xda,0xd7,0xe5,0x7e,0x19,0x47,0xf7, 54 0xed,0x11,0x8e,0x37,0xf0,0xeb,0x20,0xae,0x1b,0x3e,0x76,0x07,0x9f,0xe6,0xfe,0xf9, 55 0xcc,0x3d,0x03,0xe7,0x3e,0x99,0xb9,0x83,0xe0,0x33,0xcc,0xdc,0x21,0xb0,0x1b,0xc4, 56 0xd9,0x9d,0x1c,0x20,0xae,0x9f,0x38,0xeb,0xe9,0x61,0xf0,0x93,0x31,0xca,0xee,0xcf, 57 0x11,0xea,0x1d,0xe2,0x3e,0x1f,0x96,0x5e,0x3d,0x4f,0xfc,0xa0,0xf4,0xea,0x28,0xb8, 58 0xf7,0xea,0x18,0x98,0xf7,0x6a,0x58,0x7a,0x65,0xb6,0xa1,0xb8,0x46,0xd0,0x3f,0xc4, 59 0x79,0x5b,0x9e,0x17,0xa8,0x9d,0xa5,0xfc,0xe5,0xe9,0x8d,0x78,0x09,0xec,0x88,0xdc, 60 0xc3,0x5c,0xaa,0x97,0x4f,0xf6,0xe3,0xc4,0xf9,0x7a,0x27,0xe6,0x32,0xfc,0x04,0xb1, 61 0xc7,0x53,0xae,0x4d,0x49,0xd7,0x49,0xf2,0x9c,0xe0,0x2d,0x28,0xe3,0x3d,0xca,0x38, 62 0x93,0x61,0x38,0x8d,0x88,0xde,0x97,0xd1,0x3b,0x2a,0x7a,0x5f,0x01,0x77,0xbd,0xa7, 63 0xc0,0x5c,0xef,0xb8,0xe8,0x35,0xdb,0x58,0x5c,0xe3,0xe4,0x1e,0x13,0xbd,0xaf,0x8a, 64 0xde,0xaf,0xc8,0x75,0x1a,0x7c,0x27,0x9c,0x3c,0x6e,0x9c,0x39,0x31,0x9f,0xd7,0xa8, 65 0x39,0x82,0xff,0x18,0x75,0x27,0xa5,0xae,0xf9,0x4c,0xc4,0x35,0x49,0xfc,0x84,0xd4, 66 0x9d,0xfa,0x8f,0x3e,0xbf,0x71,0x97,0x3e,0x9f,0x21,0xce,0xd7,0x45,0xfa,0x7c,0x96, 67 0xd8,0x33,0xd2,0xe7,0x73,0xe4,0x39,0xfb,0x3f,0x7d,0x76,0x4e,0x93,0x68,0xb2,0x98, 68 0x9f,0x88,0x19,0x27,0x7e,0xa2,0xe8,0x4c,0x86,0xc5,0x77,0x9d,0xb3,0x1c,0x22,0x6e, 69 0x52,0xce,0xeb,0x2d,0xce,0x6b,0x5a,0xce,0xeb,0x3c,0xb8,0x9f,0xd7,0x05,0x30,0x3f, 70 0xaf,0x59,0xe9,0xdb,0x85,0x74,0x7f,0x42,0xb8,0x44,0xdd,0x19,0xd1,0x75,0x91,0xda, 71 0xeb,0xe8,0x2a,0xd0,0x23,0xd7,0x35,0x4b,0xcc,0x25,0xe1,0xf3,0x2e,0x7c,0x2e,0x0b, 72 0x9f,0xf7,0xc0,0x9d,0xcf,0xfb,0x60,0xce,0x67,0x5e,0xf8,0x98,0x6d,0x2e,0xae,0x05, 73 0x72,0xcf,0xc9,0x39,0x7e,0x00,0x97,0x8c,0xf7,0xd0,0x38,0x7e,0x2b,0xb8,0xbf,0x35, 74 0xf3,0xc4,0x2e,0xc8,0x3b,0xf0,0x21,0xbc,0xae,0xc8,0x3b,0xf0,0x11,0xf8,0x6d,0xde, 75 0xdf,0x8f,0xc1,0xfa,0x85,0xeb,0x27,0xe0,0x7d,0x70,0x5d,0x12,0xae,0x66,0x5b,0x8c, 76 0x6b,0x89,0x7a,0x8b,0xc2,0xeb,0x3b,0xf4,0xad,0xcb,0x3b,0xed,0x7e,0x4b,0x72,0xb6, 77 0x37,0xf1,0x59,0x20,0x66,0x51,0xf8,0x5c,0x85,0x4f,0xb3,0xf0,0xf9,0x14,0xdc,0xf9, 78 0xac,0x08,0x1f,0xb3,0x2d,0xc7,0xb5,0x42,0x9d,0x65,0xe1,0xf3,0x3d,0x7c,0x6e,0x72, 79 0x86,0xc6,0xc7,0xfd,0x56,0x84,0xcf,0x2d,0x7c,0x96,0x88,0x59,0x16,0x3e,0x9f,0xc1, 80 0x67,0x5a,0xf8,0x7c,0x0e,0xee,0x7c,0xd6,0x84,0x8f,0xd9,0x56,0xe3,0x5a,0xa3,0xce, 81 0xaa,0xf0,0xf9,0x81,0xff,0x70,0xb7,0x64,0x9e,0xdc,0x6f,0x4d,0xf8,0xfc,0x82,0xcf, 82 0x0a,0x31,0xab,0x45,0x67,0x3c,0x2f,0xbe,0xb7,0x99,0x87,0x39,0xe2,0xd6,0x8a,0xe6, 83 0x74,0x56,0x7c,0x7f,0x66,0xbe,0x67,0x88,0x9b,0x4f,0xff,0xa5,0xb2,0xf4,0x1f,0xca, 84 0x6c,0x7f,0xc7,0x53,0xeb,0x8a,0xeb,0x1f,0x65,0xe9,0x96,0xe4,0x94,0x0d,0x00,0x00 85}; 86 87// Generated from: 88// 89// #version 450 core 90// 91// #extension GL_EXT_samplerless_texture_functions : require 92// 93// layout(set = 0, binding = 0)uniform utexture2D src; 94// layout(location = 0)out uvec4 dst; 95// 96// layout(push_constant)uniform PushConstants { 97// 98// ivec2 srcOffset; 99// ivec2 dstOffset; 100// int srcMip; 101// int srcLayer; 102// 103// bool flipX; 104// bool flipY; 105// 106// bool premultiplyAlpha; 107// bool unmultiplyAlpha; 108// 109// bool dstHasLuminance; 110// bool dstIsAlpha; 111// 112// bool srcIsSRGB; 113// bool dstIsSRGB; 114// 115// int dstDefaultChannelsMask; 116// bool rotateXY; 117// } params; 118// 119// void main() 120// { 121// ivec2 dstSubImageCoords = ivec2(gl_FragCoord . xy)- params . dstOffset; 122// 123// ivec2 srcSubImageCoords = dstSubImageCoords; 124// 125// if(params . flipX) 126// { 127// srcSubImageCoords . x = - srcSubImageCoords . x; 128// } 129// if(params . flipY) 130// { 131// srcSubImageCoords . y = - srcSubImageCoords . y; 132// } 133// if(params . rotateXY) 134// { 135// srcSubImageCoords . xy = srcSubImageCoords . yx; 136// } 137// 138// uvec4 srcValue = texelFetch(src, params . srcOffset + srcSubImageCoords, params . srcMip); 139// 140// if(params . premultiplyAlpha) 141// { 142// srcValue . rgb *= srcValue . a; 143// } 144// else if(params . unmultiplyAlpha && srcValue . a > 0) 145// { 146// srcValue . rgb /= srcValue . a; 147// } 148// 149// uvec4 dstValue = uvec4(srcValue); 150// 151// if(params . dstHasLuminance) 152// { 153// dstValue . rg = dstValue . ra; 154// } 155// else if(params . dstIsAlpha) 156// { 157// dstValue . r = dstValue . a; 158// } 159// else 160// { 161// int defaultChannelsMask = params . dstDefaultChannelsMask; 162// if((defaultChannelsMask & 2)!= 0) 163// { 164// dstValue . g = 0; 165// } 166// if((defaultChannelsMask & 4)!= 0) 167// { 168// dstValue . b = 0; 169// } 170// if((defaultChannelsMask & 8)!= 0) 171// { 172// dstValue . a = 1; 173// } 174// } 175// 176// dst = dstValue; 177// } 178