// GENERATED FILE - DO NOT EDIT. // Generated by gen_vk_internal_shaders.py. // // Copyright 2018 The ANGLE Project Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. // // shaders/gen/BlitResolveStencilNoExport.comp.00000003.inc: // Pre-generated shader for the ANGLE Vulkan back-end. #pragma once constexpr uint8_t kBlitResolveStencilNoExport_comp_00000003[] = …; // Generated from: // // #version 450 core // // #extension GL_EXT_samplerless_texture_functions : require // // layout(local_size_x = 8, local_size_y = 8, local_size_z = 1)in; // // layout(push_constant)uniform PushConstants { // // ivec2 offset; // vec2 stretch; // vec2 invSrcExtent; // int srcLayer; // int srcWidth; // // ivec4 blitArea; // int destPitch; // // bool flipX; // bool flipY; // bool rotateXY; // } params; // // layout(set = 0, binding = 0)buffer dst // { // // uint destData[]; // }; // // layout(set = 0, binding = 1)uniform utexture2DMSArray stencil; // // void main() // { // ivec2 destSubImageCoords = ivec2(gl_GlobalInvocationID . x * 4, gl_GlobalInvocationID . y); // if(any(lessThanEqual(params . blitArea . zw, destSubImageCoords))) // { // return; // } // // destSubImageCoords += params . blitArea . xy; // ivec2 srcImageCoords = ivec2(destSubImageCoords); // // srcImageCoords -= params . offset; // // if(params . flipX) // srcImageCoords . x = - srcImageCoords . x; // if(params . flipY) // srcImageCoords . y = - srcImageCoords . y; // if(params . rotateXY) // srcImageCoords . xy = srcImageCoords . yx; // // int xDir = params . flipX ? - 1 : 1; // // uint outStencils = 0; // // for(int i = 0;i < 4;++ i) // { // // if(srcImageCoords . x >= 0 && srcImageCoords . x < params . srcWidth) // { // // uint stencilValue = texelFetch(stencil, ivec3(srcImageCoords, params . srcLayer), 0). x; // // outStencils |=(stencilValue & 0xFF)<<(i * 8); // // } // // srcImageCoords . x += xDir; // } // // destData[gl_GlobalInvocationID . y * params . destPitch + gl_GlobalInvocationID . x]= outStencils; // }