| // 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/ConvertVertex.comp.00000003.inc: |
| // Pre-generated shader for the ANGLE Vulkan back-end. |
| |
| #pragma once |
| constexpr uint8_t kConvertVertex_comp_00000003[] = { |
| 0x1f,0x8b,0x08,0x00,0x00,0x00,0x00,0x00,0x02,0xff,0x9d,0x56,0x4b,0x6c,0x55,0x55, |
| 0x14,0xbd,0xbb,0xef,0xf5,0xb5,0xb6,0x05,0x31,0x50,0xf9,0x14,0x09,0x8a,0x1f,0xb0, |
| 0xfc,0x94,0xa7,0x21,0x5a,0x1b,0x1d,0x10,0x1c,0x90,0x20,0x22,0x83,0x56,0x0c,0xb6, |
| 0x54,0x9e,0xa0,0x55,0x8c,0x88,0x12,0x6b,0x68,0x04,0x6a,0x99,0x91,0x62,0xa4,0xb1, |
| 0x23,0x2c,0x6a,0x6a,0x1b,0xeb,0x40,0x8c,0x50,0x71,0xa0,0x35,0xc6,0x01,0x2a,0xd1, |
| 0x12,0x8c,0x7c,0x3a,0x51,0x4c,0x1f,0x6d,0x69,0x22,0x55,0x8a,0x15,0xcf,0xba,0x7b, |
| 0x6d,0xbb,0x7d,0x61,0xe4,0x4b,0x4e,0xee,0xdb,0x6b,0xff,0xd6,0xde,0x67,0xdf,0x73, |
| 0x4f,0x22,0x6f,0x5e,0x41,0x14,0x49,0x54,0x14,0x15,0x46,0x63,0x12,0xc5,0xbf,0x1b, |
| 0xa2,0xbc,0x08,0x7f,0x8b,0xa3,0x54,0xfc,0x5c,0xb9,0x6a,0xed,0xaa,0xc5,0x2f,0x6e, |
| 0xab,0x5b,0x9c,0xbe,0x67,0x29,0xf4,0x93,0xa3,0x44,0x6c,0x07,0xdd,0xf5,0xc1,0x26, |
| 0x3f,0x3c,0x93,0x61,0xd5,0xd7,0x6c,0x7e,0x0e,0xf8,0xc5,0xb0,0xa6,0x04,0x3c,0x19, |
| 0xc7,0x8a,0xa2,0x07,0x69,0x8b,0xf5,0x70,0xb0,0xbe,0x4d,0xd3,0x44,0xf3,0xf8,0x34, |
| 0x4c,0x88,0x25,0x1d,0x96,0x47,0xac,0xd0,0x61,0x09,0x62,0x25,0x0e,0x4b,0x12,0x9b, |
| 0xe2,0xb0,0x7c,0x62,0xd3,0x1c,0x96,0x22,0x36,0xc3,0x61,0x05,0xc4,0x66,0x3b,0xac, |
| 0x90,0xd8,0x5c,0x87,0x5d,0x47,0xec,0x56,0x87,0x15,0x11,0x9b,0xef,0xb0,0x62,0x62, |
| 0x0b,0x1d,0x56,0x42,0x6c,0xa9,0xc3,0x26,0x11,0x4b,0x3b,0x6c,0x32,0xb1,0xe5,0xe8, |
| 0x7b,0xa8,0xd4,0x7a,0xb0,0x32,0x54,0xb8,0x91,0xfc,0xad,0x3f,0x75,0x39,0x7d,0x84, |
| 0x7d,0x1d,0xfb,0x03,0xfb,0x4d,0xe1,0x79,0xcb,0xbf,0x3a,0x95,0x6f,0x66,0x9f,0x21, |
| 0x0f,0xe4,0xc4,0xcb,0x5e,0x23,0x5e,0xd6,0xc5,0x1b,0xcc,0x89,0x37,0xc8,0x78,0x26, |
| 0x5f,0x64,0xed,0xb3,0x29,0xdf,0x2d,0x2a,0xcf,0x0c,0x6b,0x6a,0xa8,0x22,0x2f,0xb6, |
| 0x4f,0xc4,0xf1,0xf0,0xbf,0x34,0xd8,0xa4,0xd8,0x63,0xfc,0x6e,0x0c,0x9a,0x52,0xca, |
| 0x73,0xc2,0xe4,0xd8,0x7e,0xfd,0xdf,0x35,0x37,0xc4,0xbf,0x9d,0xfb,0x86,0x58,0xf7, |
| 0x53,0xbe,0x83,0x18,0xf2,0xcf,0x67,0x3e,0xf4,0xa4,0x9c,0xf2,0x02,0xe7,0x7f,0x27, |
| 0x6d,0x53,0x4e,0xbf,0x84,0xb3,0x65,0x72,0x9a,0xf5,0x94,0xb3,0x9e,0x0a,0xf6,0xd4, |
| 0xe4,0x4a,0xce,0x93,0xd9,0xaf,0xc8,0x91,0x57,0xd3,0x7e,0x5a,0x88,0xf2,0xa8,0xf3, |
| 0x5b,0xc7,0xde,0x9b,0x5c,0xcd,0x3e,0xdd,0x14,0x50,0x9b,0x85,0x39,0xdc,0xf3,0x8d, |
| 0xe4,0xfb,0x14,0xb9,0xd4,0xb1,0x5e,0xc8,0x9b,0x1c,0x3f,0xe4,0xcb,0x30,0x0e,0xec, |
| 0xb7,0x50,0xe7,0xeb,0xab,0xe7,0x6c,0x9a,0xbc,0x9d,0x73,0x6e,0x72,0x83,0xe3,0x05, |
| 0xf9,0xb5,0xb0,0xae,0x26,0x26,0xe4,0x46,0xce,0xb1,0xf1,0x7e,0xc3,0xf9,0x43,0x6e, |
| 0xc9,0xe9,0x57,0x3b,0xf7,0xc0,0xfc,0x3b,0x10,0x2f,0xfc,0x4c,0xee,0xcc,0xd9,0x9f, |
| 0x1e,0xbe,0x4f,0x26,0x1f,0xe7,0x1e,0x59,0xbc,0xbe,0x1c,0xfb,0x53,0x3c,0x17,0x20, |
| 0x63,0xbe,0xce,0xb0,0xfe,0xe9,0x41,0x3e,0x1b,0xcf,0x81,0xf2,0x41,0x5f,0x07,0x5c, |
| 0x5f,0x31,0xfb,0x03,0xec,0xd3,0x05,0xda,0x64,0xd9,0x57,0xc8,0x83,0xc4,0x10,0x67, |
| 0x88,0x7e,0x09,0xda,0x0f,0x93,0xc3,0x10,0xed,0x87,0x79,0x2e,0x0a,0xf5,0x23,0xfc, |
| 0xef,0xfb,0x5e,0xc4,0xf7,0xc5,0xea,0xb8,0x4b,0xf4,0xec,0x5c,0x18,0x24,0xc4,0xc1, |
| 0xfb,0x04,0xac,0x8f,0x35,0xde,0x1b,0xa6,0x30,0x8f,0xb3,0x13,0x31,0xf7,0x9f,0x01, |
| 0xc1,0x6c,0xfe,0x11,0xa4,0x65,0x3c,0xcf,0xaf,0x84,0xff,0x98,0x9d,0xb4,0xa8,0x1e, |
| 0xcf,0x87,0x82,0x15,0x38,0x8c,0x91,0x17,0xf4,0x0f,0x30,0xef,0x15,0xe2,0xb0,0xc1, |
| 0xfc,0xff,0xc5,0x77,0x26,0xe3,0x6c,0xc6,0x89,0x7f,0x18,0x6c,0x30,0xb3,0x7f,0xd3, |
| 0x6f,0x9c,0xb9,0x23,0xe6,0x1e,0x0b,0xf6,0xd0,0x5d,0xe5,0x07,0x03,0xf9,0xf1,0xff, |
| 0x72,0x78,0x2e,0xa3,0x0c,0x1c,0x72,0x92,0x32,0x9e,0x97,0xc2,0xa9,0x8c,0x3c,0x97, |
| 0x85,0x73,0x1f,0x9e,0xe5,0x61,0x15,0x38,0x5d,0xd6,0xe9,0x16,0x51,0x67,0x9c,0x8b, |
| 0x45,0x39,0xa3,0xa7,0xc6,0xb9,0x44,0x14,0xff,0x88,0x9c,0x27,0x89,0xc6,0x00,0x3e, |
| 0x0a,0x1b,0xc6,0x30,0xde,0xd0,0xe7,0x87,0x95,0x22,0x2f,0xfc,0xdf,0x1d,0x7c,0x11, |
| 0x6b,0xaa,0x68,0xbd,0xf0,0x6d,0x24,0x56,0x2a,0x8a,0x67,0x1d,0x8f,0xe9,0xe4,0xd1, |
| 0xe9,0x7a,0x37,0x43,0x14,0xb7,0xde,0xcd,0x14,0xf5,0x05,0x8e,0xde,0x95,0x39,0x0e, |
| 0xd0,0xcd,0x0a,0xab,0x8c,0x1c,0x66,0xb1,0x57,0xc6,0xa9,0x8c,0x3e,0xdd,0x39,0x7b, |
| 0xbd,0x86,0xfa,0x35,0x8e,0xcb,0x5a,0x72,0x59,0xe1,0xb8,0x3c,0x26,0x8a,0x37,0xb1, |
| 0x86,0x75,0xe4,0x02,0x7c,0x2f,0xb1,0x2a,0x87,0x59,0xac,0xc7,0x19,0x6b,0xb5,0x8b, |
| 0xb5,0x5e,0x14,0xb7,0xba,0x9e,0x10,0xf5,0x5d,0xef,0x7a,0xbe,0x81,0x18,0xce,0xb6, |
| 0xf7,0x89,0x3d,0x29,0x6a,0xbb,0x81,0xb5,0xd4,0xba,0xfa,0xa1,0xab,0x09,0xab,0x96, |
| 0xf5,0xd4,0xb0,0xfe,0x6e,0xca,0xb5,0x8e,0xd3,0xc7,0xe4,0xb4,0xc0,0x71,0x3a,0x2c, |
| 0x8a,0xdb,0xbe,0x7d,0x22,0x5a,0xe3,0x61,0xe7,0xf7,0x29,0xfd,0x96,0x38,0xbf,0x23, |
| 0xa2,0xb8,0xf9,0x1d,0x25,0xef,0x23,0x6e,0xbf,0x7b,0x44,0xe3,0x1d,0x75,0xb1,0x3e, |
| 0x63,0xac,0xb4,0x8b,0x75,0x4c,0x14,0x37,0xbf,0xcf,0x45,0x7d,0x8f,0xb9,0xbe,0x67, |
| 0x44,0xf1,0x8a,0xf8,0xbd,0x4b,0xc5,0xe7,0xf2,0xd3,0xa2,0x67,0x77,0x86,0x7a,0x8b, |
| 0xb7,0x59,0x54,0x67,0x39,0xb7,0x30,0x67,0xbd,0xcb,0xf9,0x8c,0x28,0xde,0xc9,0x1e, |
| 0x3f,0x2b,0x8a,0x55,0xf3,0xfd,0x6c,0x73,0x3d,0x86,0xae,0x1e,0xfb,0xcd,0x9e,0xe2, |
| 0xff,0x07,0xf4,0x7b,0xde,0xed,0x57,0x47,0x88,0x8c,0x73,0x6a,0xab,0x28,0x9e,0xe6, |
| 0xb7,0xa1,0x81,0x39,0x5f,0x10,0xd5,0x99,0xdd,0x36,0xda,0x35,0xf0,0x1b,0x61,0x76, |
| 0x2f,0x89,0xea,0x8c,0xff,0x76,0xf2,0x6f,0x74,0xfc,0x5f,0x16,0xc5,0x8d,0xff,0x2b, |
| 0xa2,0x98,0xf1,0x6f,0x76,0xfc,0xa1,0xdb,0x81,0x3c,0xe4,0xbf,0xc3,0xed,0xdb,0xab, |
| 0xa2,0xdf,0x9f,0x2a,0xce,0x4d,0x33,0x6d,0x1a,0x38,0x6b,0x4d,0x2e,0x0e,0xb8,0xee, |
| 0xc4,0x3e,0xd1,0x66,0x27,0x7d,0x9a,0x28,0x03,0x7f,0x9d,0x71,0x77,0x89,0x7e,0xc7, |
| 0xaa,0x5c,0xae,0xdd,0xa2,0x3d,0xd8,0xe5,0xf6,0x7a,0x8f,0x28,0xde,0x12,0xfd,0x37, |
| 0x56,0x93,0x3b,0xc7,0x06,0x59,0x17,0xf2,0xed,0x61,0x7e,0xcf,0xb5,0xd9,0xd9,0x0e, |
| 0x8b,0xd6,0x84,0x1a,0xe1,0xd7,0x44,0xdb,0x36,0xda,0xee,0x75,0xef,0xed,0x97,0x6e, |
| 0xa6,0x8c,0x63,0xaf,0x28,0x5e,0xe9,0xb0,0x7d,0x9c,0x6b,0x60,0xb6,0xef,0x2d,0xa2, |
| 0x78,0x3b,0xfb,0xdd,0xea,0xfa,0x04,0xdd,0xfe,0xb0,0xde,0x64,0xce,0xfd,0xe4,0xd0, |
| 0x4a,0x19,0x78,0x6f,0x88,0x83,0x19,0x78,0x4b,0xf4,0xec,0xdb,0xc7,0xde,0x01,0x3b, |
| 0x20,0x13,0xb8,0xf7,0x6b,0x65,0x9d,0xb0,0xb9,0x20,0x7a,0x0f,0x40,0xec,0x03,0xcc, |
| 0x65,0xf3,0xf3,0xb6,0xa8,0xde,0xd7,0xdd,0xe6,0x7a,0x34,0x22,0x3a,0x63,0xe8,0x1b, |
| 0x6c,0x5b,0x9d,0x6e,0x48,0xb4,0x87,0xd0,0xf5,0x52,0x67,0x35,0x1f,0xbc,0xc6,0xd9, |
| 0xf4,0x0e,0xcf,0xa6,0x83,0x9c,0x97,0x2e,0xd7,0x07,0xe8,0xda,0xc3,0x7a,0x8f,0x1c, |
| 0xda,0xdd,0x4c,0x1f,0xe2,0x4c,0xf7,0xb8,0x99,0x7e,0x57,0x14,0x07,0xef,0x2e,0xfa, |
| 0xc0,0xf7,0x0b,0xee,0x43,0x87,0xe8,0xbb,0x0d,0x8e,0x5f,0x13,0xeb,0x14,0xc5,0x47, |
| 0x72,0xfc,0xba,0x5c,0x4d,0xbf,0x8b,0xc6,0x46,0xfe,0x4e,0xf2,0xf1,0x67,0x64,0xb7, |
| 0xb3,0xbd,0xc4,0x59,0xc3,0x39,0x0a,0x3f,0xc4,0xd9,0xca,0x7b,0xd1,0x37,0xa2,0x7a, |
| 0xab,0xe1,0x5b,0xd6,0x70,0xdc,0xd5,0xf0,0x9d,0x28,0x6e,0x3d,0xfb,0x5e,0x14,0x6b, |
| 0xe1,0x9c,0xf4,0xbb,0xfe,0x40,0x77,0x22,0xac,0xd3,0xe4,0x71,0xc2,0xd5,0xf5,0x03, |
| 0xbf,0x29,0x7d,0x6e,0xe6,0x7e,0x14,0xc5,0xab,0xdd,0x59,0xd3,0x27,0x8a,0x67,0x78, |
| 0x8f,0xb3,0x19,0x38,0x29,0xaa,0x7b,0x24,0xf8,0xe2,0x0e,0x77,0x4a,0x94,0xff,0x99, |
| 0xf8,0x6e,0x98,0x8a,0x6d,0x7e,0x12,0xbd,0x86,0xdc,0x47,0x7d,0x2f,0x73,0xff,0x2c, |
| 0xaa,0x3b,0xc9,0x3e,0xf5,0x93,0xdf,0x69,0xce,0x18,0xf2,0x9e,0x65,0x3c,0xcb,0x77, |
| 0x4e,0x14,0xf3,0xf6,0xfd,0xae,0xaf,0xa3,0xa2,0x71,0x51,0xe3,0x39,0xd6,0xfc,0x15, |
| 0xf3,0xe1,0xde,0x82,0x7b,0xcc,0x28,0xfd,0x0b,0xe8,0x5f,0xe0,0xce,0x89,0x45,0xbc, |
| 0x37,0xd8,0x3b,0x61,0x77,0xa1,0x94,0xdb,0x8f,0x5f,0xb8,0x1f,0x0d,0x6e,0x3f,0x7e, |
| 0x15,0xc5,0xed,0x3b,0x72,0x5e,0x14,0xab,0x88,0x26,0x62,0xff,0xc6,0xbb,0xca,0x79, |
| 0x99,0xf8,0xb6,0x0c,0x88,0xde,0x5f,0x33,0xd4,0x57,0xe2,0xee,0x4b,0x9e,0xfe,0x6e, |
| 0x86,0xe7,0x78,0xe8,0xe2,0xf2,0xb0,0xfe,0x01,0x9b,0x7c,0xb7,0xb1,0x2c,0x10,0x00, |
| 0x00 |
| }; |
| |
| // Generated from: |
| // |
| // #version 450 core |
| // |
| // layout(local_size_x = 64, local_size_y = 1, local_size_z = 1)in; |
| // |
| // layout(set = 0, binding = 0)buffer dst |
| // { |
| // uint destData[]; |
| // }; |
| // |
| // layout(set = 0, binding = 1)buffer src |
| // { |
| // uint srcData[]; |
| // }; |
| // |
| // layout(push_constant)uniform PushConstants |
| // { |
| // |
| // uint outputCount; |
| // |
| // uint componentCount; |
| // |
| // uint srcOffset; |
| // uint dstOffset; |
| // |
| // uint Ns; |
| // uint Bs; |
| // uint Ss; |
| // uint Es; |
| // |
| // uint Nd; |
| // uint Bd; |
| // uint Sd; |
| // uint Ed; |
| // |
| // uint srcEmulatedAlpha; |
| // |
| // bool isSrcHDR; |
| // bool isSrcA2BGR10; |
| // } params; |
| // |
| // uint getSourceComponentOffset(uint vertex, uint component) |
| // { |
| // return vertex * params . Ss + component * params . Bs + params . srcOffset; |
| // } |
| // |
| // uint getDestinationComponentOffset(uint vertex, uint component) |
| // { |
| // return vertex * params . Sd + component * params . Bd + params . dstOffset; |
| // } |
| // |
| // uint getShiftBits(uint offset, uint B) |
| // { |
| // |
| // uint shift =(offset % 4)* 8; |
| // |
| // return shift; |
| // } |
| // |
| // uint loadSourceComponent(uint cd) |
| // { |
| // |
| // uint vertex = cd / params . Nd; |
| // uint component = cd % params . Nd; |
| // |
| // if(component >= params . Ns && component < 3) |
| // { |
| // return 0; |
| // } |
| // |
| // uint offset = getSourceComponentOffset(vertex, component); |
| // uint block = srcData[offset / 4]; |
| // |
| // uint shiftBits; |
| // uint valueBits; |
| // uint valueMask; |
| // |
| // if(params . isSrcHDR) |
| // { |
| // valueBits = component == 3 ? 2 : 10; |
| // valueMask = component == 3 ? 0x03 : 0x3FF; |
| // if(params . isSrcA2BGR10) |
| // { |
| // shiftBits = 10 * component; |
| // } |
| // else |
| // { |
| // |
| // shiftBits = component == 3 ? 0 :(valueBits *(2 - component)+ 2); |
| // } |
| // } |
| // else |
| // { |
| // shiftBits = getShiftBits(offset, params . Bs); |
| // valueBits = params . Bs * 8; |
| // valueMask = valueBits == 32 ? - 1 :(1 << valueBits)- 1; |
| // } |
| // |
| // uint valueAsUint; |
| // |
| // if(component >= params . Ns && component == 3) |
| // { |
| // valueAsUint = params . srcEmulatedAlpha; |
| // } |
| // else |
| // { |
| // valueAsUint =(block >> shiftBits)& valueMask; |
| // } |
| // |
| // uint value = valueAsUint; |
| // |
| // return value; |
| // } |
| // |
| // float convertComponent(uint srcValue) |
| // { |
| // |
| // return srcValue; |
| // } |
| // |
| // uint makeDestinationComponent(uint cd, float value) |
| // { |
| // |
| // uint valueAsUint; |
| // |
| // if(params . Bd == 2) |
| // { |
| // |
| // uint shift =((cd & 1)== 0)? 0 : 16; |
| // valueAsUint = packHalf2x16(vec2(value, 0.0))<< shift; |
| // } |
| // else |
| // { |
| // valueAsUint = floatBitsToInt(value); |
| // } |
| // |
| // return valueAsUint; |
| // } |
| // |
| // void storeDestinationComponents(uint valueAsUint) |
| // { |
| // |
| // destData[gl_GlobalInvocationID . x + params . dstOffset / 4]= valueAsUint; |
| // } |
| // |
| // void main() |
| // { |
| // if(gl_GlobalInvocationID . x >= params . outputCount) |
| // return; |
| // |
| // uint valueOut = 0; |
| // for(uint i = 0;i < params . Ed;++ i) |
| // { |
| // uint cd = gl_GlobalInvocationID . x * params . Ed + i; |
| // if(cd >= params . componentCount) |
| // { |
| // break; |
| // } |
| // |
| // uint srcValue = loadSourceComponent(cd); |
| // float destValue = convertComponent(srcValue); |
| // valueOut |= makeDestinationComponent(cd, destValue); |
| // } |
| // |
| // storeDestinationComponents(valueOut); |
| // } |