yum-mirror/glslang
git clone https://git.yummers.dev/yum-mirror/glslang
5942c015
main
1#version 450 2 3#extension GL_NV_shader_texture_footprint : require 4 5 6layout (location = 0 )in vec2 P2 ; 7layout (location = 2 )in vec3 P3 ; 8layout (location = 3 )in flat int granularity ; 9layout (location = 4 )in float lodClamp ; 10layout (location = 5 )in float lod ; 11layout (location = 6 )in vec2 dx ; 12layout (location = 8 )in vec2 dy ; 13layout (location = 9 )in float bias ; 14 15uniform sampler2D sample2D ; 16uniform sampler3D sample3D ; 17 18buffer result2D { 19bool ret2D ; 20uvec2 anchor2D ; 21uvec2 offset2D ; 22uvec2 mask2D ; 23uint lod2D ; 24uint granularity2D ; 25}; 26 27buffer result3D { 28bool ret3D ; 29uvec3 anchor3D ; 30uvec3 offset3D ; 31uvec2 mask3D ; 32uint lod3D ; 33uint granularity3D ; 34}; 35 36void main () { 37gl_TextureFootprint2DNV fp2D ; 38gl_TextureFootprint3DNV fp3D ; 39 40ret2D = textureFootprintNV (sample2D ,P2 ,granularity , true,fp2D ); 41anchor2D = fp2D .anchor ; 42offset2D = fp2D .offset ; 43mask2D = fp2D .mask ; 44lod2D = fp2D .lod ; 45granularity2D = fp2D .granularity ; 46 47ret2D = textureFootprintNV (sample2D ,P2 ,granularity , true,fp2D ,bias ); 48anchor2D += fp2D .anchor ; 49offset2D += fp2D .offset ; 50mask2D += fp2D .mask ; 51lod2D += fp2D .lod ; 52granularity2D += fp2D .granularity ; 53 54ret2D = textureFootprintClampNV (sample2D ,P2 ,lodClamp ,granularity , true,fp2D ); 55anchor2D += fp2D .anchor ; 56offset2D += fp2D .offset ; 57mask2D += fp2D .mask ; 58lod2D += fp2D .lod ; 59granularity2D += fp2D .granularity ; 60 61ret2D = textureFootprintClampNV (sample2D ,P2 ,lodClamp ,granularity , true,fp2D ,bias ); 62anchor2D += fp2D .anchor ; 63offset2D += fp2D .offset ; 64mask2D += fp2D .mask ; 65lod2D += fp2D .lod ; 66granularity2D += fp2D .granularity ; 67 68ret2D = textureFootprintLodNV (sample2D ,P2 ,lod ,granularity , true,fp2D ); 69anchor2D += fp2D .anchor ; 70offset2D += fp2D .offset ; 71mask2D += fp2D .mask ; 72lod2D += fp2D .lod ; 73granularity2D += fp2D .granularity ; 74 75ret2D = textureFootprintGradNV (sample2D ,P2 ,dx ,dy ,granularity , true,fp2D ); 76anchor2D += fp2D .anchor ; 77offset2D += fp2D .offset ; 78mask2D += fp2D .mask ; 79lod2D += fp2D .lod ; 80granularity2D += fp2D .granularity ; 81 82ret2D = textureFootprintGradClampNV (sample2D ,P2 ,dx ,dy ,lodClamp ,granularity , true,fp2D ); 83anchor2D += fp2D .anchor ; 84offset2D += fp2D .offset ; 85mask2D += fp2D .mask ; 86lod2D += fp2D .lod ; 87granularity2D += fp2D .granularity ; 88 89ret3D = textureFootprintNV (sample3D ,P3 ,granularity , true,fp3D ); 90anchor3D = fp3D .anchor ; 91offset3D = fp3D .offset ; 92mask3D = fp3D .mask ; 93lod3D = fp3D .lod ; 94granularity3D = fp3D .granularity ; 95 96ret3D = textureFootprintNV (sample3D ,P3 ,granularity , true,fp3D ,bias ); 97anchor3D += fp3D .anchor ; 98offset3D += fp3D .offset ; 99mask3D += fp3D .mask ; 100lod3D += fp3D .lod ; 101granularity3D += fp3D .granularity ; 102 103ret3D = textureFootprintClampNV (sample3D ,P3 ,lodClamp ,granularity , true,fp3D ); 104anchor3D += fp3D .anchor ; 105offset3D += fp3D .offset ; 106mask3D += fp3D .mask ; 107lod3D += fp3D .lod ; 108granularity3D += fp3D .granularity ; 109 110ret3D = textureFootprintClampNV (sample3D ,P3 ,lodClamp ,granularity , true,fp3D ,bias ); 111anchor3D += fp3D .anchor ; 112offset3D += fp3D .offset ; 113mask3D += fp3D .mask ; 114lod3D += fp3D .lod ; 115granularity3D += fp3D .granularity ; 116 117ret3D = textureFootprintLodNV (sample3D ,P3 ,lod ,granularity , true,fp3D ); 118anchor3D += fp3D .anchor ; 119offset3D += fp3D .offset ; 120mask3D += fp3D .mask ; 121lod3D += fp3D .lod ; 122granularity3D += fp3D .granularity ; 123}