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/BlitResolveStencilNoExport.comp.00000001.inc: 9// Pre-generated shader for the ANGLE Vulkan back-end. 10 11#pragma once 12constexpr uint8_t kBlitResolveStencilNoExport_comp_00000001[] = { 13 0x1f,0x8b,0x08,0x00,0x00,0x00,0x00,0x00,0x02,0xff,0x6d,0x96,0xfb,0x4f,0xd6,0x55, 14 0x1c,0xc7,0x0f,0x3c,0xf0,0x80,0x4f,0xa1,0x50,0xa0,0x06,0x2a,0x12,0xcd,0x2e,0x34, 15 0xb5,0xcd,0xeb,0x02,0x96,0x5d,0xa4,0x95,0x26,0xd0,0x45,0x4b,0xd6,0xd6,0x46,0x3f, 16 0x70,0x29,0x5a,0x08,0x5b,0x45,0x42,0x48,0x86,0x35,0x33,0xed,0xa2,0xd6,0x6c,0xb9, 17 0xe6,0x56,0x4b,0x62,0x69,0xb6,0x5a,0xde,0x7e,0xa8,0xb5,0xf5,0x8b,0x69,0xf6,0x93, 18 0xfd,0x1b,0xdd,0xd7,0xea,0xf3,0x3e,0xdf,0xd7,0x69,0x9f,0x3d,0xeb,0xd9,0xce,0xce, 19 0xf7,0xbc,0x3f,0xf7,0xdb,0x39,0x4f,0xae,0xb4,0xb9,0x22,0x84,0x92,0x50,0x08,0x95, 20 0xe1,0xe7,0x90,0xfd,0x6a,0x42,0xa9,0x21,0x21,0x5c,0x15,0xf2,0x71,0xef,0xd8,0xf4, 21 0xe0,0xa6,0xe5,0xc3,0x3b,0x7a,0x97,0xaf,0x5a,0xbd,0x52,0xf4,0xb9,0x21,0x17,0xf9, 22 0x44,0x9b,0x67,0x3c,0xe5,0xb6,0x97,0xd9,0x7a,0xea,0x89,0xbe,0xa7,0x85,0x57,0xd9, 23 0xaa,0x36,0xbc,0x2c,0xea,0x0a,0xa6,0x39,0x5b,0x51,0x97,0xa1,0x55,0x51,0x77,0x08, 24 0x8b,0x6c,0xdd,0x6b,0xd2,0x8b,0xb1,0xdb,0xcc,0x9e,0xb0,0x12,0xb0,0x4a,0x87,0x95, 25 0x82,0x55,0x3b,0x2c,0x07,0xb6,0xd0,0x61,0x65,0x60,0xde,0x46,0x39,0xd8,0x52,0x87, 26 0xe5,0xc1,0x56,0x3a,0xac,0x02,0x6c,0x95,0xc3,0x2a,0xc1,0xd6,0x39,0x6c,0x0e,0x58, 27 0x6b,0x8c,0x2b,0xf7,0x9f,0x7f,0x8a,0x71,0xca,0xf6,0xeb,0x89,0x27,0x9d,0x9b,0x5c, 28 0x0e,0xa6,0x8b,0xe8,0xd3,0xd0,0x93,0xfc,0x71,0x7c,0x2b,0xc3,0xde,0x4c,0x51,0x8e, 29 0x64,0x6f,0x86,0xd8,0xc5,0x3f,0x5b,0xa4,0x6f,0x16,0x7d,0xe9,0x7c,0x96,0x9c,0x5f, 30 0x67,0xeb,0x5a,0xb3,0x52,0x1a,0xe9,0xb9,0x28,0xaf,0xef,0x3a,0xe3,0xc9,0x93,0x1b, 31 0xf9,0xb8,0xc0,0xce,0x15,0xf8,0x90,0xe8,0x05,0xe8,0x01,0xba,0xf4,0x15,0xf0,0x61, 32 0xa9,0x9d,0xaf,0x46,0x56,0xf8,0xed,0x9c,0xab,0xc0,0x5a,0x90,0x9f,0x8b,0xbc,0xf8, 33 0xe7,0x41,0x2b,0x38,0xfa,0x35,0xc4,0x9c,0xce,0x75,0xf0,0xcc,0x37,0x2b,0xf5,0xd8, 34 0x97,0xed,0x06,0xdb,0xeb,0xf1,0x4d,0xe7,0x45,0x2e,0x5f,0x4b,0xcc,0xb2,0x6a,0xd1, 35 0xe0,0x56,0x9e,0x95,0xf8,0x0a,0x6e,0xc9,0x97,0x25,0xd4,0x73,0x31,0xbe,0xeb,0xdc, 36 0x08,0xd6,0xe2,0x72,0x53,0x0e,0x7f,0x13,0x34,0xe9,0xab,0x35,0x2f,0x96,0xe1,0xc7, 37 0x8d,0xb6,0x2f,0xc3,0xaf,0x24,0xb7,0x86,0x18,0x24,0xb7,0x16,0xb9,0x06,0x47,0x6f, 38 0x25,0x27,0xe9,0xbc,0x81,0x1e,0x14,0xff,0x9d,0xf0,0x17,0x1c,0x7d,0x33,0xfd,0x98, 39 0xce,0x5b,0x8b,0xfc,0xec,0xb5,0xf5,0x8f,0xfd,0xd2,0x79,0xc8,0xe5,0x54,0x39,0x1b, 40 0x76,0x35,0x78,0x0e,0xd9,0x7c,0xec,0x8d,0x39,0x61,0x12,0x5b,0x25,0xf0,0x14,0xef, 41 0x92,0xd9,0xc5,0xf7,0x24,0xb9,0xd2,0x79,0x0a,0xac,0xde,0x22,0xdf,0x0d,0xdf,0x2b, 42 0x60,0xbb,0xe1,0xd3,0x79,0x1a,0xac,0xc1,0xea,0xf9,0x2a,0x3a,0x92,0x9f,0x7b,0x8b, 43 0xf2,0xb6,0x9f,0xde,0x52,0x5e,0xdf,0xa6,0xde,0xe9,0x7c,0x18,0x3f,0x7d,0xaf,0x1c, 44 0x51,0xdc,0xb1,0x86,0xb9,0x38,0x3f,0x85,0xd8,0x0b,0xd9,0x9c,0x1c,0xc7,0xa7,0x4f, 45 0xb1,0x31,0x83,0x4f,0x3a,0xcf,0x16,0xd9,0x3d,0x41,0x3e,0xc4,0xff,0x35,0x34,0xdf, 46 0xa3,0x67,0xc8,0xff,0xad,0xc6,0xa5,0x5e,0x3f,0x0b,0x76,0x86,0x7e,0x5d,0x63,0x5d, 47 0x52,0x8a,0x6f,0x01,0x9f,0x7f,0x37,0x44,0xbd,0xf3,0x9b,0x9d,0xce,0x81,0xff,0x65, 48 0xdf,0x9a,0x87,0xf3,0xd0,0xcf,0xc7,0xda,0x97,0xc7,0xb9,0xa8,0x66,0x76,0x44,0x6f, 49 0xc3,0x6e,0x0d,0xf8,0x94,0xf1,0x14,0xe2,0x1c,0x67,0x98,0x66,0x66,0x0c,0xdf,0x6b, 50 0xc1,0x93,0x9e,0xf9,0xe8,0xa9,0x73,0x7a,0x16,0x80,0x27,0x99,0x85,0x60,0x9d,0x26, 51 0x53,0xc1,0x1d,0x51,0x0b,0x2e,0x3d,0x4d,0xdc,0x2d,0x8d,0xcc,0x40,0x1b,0xf3,0xd6, 52 0x0c,0xbe,0xc5,0xa4,0x24,0x77,0x03,0x58,0x33,0x39,0x53,0xdc,0x27,0x4d,0x5e,0x33, 53 0x71,0x13,0x74,0xe9,0x7e,0xd7,0xe4,0x35,0x23,0x37,0x83,0x2b,0x27,0x2d,0xe4,0xe4, 54 0x4f,0xa3,0x09,0xbf,0x25,0xe6,0x3b,0xcb,0x8b,0xbe,0xff,0xb0,0xfd,0x1c,0xe7,0x16, 55 0x67,0x73,0x85,0xb3,0x99,0xfa,0x74,0x82,0x38,0x6e,0xc3,0xde,0x8a,0x38,0x03,0xd9, 56 0x9d,0xb1,0x1a,0x5c,0x71,0xad,0xe5,0x3e,0x6f,0x64,0x46,0xdb,0xe0,0x59,0x0f,0xfe, 57 0xb2,0xf1,0x34,0xc4,0x3e,0xc9,0xe4,0xd6,0x3b,0xb9,0x36,0xe4,0x5a,0x9d,0x5c,0x3b, 58 0xf8,0x2e,0xe4,0xee,0x40,0xb6,0x1d,0x39,0xcd,0xf2,0x5d,0xc8,0x6d,0x70,0xf5,0xb8, 59 0x1b,0xfc,0x13,0xe3,0x51,0x5e,0xee,0x01,0x9b,0x4b,0x6e,0x3a,0x5c,0x6e,0x44,0xdb, 60 0x18,0xef,0xf4,0x2c,0x17,0xfa,0xee,0x32,0x39,0xcd,0xc6,0x7d,0xd8,0xd4,0x6f,0x9c, 61 0x59,0xbf,0x1f,0xbc,0xdb,0x2a,0x2d,0x9f,0xbe,0x03,0x4b,0x7c,0xca,0x6b,0xd2,0xa5, 62 0xfd,0x17,0xcb,0x9c,0xf8,0x7e,0x80,0xa7,0x05,0x99,0x8d,0x2e,0x86,0x07,0x88,0x61, 63 0xb3,0x8b,0x61,0x0b,0x78,0x8a,0xa1,0x13,0x2c,0xc5,0xd0,0xed,0x62,0xe8,0x8c,0x3e, 64 0x87,0x88,0xc9,0x6e,0x97,0x8b,0xe1,0x21,0x6c,0x97,0xb8,0x18,0x1e,0x06,0x4f,0x31, 65 0x7c,0x0f,0x96,0xf8,0x14,0x43,0xd2,0xd5,0xed,0x62,0xb8,0x08,0x4f,0x07,0x32,0x5d, 66 0x2e,0x86,0x6d,0xc4,0xb0,0xd5,0xc5,0xf0,0x28,0x78,0x8a,0xe1,0x31,0xb0,0x14,0x43, 67 0x8f,0x8b,0x41,0xb4,0xed,0xb6,0x7a,0xb0,0xbb,0x9d,0x9e,0x94,0xdd,0xc7,0xb1,0x7d, 68 0xd1,0xdd,0x9b,0xf2,0x31,0xf1,0xf6,0x38,0x1f,0x7f,0x82,0xaf,0x1b,0x39,0xe9,0xf9, 69 0xd8,0xe2,0xd4,0x5c,0x3e,0x49,0x2f,0xf4,0xd2,0x9f,0xd2,0xd1,0x87,0x8e,0x3e,0xa7, 70 0xe3,0x32,0x7a,0xa4,0xf7,0x82,0xad,0x41,0x68,0x8a,0xe9,0x47,0xfc,0x17,0xed,0x8a, 71 0xa3,0x49,0xff,0x25,0xfa,0xb7,0x27,0xc6,0x9c,0xd1,0x3e,0x23,0xf6,0x67,0xa0,0xeb, 72 0xed,0xf8,0xd5,0xe2,0x1d,0x80,0x9e,0xe2,0x17,0xbd,0xdf,0xd6,0x00,0xfe,0xf4,0xbb, 73 0x1a,0x3e,0x8b,0x4f,0x21,0xde,0x8d,0x99,0xbe,0x1d,0xe0,0xc3,0xe4,0x72,0xd4,0xe9, 74 0x12,0x6d,0xc4,0xd6,0x28,0xba,0x46,0xa8,0x93,0xde,0xa6,0xe7,0xa9,0xd3,0x10,0x75, 75 0x92,0xdf,0x2f,0x80,0x0f,0xd1,0x1f,0x63,0x60,0x5f,0x62,0xeb,0x45,0x6c,0x8d,0x91, 76 0xb3,0xa4,0x77,0x94,0xd8,0xc5,0xb3,0x13,0x9f,0xfa,0xe1,0x1f,0xc1,0xaf,0x09,0xe7, 77 0xd7,0xce,0xd8,0x83,0x21,0x62,0x92,0x1f,0xc7,0x87,0xc9,0x78,0x37,0x64,0x6f,0x9e, 78 0xce,0x7a,0xdf,0xf6,0xf0,0xb6,0x3d,0x62,0x3e,0xe8,0x5d,0x7b,0x0d,0x9e,0x3d,0xee, 79 0xce,0x78,0x9d,0x58,0xf6,0xba,0x3b,0x63,0x1f,0x78,0xba,0x6b,0xde,0x20,0x77,0xfb, 80 0x5c,0x0e,0x0e,0x20,0xb7,0xdf,0xe5,0xe0,0x4d,0xf0,0x94,0x83,0xb7,0xc0,0x52,0x0d, 81 0xde,0x41,0x57,0x70,0xd8,0x41,0xb0,0x92,0x38,0x9f,0xf9,0xf8,0xa6,0x1e,0x82,0xf7, 82 0x20,0x3a,0xb6,0x59,0x7e,0x0e,0xc7,0x3b,0x3a,0x8b,0xe1,0x10,0x77,0xf9,0x30,0x7a, 83 0xd4,0x53,0xef,0x41,0x0f,0xf1,0x6e,0xc8,0xb0,0xf7,0xc1,0x8f,0xf0,0x3e,0xc9,0xc7, 84 0x0f,0xe8,0x21,0xdd,0x13,0xdf,0xc0,0x77,0x14,0x5e,0xd1,0xbe,0x05,0xfb,0x90,0x3e, 85 0x3d,0x4a,0xbd,0x52,0xbe,0x27,0x5c,0x1f,0x5f,0x81,0x67,0x14,0xfe,0x71,0x17,0xfb, 86 0x31,0x66,0xe5,0x25,0xe2,0xfc,0x88,0xfa,0x1f,0x73,0x77,0xc6,0x05,0xf0,0xcb,0x6e, 87 0x1e,0x07,0xb1,0x33,0xc8,0x9b,0x91,0x67,0x0e,0x2e,0xfd,0xcf,0xbc,0x0d,0xb8,0x7a, 88 0x9c,0xa4,0x1e,0x27,0x5c,0x3d,0x3e,0x07,0x1f,0xe3,0x2e,0x39,0x05,0x96,0xde,0xea, 89 0x2f,0x78,0x63,0x4f,0x61,0x4b,0xd8,0x57,0xe0,0x35,0x51,0x77,0x3e,0xfe,0xd7,0x38, 90 0xcd,0xff,0x91,0x56,0xe8,0xed,0xd6,0x93,0xa7,0x89,0xdd,0xbf,0x81,0xda,0xff,0xb6, 91 0x4a,0xae,0xb3,0xf5,0x2f,0x54,0xd8,0x4e,0x70,0xc4,0x0d,0x00,0x00 92}; 93 94// Generated from: 95// 96// #version 450 core 97// 98// layout(local_size_x = 8, local_size_y = 8, local_size_z = 1)in; 99// 100// layout(push_constant)uniform PushConstants { 101// 102// vec2 offset; 103// vec2 stretch; 104// vec2 invSrcExtent; 105// int srcLayer; 106// int srcWidth; 107// 108// ivec4 blitArea; 109// int destPitch; 110// 111// bool flipX; 112// bool flipY; 113// bool rotateXY; 114// } params; 115// 116// layout(set = 0, binding = 0)buffer dest 117// { 118// 119// uint destData[]; 120// }; 121// 122// layout(set = 0, binding = 1)uniform utexture2DArray stencil; 123// 124// layout(set = 0, binding = 2)uniform sampler blitSampler; 125// 126// void main() 127// { 128// ivec2 destSubImageCoords = ivec2(gl_GlobalInvocationID . x * 4, gl_GlobalInvocationID . y); 129// if(any(lessThanEqual(params . blitArea . zw, destSubImageCoords))) 130// { 131// return; 132// } 133// 134// destSubImageCoords += params . blitArea . xy; 135// vec2 srcImageCoords = vec2(destSubImageCoords); 136// 137// srcImageCoords *= params . stretch; 138// 139// srcImageCoords -= params . offset; 140// 141// if(params . flipX) 142// srcImageCoords . x = - srcImageCoords . x; 143// if(params . flipY) 144// srcImageCoords . y = - srcImageCoords . y; 145// if(params . rotateXY) 146// srcImageCoords . xy = srcImageCoords . yx; 147// 148// int xDir = params . flipX ? - 1 : 1; 149// 150// uint outStencils = 0; 151// 152// for(int i = 0;i < 4;++ i) 153// { 154// 155// if(srcImageCoords . x >= 0 && srcImageCoords . x < params . srcWidth) 156// { 157// 158// uint stencilValue = texture(usampler2DArray(stencil, blitSampler), vec3(srcImageCoords * params . invSrcExtent, params . srcLayer)). x; 159// 160// outStencils |=(stencilValue & 0xFF)<<(i * 8); 161// 162// } 163// 164// srcImageCoords . x += xDir; 165// } 166// 167// destData[gl_GlobalInvocationID . y * params . destPitch + gl_GlobalInvocationID . x]= outStencils; 168// } 169