修改粒子命名规则
This commit is contained in:
1 parent
1ecbb6fc48
commit
aabf4ff693
10 files changed
+235
-97
No files matched your search
Vendored
+71
@@ -0,0 +1,71 @@
|
||||
var Ae=Object.defineProperty;var Be=(m,o,e)=>o in m?Ae(m,o,{enumerable:!0,configurable:!0,writable:!0,value:e}):m[o]=e;var a=(m,o,e)=>Be(m,typeof o!="symbol"?o+"":o,e);import{T as Fe,a as he,b as F,S as ue,M as pe,c as oe,W as ne,B as H,d as z,L as Te,E as O,e as ce,p as q,f as Ee,g as fe,A as Q,h as me,i as De,j as V,s as re,G as we,k as $,l as Y,m as Le,P as Ie,n as Re,o as Ne,C as X,q as be,r as _e,t as Ue,u as Ye,v as Xe,w as ee,x as j,y as ke,z as Ve,D as J,F as ge,V as Ge,H as ae,I as We,J as $e,U as xe,K as E,R as ve,N as ye,O as Pe,Q as Oe,X as He,Y as ze,Z as qe,_ as Ke}from"./index-CBAQrWSZ.js";import{$ as bt,a0 as kt,a1 as vt,a2 as yt,a3 as Pt,a4 as St,a5 as Mt,a6 as At,a7 as Bt,a8 as Ft,a9 as Et,aa as Dt,ab as Lt,ac as It,ad as Rt,ae as Nt,af as _t,ag as Ut,ah as Yt,ai as Xt,aj as Vt,ak as Gt,al as Wt,am as $t,an as Ot,ao as Ht,ap as zt,aq as qt,ar as Kt,as as Zt,at as Jt,au as Qt,av as jt,aw as es,ax as ts,ay as ss,az as os,aA as ns,aB as as,aC as rs,aD as is,aE as ls,aF as hs,aG as cs,aH as ds,aI as us,aJ as ps,aK as fs,aL as ms,aM as gs,aN as xs,aO as Cs,aP as Ts,aQ as ws,aR as bs,aS as ks,aT as vs,aU as ys,aV as Ps,aW as Ss,aX as Ms,aY as As,aZ as Bs,a_ as Fs,a$ as Es,b0 as Ds,b1 as Ls,b2 as Is,b3 as Rs,b4 as Ns,b5 as _s,b6 as Us,b7 as Ys,b8 as Xs,b9 as Vs,ba as Gs,bb as Ws,bc as $s,bd as Os,be as Hs,bf as zs,bg as qs,bh as Ks,bi as Zs,bj as Js,bk as Qs,bl as js,bm as eo,bn as to,bo as so,bp as oo,bq as no,br as ao,bs as ro,bt as io,bu as lo,bv as ho,bw as co,bx as uo,by as po,bz as fo,bA as mo,bB as go,bC as xo,bD as Co,bE as To,bF as wo,bG as bo,bH as ko,bI as vo,bJ as yo,bK as Po,bL as So,bM as Mo,bN as Ao,bO as Bo,bP as Fo,bQ as Eo,bR as Do,bS as Lo,bT as Io,bU as Ro,bV as No,bW as _o,bX as Uo,bY as Yo,bZ as Xo,b_ as Vo,b$ as Go,c0 as Wo,c1 as $o,c2 as Oo,c3 as Ho}from"./index-CBAQrWSZ.js";import{SkeletonClipping as de,SkeletonPhysicsMovement as Ze,AnimationStateData as Je,AtlasAttachmentLoader as Qe,SkeletonBounds as je}from"./index-3evwjaUy.js";import{AssetCache as qo,AssetManagerBase as Ko,Downloader as Zo,SkeletonRendererCore as Jo,Triangulator as Qo}from"./index-3evwjaUy.js";if(typeof window<"u"&&window.PIXI){const m=window.require;window.require=o=>{if(m)return m(o);if(o.startsWith("@pixi/"))return window.PIXI}}const _=class _ extends Fe{constructor(e){super(e.resource.source);a(this,"texture");this.texture=he.from(e)}static from(e){return _.textureMap.has(e)?_.textureMap.get(e):new _(e)}setFilters(e,t){this.texture.baseTexture.scaleMode=_.toPixiTextureFilter(e),this.texture.baseTexture.mipmap=_.toPixiMipMap(e)}setWraps(e,t){this.texture.baseTexture.wrapMode=_.toPixiTextureWrap(e)}dispose(){this.texture.destroy()}static toPixiTextureFilter(e){switch(e){case F.Nearest:case F.MipMapNearestLinear:case F.MipMapNearestNearest:return ue.NEAREST;case F.Linear:case F.MipMapLinearLinear:case F.MipMapLinearNearest:return ue.LINEAR;default:throw new Error(`Unknown texture filter: ${String(e)}`)}}static toPixiMipMap(e){switch(e){case F.Nearest:case F.Linear:return pe.OFF;case F.MipMapNearestLinear:case F.MipMapNearestNearest:case F.MipMapLinearLinear:case F.MipMapLinearNearest:return pe.ON;default:throw new Error(`Unknown texture filter: ${String(e)}`)}}static toPixiTextureWrap(e){switch(e){case oe.ClampToEdge:return ne.CLAMP;case oe.MirroredRepeat:return ne.MIRRORED_REPEAT;case oe.Repeat:return ne.REPEAT;default:throw new Error(`Unknown texture wrap: ${String(e)}`)}}static toPixiBlending(e){switch(e){case H.Normal:return z.NORMAL;case H.Additive:return z.ADD;case H.Multiply:return z.MULTIPLY;case H.Screen:return z.SCREEN;default:throw new Error(`Unknown blendMode: ${String(e)}`)}}};a(_,"textureMap",new Map);let G=_;const K="spineTextureAtlasLoader",et={extension:O.Asset,resolver:{test:m=>V(m,".atlas"),parse:m=>{var e,t;const o=m.split(".");return{resolution:parseFloat(((t=(e=re.RETINA_PREFIX)==null?void 0:e.exec(m))==null?void 0:t[1])??"1"),format:o[o.length-2],src:m}}},loader:{name:K,extension:{type:O.LoadParser,priority:Te.Normal,name:K},test(m){return V(m,".atlas")},async load(m){const o=await re.ADAPTER.fetch(m);if(!o.ok)throw new Error(`[${K}] Failed to fetch ${m}: ${o.status} ${o.statusText}`);return await o.text()},testParse(m,o){const e=V(o.src,".atlas"),t=typeof m=="string",s=o.loadParser===K;return Promise.resolve((e||s)&&t)},unload(m){m.dispose()},async parse(m,o,e){var p;const t=o.data||{};let s=q.dirname(o.src);s&&s.lastIndexOf("/")!==s.length-1&&(s+="/");const n=new Ee(m);if(t.images instanceof fe||typeof t.images=="string"){const h=t.images;t.images={},t.images[n.pages[0].name]=h}const r=[];let l=!0;for(const h of e.parsers)if(h.name==="loadTextures"){l=(p=h.config)==null?void 0:p.preferCreateImageBitmap;break}Q.setPreferences({preferCreateImageBitmap:!1});for(const h of n.pages){const u=h.name,c=t!=null&&t.images?t.images[u]:void 0;if(c instanceof fe)h.setTexture(G.from(c));else{const i=c??q.normalize([...s.split(q.sep),u].join(q.sep)),g={src:De(i,o.src),data:{...t.imageMetadLine truncated
|
||||
attribute vec2 aVertexPosition;
|
||||
attribute vec2 aTextureCoord;
|
||||
|
||||
uniform mat3 projectionMatrix;
|
||||
uniform mat3 translationMatrix;
|
||||
uniform mat3 uTextureMatrix;
|
||||
|
||||
varying vec2 vTextureCoord;
|
||||
|
||||
void main(void)
|
||||
{
|
||||
gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);
|
||||
|
||||
vTextureCoord = (uTextureMatrix * vec3(aTextureCoord, 1.0)).xy;
|
||||
}
|
||||
`,rt=`
|
||||
varying vec2 vTextureCoord;
|
||||
uniform vec4 uColor;
|
||||
uniform vec4 uDarkColor;
|
||||
|
||||
uniform sampler2D uSampler;
|
||||
|
||||
void main(void)
|
||||
{
|
||||
vec4 texColor = texture2D(uSampler, vTextureCoord);
|
||||
gl_FragColor.a = texColor.a * uColor.a;
|
||||
gl_FragColor.rgb = ((texColor.a - 1.0) * uDarkColor.a + 1.0 - texColor.rgb) * uDarkColor.rgb + texColor.rgb * uColor.rgb;
|
||||
}
|
||||
`;class it extends Le{constructor(e){const t={uSampler:e??he.EMPTY,alpha:1,uTextureMatrix:Re.IDENTITY,uColor:new Float32Array([1,1,1,1]),uDarkColor:new Float32Array([0,0,0,0])},s={tint:16777215,darkTint:0,alpha:1,pluginName:"darkTintBatch"};super(Ie.from(at,rt),t);a(this,"uvMatrix");a(this,"batchable");a(this,"pluginName");a(this,"_tintRGB");a(this,"_darkTintRGB");a(this,"_colorDirty");a(this,"_alpha");a(this,"_tintColor");a(this,"_darkTintColor");this._colorDirty=!1,this.uvMatrix=new Ne(t.uSampler),this.batchable=!0,this.pluginName=s.pluginName,this._tintColor=new X(s.tint),this._darkTintColor=new X(s.darkTint),this._tintRGB=this._tintColor.toLittleEndianNumber(),this._darkTintRGB=this._darkTintColor.toLittleEndianNumber(),this._alpha=s.alpha,this._colorDirty=!0}get texture(){return this.uniforms.uSampler}set texture(e){this.uniforms.uSampler!==e&&(!this.uniforms.uSampler.baseTexture.alphaMode!=!e.baseTexture.alphaMode&&(this._colorDirty=!0),this.uniforms.uSampler=e,this.uvMatrix.texture=e)}set alpha(e){e!==this._alpha&&(this._alpha=e,this._colorDirty=!0)}get alpha(){return this._alpha}set tint(e){e!==this.tint&&(this._tintColor.setValue(e),this._tintRGB=this._tintColor.toLittleEndianNumber(),this._colorDirty=!0)}get tint(){return this._tintColor.value}set darkTint(e){e!==this.darkTint&&(this._darkTintColor.setValue(e),this._darkTintRGB=this._darkTintColor.toLittleEndianNumber(),this._colorDirty=!0)}get darkTint(){return this._darkTintColor.value}get tintValue(){return this._tintColor.toNumber()}get darkTintValue(){return this._darkTintColor.toNumber()}update(){this._colorDirty&&(this._colorDirty=!1,X.shared.setValue(this._tintColor).premultiply(this._alpha,!0).toArray(this.uniforms.uColor),X.shared.setValue(this._darkTintColor).premultiply(this._alpha,!0).premultiply(1,!1).toArray(this.uniforms.uDarkColor)),this.uvMatrix.update()&&(this.uniforms.uTextureMatrix=this.uvMatrix.mapCoord)}}class lt extends be{constructor(e){super(new nt,new it(e),void 0,void 0);a(this,"_darkTintRGB",0)}get darkTint(){return"darkTint"in this.shader?this.shader.darkTint:null}set darkTint(e){this.shader.darkTint=e}get darkTintValue(){return this.shader.darkTintValue}_renderToBatch(e){const t=this.geometry,s=this.shader;s.uvMatrix&&(s.uvMatrix.update(),this.calculateUvs()),this.calculateVertices(),this.indices=t.indexBuffer.data,this._tintRGB=s._tintRGB,this._darkTintRGB=s._darkTintRGB,this._texture=s.texture;const n=this.material.pluginName;e.batch.setObjectRenderer(e.plugins[n]),e.plugins[n].render(this)}}const y=class y extends lt{constructor(){super();a(this,"name","")}updateFromSpineData(e,t,s,n,r,l,p,h){var C,T;this.texture=e.texture;const u=r/(h?12:8)*2,c=this.geometry.getBuffer("aTextureCoord");((C=c.data)==null?void 0:C.length)!==u&&(c.data=new Float32Array(u));const i=this.geometry.getBuffer("aVertexPosition");((T=i.data)==null?void 0:T.length)!==u&&(i.data=new Float32Array(u));let g=0;const x=c.data,d=i.data;for(let k=0;k<r;k+=h?12:8){let b=k;d[g]=n[b++],d[g+1]=n[b++],b+=4,x[g]=n[b++],x[g+1]=n[b++],g+=2}h?(y.auxColor[0]=n[8],y.auxColor[1]=n[9],y.auxColor[2]=n[10],y.auxColor[3]=n[11],this.darkTint=y.auxColor,y.auxColor[0]=n[2],y.auxColor[1]=n[3],y.auxColor[2]=n[4],y.auxColor[3]=n[5],this.tint=y.auxColor):(y.auxColor[0]=n[2],y.auxColor[1]=n[3],y.auxColor[2]=n[4],y.auxColor[3]=n[5],this.tint=y.auxColor),this.blendMode=G.toPixiBlending(t),this.alpha=y.auxColor[3];const f=this.geometry.indexBuffer;if(f.data.length!==l.length)f.data=new Uint32Array(l);else{const k=f.data;for(let b=0;b<p;b++)k[b]=l[b]}this.name=s,c.update(),i.update(),f.update()}};a(y,"auxColor",[0,0,0,0]);let ie=y;class ht extends we{constructor(e=!1){super();a(this,"_buffer");a(this,"_indexBuffer");this._buffer=new $(void 0,e,!1),this._indexBuffer=new $(void 0,e,!0),this.addAttribute("aVertexPosition",this._buffer,2,!1,Y.FLOAT).addAttribute("aTextureCoord",this._buffer,2,!1,Y.FLOAT).addAttribute("aColor",this._buffer,4,!0,Y.UNSIGNED_BYTE).addAttribute("aDarkColor",this._buffer,4,!0,Y.UNSIGNED_BYTE).addAttribute("aTextureId",this._buffer,1,!0,Y.FLOAT).addIndex(this._indexBuffer)}}const ct=`
|
||||
precision highp float;
|
||||
attribute vec2 aVertexPosition;
|
||||
attribute vec2 aTextureCoord;
|
||||
attribute vec4 aColor;
|
||||
attribute vec4 aDarkColor;
|
||||
attribute float aTextureId;
|
||||
|
||||
uniform mat3 projectionMatrix;
|
||||
uniform mat3 translationMatrix;
|
||||
uniform vec4 tint;
|
||||
|
||||
varying vec2 vTextureCoord;
|
||||
varying vec4 vColor;
|
||||
varying vec4 vDarkColor;
|
||||
varying float vTextureId;
|
||||
|
||||
void main(void){
|
||||
gl_Position = vec4((projectionMatrix * translationMatrix * vec3(aVertexPosition, 1.0)).xy, 0.0, 1.0);
|
||||
|
||||
vTextureCoord = aTextureCoord;
|
||||
vTextureId = aTextureId;
|
||||
vColor = aColor * tint;
|
||||
vDarkColor = aDarkColor * tint;
|
||||
|
||||
}
|
||||
`,dt=`
|
||||
varying vec2 vTextureCoord;
|
||||
varying vec4 vColor;
|
||||
varying vec4 vDarkColor;
|
||||
varying float vTextureId;
|
||||
uniform sampler2D uSamplers[%count%];
|
||||
|
||||
void main(void){
|
||||
vec4 color;
|
||||
%forloop%
|
||||
|
||||
|
||||
gl_FragColor.a = color.a * vColor.a;
|
||||
gl_FragColor.rgb = ((color.a - 1.0) * vDarkColor.a + 1.0 - color.rgb) * vDarkColor.rgb + color.rgb * vColor.rgb;
|
||||
}
|
||||
`;class Se extends _e{constructor(o){super(o),this.shaderGenerator=new Ue(ct,dt),this.geometryClass=ht,this.vertexSize=7}packInterleavedGeometry(o,e,t,s,n){const{uint32View:r,float32View:l}=e,p=s/this.vertexSize,h=o.uvs,u=o.indices,c=o.vertexData,i=o._texture.baseTexture._batchLocation,g=Math.min(o.worldAlpha,1),x=X.shared.setValue(o._tintRGB).toPremultiplied(g,!0),d=X.shared.setValue(o._darkTintRGB).premultiply(g,!0).toPremultiplied(1,!1);for(let f=0;f<c.length;f+=2)l[s++]=c[f],l[s++]=c[f+1],l[s++]=h[f],l[s++]=h[f+1],r[s++]=x,r[s++]=d,l[s++]=i;for(let f=0;f<u.length;f++)t[n++]=p+u[f]}}a(Se,"extension",{name:"darkTintBatch",type:O.RendererPlugin});ce.add(Se);const U=class U extends be{constructor(){const e=new Ye;e.getBuffer("aVertexPosition").static=!1,e.getBuffer("aTextureCoord").static=!1;const t=new Xe(he.EMPTY);super(e,t);a(this,"name","");a(this,"warnedTwoTint",!1)}updateFromSpineData(e,t,s,n,r,l,p,h){var C,T;this.texture=e.texture;const u=r/(h?12:8)*2,c=this.geometry.getBuffer("aTextureCoord");((C=c.data)==null?void 0:C.length)!==u&&(c.data=new Float32Array(u));const i=this.geometry.getBuffer("aVertexPosition");((T=i.data)==null?void 0:T.length)!==u&&(i.data=new Float32Array(u));let g=0;const x=c.data,d=i.data;for(let k=0;k<r;k+=h?12:8){let b=k;d[g]=n[b++],d[g+1]=n[b++],b+=4,x[g]=n[b++],x[g+1]=n[b++],g+=2}h&&!this.warnedTwoTint&&(console.warn("DarkTint is not enabled by default. To enable use a DarkSlotMesh factory while creating the Spine object."),this.warnedTwoTint=!0),U.auxColor[0]=n[2],U.auxColor[1]=n[3],U.auxColor[2]=n[4],U.auxColor[3]=n[5],this.tint=U.auxColor,this.alpha=U.auxColor[3],this.blendMode=G.toPixiBlending(t);const f=this.geometry.indexBuffer;if(f.data.length!==l.length)f.data=new Uint32Array(l);else{const k=f.data;for(let b=0;b<p;b++)k[b]=l[b]}this.name=s,c.update(),i.update(),f.update()}};a(U,"auxColor",[0,0,0,0]);let le=U;class mt{constructor(o,e,t,s){a(this,"x");a(this,"y");a(this,"width");a(this,"height");this.x=o,this.y=e,this.width=t,this.height=s}calculateBounds(){return{x:this.x,y:this.y,width:this.width,height:this.height}}}class gt{constructor(o=!1){a(this,"clipping");this.clipping=o}calculateBounds(o){if(!o.skeleton)return{x:0,y:0,width:0,height:0};const e=new ee(o.skeleton.data);e.setupPose(),e.updateWorldTransform(j.update);const t=e.getBoundsRect(this.clipping?new de:void 0);return t.width===Number.NEGATIVE_INFINITY?{x:0,y:0,width:0,height:0}:t}}class xt{constructor(o,e=[],t=.05,s=!1){a(this,"animation");a(this,"skins");a(this,"timeStep");a(this,"clipping");this.animation=o,this.skins=e,this.timeStep=t,this.clipping=s}calculateBounds(o){if(!o.skeleton||!o.state)return{x:0,y:0,width:0,height:0};const e=new ke(o.state.data),t=new ee(o.skeleton.data),s=this.clipping?new de:void 0,n=t.data;if(this.skins.length>0){const l=new Ve("custom-skin");for(const p of this.skins){const h=n.findSkin(p);h!=null&&l.addSkin(h)}t.setSkin(l)}t.setupPose();const r=this.animation!=null?n.findAnimation(this.animation):null;if(r==null){t.updateWorldTransform(j.update);const l=t.getBoundsRect(s);return l.width===Number.NEGATIVE_INFINITY?{x:0,y:0,width:0,height:0}:l}else{let l=Number.POSITIVE_INFINITY,p=Number.POSITIVE_INFINITY,h=Number.NEGATIVE_INFINITY,u=Number.NEGATIVE_INFINITY;e.clearTracks(),e.setAnimation(0,r,!1);const c=Math.max(r.duration/this.timeStep,1);for(let g=0;g<c;g++){const x=g>0?this.timeStep:0;e.update(x),e.apply(t),t.update(x),t.updateWorldTransform(j.update);const d=t.getBoundsRect(s);l=Math.min(l,d.x),p=Math.min(p,d.y),h=Math.max(h,d.x+d.width),u=Math.max(u,d.y+d.height)}const i={x:l,y:p,width:h-l,height:u-p};return i.width===Number.NEGATIVE_INFINITY?{x:0,y:0,width:0,height:0}:i}}}const w=class w extends J{constructor(e){super();a(this,"skeleton");a(this,"state");a(this,"skeletonPhysics");a(this,"darkTint",!1);a(this,"hasNeverUpdated",!0);a(this,"_debug");a(this,"slotMeshFactory",()=>new le);a(this,"beforeUpdateWorldTransforms",()=>{});a(this,"afterUpdateWorldTransforms",()=>{});a(this,"_autoUpdate",!1);a(this,"_ticker",ge.shared);a(this,"meshesCache",new Map);a(this,"lightColor",new ae);a(this,"darkColor",new ae);a(this,"clippingVertAux",new Float32Array(6));a(this,"_boundsProvider");a(this,"_boundsPoint",new We);a(this,"_boundsSpineID",-1);a(this,"_boundsSpineDirty",!0);a(this,"slotsObject",new Map);a(this,"verticesCache",xe.newFloatArray(1024));a(this,"clippingSlotToPixiMasks",{});e instanceof $e?e={skeletonData:e}:"skeleton"in e&&(e=new.target.createOptions(e));const{autoUpdate:t=!0,boundsProvider:s,darkTint:n,skeletonData:r,ticker:l}=e;this.skeleton=new ee(r),this.skeletonPhysics=new Ze(this.skeleton,{readTransform:(p,h)=>this.readPhysicsTransform(p,h),worldToSkeleton:p=>this.pixiWorldCoordinatesToSkeleton(p)}),this.state=new ke(new Je(r)),l&&(this._ticker=l),this.autoUpdate=t,this.boundsProvider=s,this.darkTint=n===void 0?this.skeleton.slots.some(p=>!!p.data.setupPose.darkColor):n,this.darkTint&&(this.slotMeshFactory=()=>new ie)}get debug(){return this._debug}set debu
Line truncated
|
||||
Reference in new issue
Block a user