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