@galacean/effects-core 2.8.10 → 2.8.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +51 -46
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +51 -46
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Description: Galacean Effects runtime core for the web
|
|
4
4
|
* Author: Ant Group CO., Ltd.
|
|
5
5
|
* Contributors: 燃然,飂兮,十弦,云垣,茂安,意绮
|
|
6
|
-
* Version: v2.8.
|
|
6
|
+
* Version: v2.8.12
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
9
|
'use strict';
|
|
@@ -2354,8 +2354,21 @@ function colorToArr$1(hex, normalized) {
|
|
|
2354
2354
|
return ret;
|
|
2355
2355
|
}
|
|
2356
2356
|
function getColorFromGradientStops(stops, key, normalize) {
|
|
2357
|
-
if (stops.length) {
|
|
2358
|
-
|
|
2357
|
+
if (stops.length === 0) {
|
|
2358
|
+
return [
|
|
2359
|
+
0,
|
|
2360
|
+
0,
|
|
2361
|
+
0,
|
|
2362
|
+
0
|
|
2363
|
+
];
|
|
2364
|
+
}
|
|
2365
|
+
var color;
|
|
2366
|
+
if (key <= stops[0].time) {
|
|
2367
|
+
color = stops[0].color.toArray();
|
|
2368
|
+
} else if (key >= stops[stops.length - 1].time) {
|
|
2369
|
+
color = stops[stops.length - 1].color.toArray();
|
|
2370
|
+
} else {
|
|
2371
|
+
color = stops[stops.length - 1].color.toArray();
|
|
2359
2372
|
for(var j = 1; j <= stops.length - 1; j++){
|
|
2360
2373
|
var s0 = stops[j - 1];
|
|
2361
2374
|
var s1 = stops[j];
|
|
@@ -2364,19 +2377,10 @@ function getColorFromGradientStops(stops, key, normalize) {
|
|
|
2364
2377
|
break;
|
|
2365
2378
|
}
|
|
2366
2379
|
}
|
|
2367
|
-
if (!color) {
|
|
2368
|
-
color = stops[stops.length - 1].color.toArray();
|
|
2369
|
-
}
|
|
2370
|
-
return normalize ? color.map(function(n) {
|
|
2371
|
-
return n / 255;
|
|
2372
|
-
}) : color;
|
|
2373
2380
|
}
|
|
2374
|
-
return
|
|
2375
|
-
|
|
2376
|
-
|
|
2377
|
-
0,
|
|
2378
|
-
0
|
|
2379
|
-
];
|
|
2381
|
+
return normalize ? color.map(function(n) {
|
|
2382
|
+
return n / 255;
|
|
2383
|
+
}) : color;
|
|
2380
2384
|
}
|
|
2381
2385
|
function colorStopsFromGradient(gradient) {
|
|
2382
2386
|
var stops = [];
|
|
@@ -2403,21 +2407,6 @@ function colorStopsFromGradient(gradient) {
|
|
|
2403
2407
|
stops = stops.sort(function(a, b) {
|
|
2404
2408
|
return a.time - b.time;
|
|
2405
2409
|
});
|
|
2406
|
-
if (stops.length) {
|
|
2407
|
-
if (stops[0].time !== 0) {
|
|
2408
|
-
stops.unshift({
|
|
2409
|
-
time: 0,
|
|
2410
|
-
color: stops[0].color.clone()
|
|
2411
|
-
});
|
|
2412
|
-
}
|
|
2413
|
-
var lastStop = stops[stops.length - 1];
|
|
2414
|
-
if (lastStop.time !== 1) {
|
|
2415
|
-
stops.push({
|
|
2416
|
-
time: 1,
|
|
2417
|
-
color: lastStop.color.clone()
|
|
2418
|
-
});
|
|
2419
|
-
}
|
|
2420
|
-
}
|
|
2421
2410
|
return stops;
|
|
2422
2411
|
}
|
|
2423
2412
|
function interpolateColor(a, b, s, origin) {
|
|
@@ -2506,22 +2495,24 @@ function imageDataFromGradient(gradient) {
|
|
|
2506
2495
|
var data = image.data;
|
|
2507
2496
|
var stops = colorStopsFromGradient(gradient);
|
|
2508
2497
|
if (stops.length) {
|
|
2509
|
-
|
|
2510
|
-
|
|
2511
|
-
|
|
2512
|
-
|
|
2513
|
-
|
|
2514
|
-
|
|
2515
|
-
|
|
2516
|
-
|
|
2517
|
-
|
|
2518
|
-
|
|
2498
|
+
for(var i = 0; i < width; i++){
|
|
2499
|
+
var index = i / (width - 1);
|
|
2500
|
+
if (index <= stops[0].time) {
|
|
2501
|
+
data.set(stops[0].color.toArray(), i * 4);
|
|
2502
|
+
} else if (index >= stops[stops.length - 1].time) {
|
|
2503
|
+
data.set(stops[stops.length - 1].color.toArray(), i * 4);
|
|
2504
|
+
} else {
|
|
2505
|
+
for(var j = 0; j < stops.length - 1; j++){
|
|
2506
|
+
var s0 = stops[j];
|
|
2507
|
+
var s1 = stops[j + 1];
|
|
2508
|
+
if (s0.time <= index && s1.time > index) {
|
|
2509
|
+
var color = interpolateColor(s0.color.toArray(), s1.color.toArray(), (index - s0.time) / (s1.time - s0.time));
|
|
2510
|
+
data.set(color, i * 4);
|
|
2511
|
+
break;
|
|
2512
|
+
}
|
|
2519
2513
|
}
|
|
2520
2514
|
}
|
|
2521
|
-
var color = interpolateColor(s0.color.toArray(), s1.color.toArray(), (index - s0.time) / (s1.time - s0.time));
|
|
2522
|
-
data.set(color, i * 4);
|
|
2523
2515
|
}
|
|
2524
|
-
data.set(stops[stops.length - 1].color.toArray(), (width - 1) * 4);
|
|
2525
2516
|
}
|
|
2526
2517
|
return image;
|
|
2527
2518
|
}
|
|
@@ -11845,7 +11836,21 @@ var GradientValue = /*#__PURE__*/ function(ValueGetter) {
|
|
|
11845
11836
|
};
|
|
11846
11837
|
_proto.getValue = function getValue(time) {
|
|
11847
11838
|
var stops = this.stops;
|
|
11839
|
+
if (stops.length === 0) {
|
|
11840
|
+
return [
|
|
11841
|
+
0,
|
|
11842
|
+
0,
|
|
11843
|
+
0,
|
|
11844
|
+
0
|
|
11845
|
+
];
|
|
11846
|
+
}
|
|
11847
|
+
if (time <= stops[0].time) {
|
|
11848
|
+
return stops[0].color.toArray();
|
|
11849
|
+
}
|
|
11848
11850
|
var last = stops.length - 1;
|
|
11851
|
+
if (time >= stops[last].time) {
|
|
11852
|
+
return stops[last].color.toArray();
|
|
11853
|
+
}
|
|
11849
11854
|
for(var i = 0; i < last; i++){
|
|
11850
11855
|
var a = stops[i];
|
|
11851
11856
|
var b = stops[i + 1];
|
|
@@ -18487,7 +18492,7 @@ exports.PostProcessVolume = __decorate([
|
|
|
18487
18492
|
|
|
18488
18493
|
var vert = "precision highp float;attribute vec3 aPos;attribute vec2 aUV;varying vec2 uv0;uniform mat4 effects_MatrixVP;uniform mat4 effects_MatrixInvV;uniform mat4 effects_ObjectToWorld;void main(){vec4 pos=vec4(aPos.xyz,1.0);uv0=aUV;gl_Position=effects_MatrixVP*effects_ObjectToWorld*pos;}";
|
|
18489
18494
|
|
|
18490
|
-
var frag = "precision highp float;\n#define _MAX_STOPS 8\n#define PI 3.14159265359\nuniform vec4 _Color;uniform vec4 _Colors[_MAX_STOPS];uniform float _Stops[_MAX_STOPS];uniform int _StopsCount;uniform float _FillType;uniform vec2 _StartPoint;uniform vec2 _EndPoint;uniform sampler2D _ImageTex;uniform vec2 _ImageSize;uniform vec2 _DestSize;uniform int _ImageScaleMode;uniform mat3 _TextureTransform;uniform float _ImageScalingFactor;uniform float _ImageOpacity;varying vec2 uv0;
|
|
18495
|
+
var frag = "precision highp float;\n#define _MAX_STOPS 8\n#define PI 3.14159265359\nuniform vec4 _Color;uniform vec4 _Colors[_MAX_STOPS];uniform float _Stops[_MAX_STOPS];uniform int _StopsCount;uniform float _FillType;uniform vec2 _StartPoint;uniform vec2 _EndPoint;uniform sampler2D _ImageTex;uniform vec2 _ImageSize;uniform vec2 _DestSize;uniform int _ImageScaleMode;uniform mat3 _TextureTransform;uniform float _ImageScalingFactor;uniform float _ImageOpacity;varying vec2 uv0;float calculateAngleRatio(vec2 v1,vec2 v2){float angle=atan(v2.y,v2.x)-atan(v1.y,v1.x);if(angle<0.0)angle+=2.0*PI;return angle/(2.0*PI);}vec2 applyTransform(mat3 m,vec2 uv){uv=uv-vec2(0.5,0.5);vec3 p=m*vec3(uv,1.0);p.xy=p.xy+vec2(0.5,0.5);return p.xy;}void main(){vec4 finalColor=vec4(1.0);if(_FillType==0.0){finalColor=_Color;}else if(_FillType==1.0||_FillType==2.0||_FillType==3.0){float t=0.0;if(_FillType==1.0){vec2 gradientVector=_EndPoint-_StartPoint;vec2 pixelVector=uv0-_StartPoint;float denom=max(dot(gradientVector,gradientVector),1e-6);t=clamp(dot(pixelVector,gradientVector)/denom,0.0,1.0);}else if(_FillType==2.0){float maxRadius=max(distance(_EndPoint,_StartPoint),0.001);t=clamp(distance(uv0,_StartPoint)/maxRadius,0.0,1.0);}else{vec2 center=_StartPoint;vec2 referenceVector=_EndPoint-center;vec2 targetVector=uv0-center;if(length(targetVector)>0.001){t=calculateAngleRatio(referenceVector,targetVector);}}if(_StopsCount>0){finalColor=_Colors[0];for(int i=1;i<_MAX_STOPS;i++){if(i>=_StopsCount)break;float localT=smoothstep(_Stops[i-1],_Stops[i],t);finalColor=mix(finalColor,_Colors[i],localT);}}}else if(_FillType==4.0){vec2 uv=uv0;float rSrc=_ImageSize.x/max(_ImageSize.y,1.0);float rDst=_DestSize.x/max(_DestSize.y,1.0);bool maskOutside=false;if(_ImageScaleMode==0){vec2 scale=vec2(1.0);if(rDst>rSrc){scale=vec2(1.0,rSrc/rDst);}else{scale=vec2(rDst/rSrc,1.0);}uv=(uv-0.5)*scale+0.5;uv=clamp(uv,0.0,1.0);}else if(_ImageScaleMode==1){vec2 scale=vec2(1.0);if(rDst>rSrc){scale=vec2(rSrc/rDst,1.0);}else{scale=vec2(1.0,rSrc/rDst);}uv=(uv-0.5)*scale+0.5;maskOutside=true;}else if(_ImageScaleMode==2){uv=applyTransform(_TextureTransform,uv0);maskOutside=true;}else if(_ImageScaleMode==3){float aspectFix=rDst/max(rSrc,1e-6);vec2 uvTile=(uv0-0.5)*vec2(aspectFix,1.0)+0.5;float s=max(abs(_ImageScalingFactor),1e-6);uv=fract(uvTile*s);}vec4 img=texture2D(_ImageTex,uv);if(maskOutside){if(uv.x<0.0||uv.x>1.0||uv.y<0.0||uv.y>1.0){img.a=0.0;}}img.a*=_ImageOpacity;finalColor=img;}finalColor.rgb*=finalColor.a;gl_FragColor=finalColor;}";
|
|
18491
18496
|
|
|
18492
18497
|
exports.TexturePaintScaleMode = void 0;
|
|
18493
18498
|
(function(TexturePaintScaleMode) {
|
|
@@ -31637,7 +31642,7 @@ function getStandardSpriteContent(sprite, transform) {
|
|
|
31637
31642
|
return ret;
|
|
31638
31643
|
}
|
|
31639
31644
|
|
|
31640
|
-
var version$1 = "2.8.
|
|
31645
|
+
var version$1 = "2.8.12";
|
|
31641
31646
|
var v0 = /^(\d+)\.(\d+)\.(\d+)(-(\w+)\.\d+)?$/;
|
|
31642
31647
|
var standardVersion = /^(\d+)\.(\d+)$/;
|
|
31643
31648
|
var reverseParticle = false;
|
|
@@ -35337,7 +35342,7 @@ registerPlugin("text", TextLoader);
|
|
|
35337
35342
|
registerPlugin("sprite", SpriteLoader);
|
|
35338
35343
|
registerPlugin("particle", ParticleLoader);
|
|
35339
35344
|
registerPlugin("interact", InteractLoader);
|
|
35340
|
-
var version = "2.8.
|
|
35345
|
+
var version = "2.8.12";
|
|
35341
35346
|
logger.info("Core version: " + version + ".");
|
|
35342
35347
|
|
|
35343
35348
|
exports.ActivationMixerPlayable = ActivationMixerPlayable;
|