PageSourceSearch

https://kaosugoroku-ada9zg9s.manus.space/assets/dds.pure-oJEU1i57.js

js kaosugoroku-ada9zg9s.manus.space collected 2026-10-03 05:02:46 UTC 7,053 bytes, 1 lines download raw bytes

vendor: 7,053 bytes, line 1
1import{F as d,T as w,C as O,b as H}from"./index-DzAG3EEj.js";import{C as it}from"./cubemapToSphericalPolynomial-DOXEnyhC.js";const ut=542327876,Q=131072,V=512,Y=4,Z=64,$=131072;function E(_){return _.charCodeAt(0)+(_.charCodeAt(1)<<8)+(_.charCodeAt(2)<<16)+(_.charCodeAt(3)<<24)}function yt(_){return String.fromCharCode(_&255,_>>8&255,_>>16&255,_>>24&255)}const S=E("DXT1"),v=E("DXT3"),tt=E("DXT5"),N=E("DX10"),rt=113,et=116,at=2,ft=10,Ft=88,W=31,pt=0,Ct=1,st=2,ot=3,T=4,nt=7,j=20,ct=21,Gt=22,bt=23,mt=24,Bt=25,Rt=26,_t=28,ht=32;class A{static GetDDSInfo(a){const o=new Int32Array(a.buffer,a.byteOffset,W),s=new Int32Array(a.buffer,a.byteOffset,W+4);let n=1;o[st]&Q&&(n=Math.max(1,o[nt]));const u=o[ct],F=u===N?s[ht]:0;let r=0;switch(u){case rt:r=2;break;case et:r=1;break;case N:if(F===ft){r=2;break}if(F===at){r=1;break}}return{width:o[T],height:o[ot],mipmapCount:n,isFourCC:(o[j]&Y)===Y,isRGB:(o[j]&Z)===Z,isLuminance:(o[j]&$)===$,isCube:(o[_t]&V)===V,isCompressed:u===S||u===v||u===tt,dxgiFormat:F,textureType:r}}static _GetHalfFloatAsFloatRGBAArrayBuffer(a,o,s,n,u,F){const r=new Float32Array(n),c=new Uint16Array(u,s);let t=0;for(let e=0;e<o;e++)for(let l=0;l<a;l++){const f=(l+e*a)*4;r[t]=d(c[f]),r[t+1]=d(c[f+1]),r[t+2]=d(c[f+2]),A.StoreLODInAlphaChannel?r[t+3]=F:r[t+3]=d(c[f+3]),t+=4}return r}static _GetHalfFloatRGBAArrayBuffer(a,o,s,n,u,F){if(A.StoreLODInAlphaChannel){const r=new Uint16Array(n),c=new Uint16Array(u,s);let t=0;for(let e=0;e<o;e++)for(let l=0;l<a;l++){const f=(l+e*a)*4;r[t]=c[f],r[t+1]=c[f+1],r[t+2]=c[f+2],r[t+3]=w(F),t+=4}return r}return new Uint16Array(u,s,n)}static _GetFloatRGBAArrayBuffer(a,o,s,n,u,F){if(A.StoreLODInAlphaChannel){const r=new Float32Array(n),c=new Float32Array(u,s);let t=0;for(let e=0;e<o;e++)for(let l=0;l<a;l++){const f=(l+e*a)*4;r[t]=c[f],r[t+1]=c[f+1],r[t+2]=c[f+2],r[t+3]=F,t+=4}return r}return new Float32Array(u,s,n)}static _GetFloatAsHalfFloatRGBAArrayBuffer(a,o,s,n,u,F){const r=new Uint16Array(n),c=new Float32Array(u,s);let t=0;for(let e=0;e<o;e++)for(let l=0;l<a;l++)r[t]=w(c[t]),r[t+1]=w(c[t+1]),r[t+2]=w(c[t+2]),A.StoreLODInAlphaChannel?r[t+3]=w(F):r[t+3]=w(c[t+3]),t+=4;return r}static _GetFloatAsUIntRGBAArrayBuffer(a,o,s,n,u,F){const r=new Uint8Array(n),c=new Float32Array(u,s);let t=0;for(let e=0;e<o;e++)for(let l=0;l<a;l++){const f=(l+e*a)*4;r[t]=O(c[f])*255,r[t+1]=O(c[f+1])*255,r[t+2]=O(c[f+2])*255,A.StoreLODInAlphaChannel?r[t+3]=F:r[t+3]=O(c[f+3])*255,t+=4}return r}static _GetHalfFloatAsUIntRGBAArrayBuffer(a,o,s,n,u,F){const r=new Uint8Array(n),c=new Uint16Array(u,s);let t=0;for(let e=0;e<o;e++)for(let l=0;l<a;l++){const f=(l+e*a)*4;r[t]=O(d(c[f]))*255,r[t+1]=O(d(c[f+1]))*255,r[t+2]=O(d(c[f+2]))*255,A.StoreLODInAlphaChannel?r[t+3]=F:r[t+3]=O(d(c[f+3]))*255,t+=4}return r}static _GetRGBAArrayBuffer(a,o,s,n,u,F,r,c,t){const e=new Uint8Array(n),l=new Uint8Array(u,s);let f=0;for(let B=0;B<o;B++)for(let i=0;i<a;i++){const y=(i+B*a)*4;e[f]=l[y+F],e[f+1]=l[y+r],e[f+2]=l[y+c],e[f+3]=l[y+t],f+=4}return e}static _ExtractLongWordOrder(a){return a===0||a===255||a===-16777216?0:1+A._ExtractLongWordOrder(a>>8)}static _GetRGBArrayBuffer(a,o,s,n,u,F,r,c){const t=new Uint8Array(n),e=new Uint8Array(u,s);let l=0;for(let f=0;f<o;f++)for(let B=0;B<a;B++){const i=(B+f*a)*3;t[l]=e[i+F],t[l+1]=e[i+r],t[l+2]=e[i+c],l+=3}return t}static _GetLuminanceArrayBuffer(a,o,s,n,u){const F=new Uint8Array(n),r=new Uint8Array(u,s);let c=0;for(let t=0;t<o;t++)for(let e=0;e<a;e++){const l=e+t*a;F[c]=r[l],c++}return F}static UploadDDSLevels(a,o,s,n,u,F,r=-1,c,t=!0){let e=null;n.sphericalPolynomial&&(e=[]);const l=!!a.getCaps().s3tc;o.generateMipMaps=u;const f=new Int32Array(s.buffer,s.byteOffset,W);let B,i,y,p=0,b,h,X,I,L=0,M=1;if(f[pt]!==ut){H.Error("Invalid magic number in DDS header");return}if(!n.isFourCC&&!n.isRGB&&!n.isLuminance){H.Error("Unsupported format, must contain a FourCC, RGB or LUMINANCE code");return}if(n.isCompressed&&!l){H.Error("Compressed textures are not supported on this platform.");return}let C=f[Gt];b=f[Ct]+4;let g=!1;if(n.isFourCC)switch(B=f[ct],B){case S:M=8,L=33777;break;case v:M=16,L=33778;break;case tt:M=16,L=33779;break;case rt:g=!0,C=64;break;case et:g=!0,C=128;break;case N:{b+=20;let m=!1;switch(n.dxgiFormat){case ft:g=!0,C=64,m=!0;break;case at:g=!0,C=128,m=!0;break;case Ft:n.isRGB=!0,n.isFourCC=!1,C=32,m=!0;break}if(m)break}default:H.Error(["Unsupported FourCC code:",yt(B)]);return}const q=A._ExtractLongWordOrder(f[bt]),J=A._ExtractLongWordOrder(f[mt]),K=A._ExtractLongWordOrder(f[Bt]),lt=A._ExtractLongWordOrder(f[Rt]);g&&(L=a._getRGBABufferInternalSizedFormat(n.textureType)),X=1,f[st]&Q&&u!==!1&&(X=Math.max(1,f[nt]));const At=c||0,k=a.getCaps();for(let m=At;m<F;m++){for(i=f[T],y=f[ot],I=0;I<X;++I){if(r===-1||r===I){const G=r===-1?I:0;if(!n.isCompressed&&n.isFourCC){o.format=5,p=i*y*4;let R=null;if(a._badOS||a._badDesktopOS||!k.textureHalfFloat&&!k.textureFloat)C===128?(R=A._GetFloatAsUIntRGBAArrayBuffer(i,y,s.byteOffset+b,p,s.buffer,G),e&&G==0&&e.push(A._GetFloatRGBAArrayBuffer(i,y,s.byteOffset+b,p,s.buffer,G))):C===64&&(R=A._GetHalfFloatAsUIntRGBAArrayBuffer(i,y,s.byteOffset+b,p,s.buffer,G),e&&G==0&&e.push(A._GetHalfFloatAsFloatRGBAArrayBuffer(i,y,s.byteOffset+b,p,s.buffer,G))),o.type=0;else{const P=k.textureFloat&&(t&&k.textureFloatLinearFiltering||!t),D=k.textureHalfFloat&&(t&&k.textureHalfFloatLinearFiltering||!t),z=(C===128||C===64&&!D)&&P?1:(C===64||C===128&&!P)&&D?2:0;let U,x=null;switch(C){case 128:{switch(z){case 1:U=A._GetFloatRGBAArrayBuffer,x=null;break;case 2:U=A._GetFloatAsHalfFloatRGBAArrayBuffer,x=A._GetFloatRGBAArrayBuffer;break;case 0:U=A._GetFloatAsUIntRGBAArrayBuffer,x=A._GetFloatRGBAArrayBuffer;break}break}default:{switch(z){case 1:U=A._GetHalfFloatAsFloatRGBAArrayBuffer,x=null;break;case 2:U=A._GetHalfFloatRGBAArrayBuffer,x=A._GetHalfFloatAsFloatRGBAArrayBuffer;break;case 0:U=A._GetHalfFloatAsUIntRGBAArrayBuffer,x=A._GetHalfFloatAsFloatRGBAArrayBuffer;break}break}}o.type=z,R=U(i,y,s.byteOffset+b,p,s.buffer,G),e&&G==0&&e.push(x?x(i,y,s.byteOffset+b,p,s.buffer,G):R)}R&&a._uploadDataToTextureDirectly(o,R,m,G)}else if(n.isRGB)o.type=0,C===24?(o.format=4,p=i*y*3,h=A._GetRGBArrayBuffer(i,y,s.byteOffset+b,p,s.buffer,q,J,K),a._uploadDataToTextureDirectly(o,h,m,G)):(o.format=5,p=i*y*4,h=A._GetRGBAArrayBuffer(i,y,s.byteOffset+b,p,s.buffer,q,J,K,lt),a._uploadDataToTextureDirectly(o,h,m,G));else if(n.isLuminance){const R=a._getUnpackAlignement(),P=i;p=Math.floor((i+R-1)/R)*R*(y-1)+P,h=A._GetLuminanceArrayBuffer(i,y,s.byteOffset+b,p,s.buffer),o.format=1,o.type=0,a._uploadDataToTextureDirectly(o,h,m,G)}else p=Math.max(4,i)/4*Math.max(4,y)/4*M,h=new Uint8Array(s.buffer,s.byteOffset+b,p),o.type=0,a._uploadCompressedDataToTextureDirectly(o,L,i,y,h,m,G)}b+=C?i*y*(C/8):p,i*=.5,y*=.5,i=Math.max(1,i),y=Math.max(1,y)}if(c!==void 0)break}e&&e.length>0?n.sphericalPolynomial=it.ConvertCubeMapToSphericalPolynomial({size:f[T],right:e[0],left:e[1],up:e[2],down:e[3],front:e[4],back:e[5],format:5,type:1,gammaSpace:!1}):n.sphericalPolynomial=void 0}}A.StoreLODInAlphaChannel=!1;export{A as DDSTools};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.