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