Skip to content

Commit 80f1ec0

Browse files
fix: Remove duplicate code sample, and fix vertex artifacts in webgl2
feat: use speed tactic in fluid dynamics
1 parent 6eafe70 commit 80f1ec0

File tree

6 files changed

+110
-166
lines changed

6 files changed

+110
-166
lines changed

dist/gpu-browser-core.js

Lines changed: 43 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
* GPU Accelerated JavaScript
66
*
77
* @version 2.0.0-rc.26
8-
* @date Fri Aug 23 2019 10:13:10 GMT-0400 (EDT)
8+
* @date Fri Aug 23 2019 10:23:34 GMT-0400 (Eastern Daylight Time)
99
*
1010
* @license MIT
1111
* The MIT License
@@ -4885,37 +4885,49 @@ class GLKernel extends Kernel {
48854885

48864886
getFloatTacticDeclaration() {
48874887
switch (this.tactic) {
4888-
case 'speed': return 'precision lowp float;\n';
4889-
case 'performance': return 'precision highp float;\n';
4888+
case 'speed':
4889+
return 'precision lowp float;\n';
4890+
case 'performance':
4891+
return 'precision highp float;\n';
48904892
case 'balanced':
4891-
default: return 'precision mediump float;\n';
4893+
default:
4894+
return 'precision mediump float;\n';
48924895
}
48934896
}
48944897

48954898
getIntTacticDeclaration() {
48964899
switch (this.tactic) {
4897-
case 'speed': return 'precision lowp int;\n';
4898-
case 'performance': return 'precision highp int;\n';
4900+
case 'speed':
4901+
return 'precision lowp int;\n';
4902+
case 'performance':
4903+
return 'precision highp int;\n';
48994904
case 'balanced':
4900-
default: return 'precision mediump int;\n';
4905+
default:
4906+
return 'precision mediump int;\n';
49014907
}
49024908
}
49034909

49044910
getSampler2DTacticDeclaration() {
49054911
switch (this.tactic) {
4906-
case 'speed': return 'precision lowp sampler2D;\n';
4907-
case 'performance': return 'precision highp sampler2D;\n';
4912+
case 'speed':
4913+
return 'precision lowp sampler2D;\n';
4914+
case 'performance':
4915+
return 'precision highp sampler2D;\n';
49084916
case 'balanced':
4909-
default: return 'precision mediump sampler2D;\n';
4917+
default:
4918+
return 'precision mediump sampler2D;\n';
49104919
}
49114920
}
49124921

49134922
getSampler2DArrayTacticDeclaration() {
49144923
switch (this.tactic) {
4915-
case 'speed': return 'precision lowp sampler2DArray;\n';
4916-
case 'performance': return 'precision highp sampler2DArray;\n';
4924+
case 'speed':
4925+
return 'precision lowp sampler2DArray;\n';
4926+
case 'performance':
4927+
return 'precision highp sampler2DArray;\n';
49174928
case 'balanced':
4918-
default: return 'precision mediump sampler2DArray;\n';
4929+
default:
4930+
return 'precision mediump sampler2DArray;\n';
49194931
}
49204932
}
49214933

@@ -5082,7 +5094,6 @@ module.exports = {
50825094
GLKernel,
50835095
renderStrategy
50845096
};
5085-
50865097
},{"../../texture":106,"../../utils":107,"../kernel":34,"./texture/array-2-float":15,"./texture/array-2-float-2d":13,"./texture/array-2-float-3d":14,"./texture/array-3-float":18,"./texture/array-3-float-2d":16,"./texture/array-3-float-3d":17,"./texture/array-4-float":21,"./texture/array-4-float-2d":19,"./texture/array-4-float-3d":20,"./texture/float":24,"./texture/float-2d":22,"./texture/float-3d":23,"./texture/graphical":25,"./texture/memory-optimized":28,"./texture/memory-optimized-2d":26,"./texture/memory-optimized-3d":27,"./texture/unsigned":31,"./texture/unsigned-2d":29,"./texture/unsigned-3d":30}],13:[function(require,module,exports){
50875098
const { utils } = require('../../../utils');
50885099
const { GLTextureFloat } = require('./float');
@@ -5657,7 +5668,6 @@ class KernelValue {
56575668
module.exports = {
56585669
KernelValue
56595670
};
5660-
56615671
},{}],34:[function(require,module,exports){
56625672
const { utils } = require('../utils');
56635673
const { Input } = require('../input');
@@ -6109,7 +6119,6 @@ class Kernel {
61096119
module.exports = {
61106120
Kernel
61116121
};
6112-
61136122
},{"../input":103,"../utils":107}],35:[function(require,module,exports){
61146123
const fragmentShader = `__HEADER__;
61156124
__FLOAT_TACTIC_DECLARATION__;
@@ -6516,7 +6525,6 @@ void main(void) {
65166525
module.exports = {
65176526
fragmentShader
65186527
};
6519-
65206528
},{}],36:[function(require,module,exports){
65216529
const { utils } = require('../../utils');
65226530
const { FunctionNode } = require('../function-node');
@@ -8542,18 +8550,20 @@ class WebGLKernelValue extends KernelValue {
85428550

85438551
getVariablePrecisionString() {
85448552
switch (this.tactic) {
8545-
case 'speed': return 'lowp';
8546-
case 'performance': return 'highp';
8553+
case 'speed':
8554+
return 'lowp';
8555+
case 'performance':
8556+
return 'highp';
85478557
case 'balanced':
8548-
default: return 'mediump';
8558+
default:
8559+
return 'mediump';
85498560
}
85508561
}
85518562
}
85528563

85538564
module.exports = {
85548565
WebGLKernelValue
85558566
};
8556-
85578567
},{"../../../input":103,"../../../utils":107,"../../kernel-value":33}],52:[function(require,module,exports){
85588568
const { utils } = require('../../../utils');
85598569
const { WebGLKernelValue } = require('./index');
@@ -10536,7 +10546,6 @@ class WebGLKernel extends GLKernel {
1053610546
module.exports = {
1053710547
WebGLKernel
1053810548
};
10539-
1054010549
},{"../../plugins/triangle-noise":105,"../../utils":107,"../function-builder":8,"../gl/kernel":12,"../gl/kernel-string":11,"./fragment-shader":35,"./function-node":36,"./kernel-value-maps":37,"./vertex-shader":66}],66:[function(require,module,exports){
1054110550
const vertexShader = `__FLOAT_TACTIC_DECLARATION__;
1054210551
__INT_TACTIC_DECLARATION__;
@@ -10556,7 +10565,6 @@ void main(void) {
1055610565
module.exports = {
1055710566
vertexShader
1055810567
};
10559-
1056010568
},{}],67:[function(require,module,exports){
1056110569
const fragmentShader = `#version 300 es
1056210570
__HEADER__;
@@ -10951,7 +10959,6 @@ void main(void) {
1095110959
module.exports = {
1095210960
fragmentShader
1095310961
};
10954-
1095510962
},{}],68:[function(require,module,exports){
1095610963
const { WebGLFunctionNode } = require('../web-gl/function-node');
1095710964

@@ -11206,7 +11213,6 @@ class WebGL2KernelValueDynamicHtmlImageArray extends WebGL2KernelValueHtmlImageA
1120611213
module.exports = {
1120711214
WebGL2KernelValueDynamicHtmlImageArray
1120811215
};
11209-
1121011216
},{"./html-image-array":83}],72:[function(require,module,exports){
1121111217
const { utils } = require('../../../utils');
1121211218
const { WebGLKernelValueDynamicHTMLImage } = require('../../web-gl/kernel-value/dynamic-html-image');
@@ -11225,7 +11231,6 @@ class WebGL2KernelValueDynamicHTMLImage extends WebGLKernelValueDynamicHTMLImage
1122511231
module.exports = {
1122611232
WebGL2KernelValueDynamicHTMLImage
1122711233
};
11228-
1122911234
},{"../../../utils":107,"../../web-gl/kernel-value/dynamic-html-image":39}],73:[function(require,module,exports){
1123011235
const { utils } = require('../../../utils');
1123111236
const { WebGLKernelValueDynamicMemoryOptimizedNumberTexture } = require('../../web-gl/kernel-value/dynamic-memory-optimized-number-texture');
@@ -11261,7 +11266,6 @@ class WebGL2KernelValueDynamicNumberTexture extends WebGLKernelValueDynamicNumbe
1126111266
module.exports = {
1126211267
WebGL2KernelValueDynamicNumberTexture
1126311268
};
11264-
1126511269
},{"../../../utils":107,"../../web-gl/kernel-value/dynamic-number-texture":41}],75:[function(require,module,exports){
1126611270
const { utils } = require('../../../utils');
1126711271
const { WebGL2KernelValueSingleArray } = require('../../web-gl2/kernel-value/single-array');
@@ -11290,7 +11294,6 @@ class WebGL2KernelValueDynamicSingleArray extends WebGL2KernelValueSingleArray {
1129011294
module.exports = {
1129111295
WebGL2KernelValueDynamicSingleArray
1129211296
};
11293-
1129411297
},{"../../../utils":107,"../../web-gl2/kernel-value/single-array":88}],76:[function(require,module,exports){
1129511298
const { utils } = require('../../../utils');
1129611299
const { WebGL2KernelValueSingleArray1DI } = require('../../web-gl2/kernel-value/single-array1d-i');
@@ -11316,7 +11319,6 @@ class WebGL2KernelValueDynamicSingleArray1DI extends WebGL2KernelValueSingleArra
1131611319
module.exports = {
1131711320
WebGL2KernelValueDynamicSingleArray1DI
1131811321
};
11319-
1132011322
},{"../../../utils":107,"../../web-gl2/kernel-value/single-array1d-i":89}],77:[function(require,module,exports){
1132111323
const { utils } = require('../../../utils');
1132211324
const { WebGL2KernelValueSingleArray2DI } = require('../../web-gl2/kernel-value/single-array2d-i');
@@ -11342,7 +11344,6 @@ class WebGL2KernelValueDynamicSingleArray2DI extends WebGL2KernelValueSingleArra
1134211344
module.exports = {
1134311345
WebGL2KernelValueDynamicSingleArray2DI
1134411346
};
11345-
1134611347
},{"../../../utils":107,"../../web-gl2/kernel-value/single-array2d-i":91}],78:[function(require,module,exports){
1134711348
const { utils } = require('../../../utils');
1134811349
const { WebGL2KernelValueSingleArray3DI } = require('../../web-gl2/kernel-value/single-array3d-i');
@@ -11368,7 +11369,6 @@ class WebGL2KernelValueDynamicSingleArray3DI extends WebGL2KernelValueSingleArra
1136811369
module.exports = {
1136911370
WebGL2KernelValueDynamicSingleArray3DI
1137011371
};
11371-
1137211372
},{"../../../utils":107,"../../web-gl2/kernel-value/single-array3d-i":93}],79:[function(require,module,exports){
1137311373
const { utils } = require('../../../utils');
1137411374
const { WebGL2KernelValueSingleInput } = require('../../web-gl2/kernel-value/single-input');
@@ -11398,7 +11398,6 @@ class WebGL2KernelValueDynamicSingleInput extends WebGL2KernelValueSingleInput {
1139811398
module.exports = {
1139911399
WebGL2KernelValueDynamicSingleInput
1140011400
};
11401-
1140211401
},{"../../../utils":107,"../../web-gl2/kernel-value/single-input":95}],80:[function(require,module,exports){
1140311402
const { utils } = require('../../../utils');
1140411403
const { WebGLKernelValueDynamicUnsignedArray } = require('../../web-gl/kernel-value/dynamic-unsigned-array');
@@ -11417,7 +11416,6 @@ class WebGL2KernelValueDynamicUnsignedArray extends WebGLKernelValueDynamicUnsig
1141711416
module.exports = {
1141811417
WebGL2KernelValueDynamicUnsignedArray
1141911418
};
11420-
1142111419
},{"../../../utils":107,"../../web-gl/kernel-value/dynamic-unsigned-array":47}],81:[function(require,module,exports){
1142211420
const { utils } = require('../../../utils');
1142311421
const { WebGLKernelValueDynamicUnsignedInput } = require('../../web-gl/kernel-value/dynamic-unsigned-input');
@@ -11436,7 +11434,6 @@ class WebGL2KernelValueDynamicUnsignedInput extends WebGLKernelValueDynamicUnsig
1143611434
module.exports = {
1143711435
WebGL2KernelValueDynamicUnsignedInput
1143811436
};
11439-
1144011437
},{"../../../utils":107,"../../web-gl/kernel-value/dynamic-unsigned-input":48}],82:[function(require,module,exports){
1144111438
const { utils } = require('../../../utils');
1144211439
const { WebGLKernelValueFloat } = require('../../web-gl/kernel-value/float');
@@ -11513,7 +11510,6 @@ class WebGL2KernelValueHtmlImageArray extends WebGLKernelValue {
1151311510
module.exports = {
1151411511
WebGL2KernelValueHtmlImageArray
1151511512
};
11516-
1151711513
},{"../../../utils":107,"../../web-gl/kernel-value/index":51}],84:[function(require,module,exports){
1151811514
const { utils } = require('../../../utils');
1151911515
const { WebGLKernelValueHTMLImage } = require('../../web-gl/kernel-value/html-image');
@@ -11532,7 +11528,6 @@ class WebGL2KernelValueHTMLImage extends WebGLKernelValueHTMLImage {
1153211528
module.exports = {
1153311529
WebGL2KernelValueHTMLImage
1153411530
};
11535-
1153611531
},{"../../../utils":107,"../../web-gl/kernel-value/html-image":50}],85:[function(require,module,exports){
1153711532
const { utils } = require('../../../utils');
1153811533
const { WebGLKernelValueInteger } = require('../../web-gl/kernel-value/integer');
@@ -11555,7 +11550,6 @@ class WebGL2KernelValueInteger extends WebGLKernelValueInteger {
1155511550
module.exports = {
1155611551
WebGL2KernelValueInteger
1155711552
};
11558-
1155911553
},{"../../../utils":107,"../../web-gl/kernel-value/integer":52}],86:[function(require,module,exports){
1156011554
const { utils } = require('../../../utils');
1156111555
const { WebGLKernelValueMemoryOptimizedNumberTexture } = require('../../web-gl/kernel-value/memory-optimized-number-texture');
@@ -11574,7 +11568,6 @@ class WebGL2KernelValueMemoryOptimizedNumberTexture extends WebGLKernelValueMemo
1157411568
module.exports = {
1157511569
WebGL2KernelValueMemoryOptimizedNumberTexture
1157611570
};
11577-
1157811571
},{"../../../utils":107,"../../web-gl/kernel-value/memory-optimized-number-texture":53}],87:[function(require,module,exports){
1157911572
const { utils } = require('../../../utils');
1158011573
const { WebGLKernelValueNumberTexture } = require('../../web-gl/kernel-value/number-texture');
@@ -11593,7 +11586,6 @@ class WebGL2KernelValueNumberTexture extends WebGLKernelValueNumberTexture {
1159311586
module.exports = {
1159411587
WebGL2KernelValueNumberTexture
1159511588
};
11596-
1159711589
},{"../../../utils":107,"../../web-gl/kernel-value/number-texture":54}],88:[function(require,module,exports){
1159811590
const { utils } = require('../../../utils');
1159911591
const { WebGLKernelValueSingleArray } = require('../../web-gl/kernel-value/single-array');
@@ -11629,7 +11621,6 @@ class WebGL2KernelValueSingleArray extends WebGLKernelValueSingleArray {
1162911621
module.exports = {
1163011622
WebGL2KernelValueSingleArray
1163111623
};
11632-
1163311624
},{"../../../utils":107,"../../web-gl/kernel-value/single-array":55}],89:[function(require,module,exports){
1163411625
const { utils } = require('../../../utils');
1163511626
const { WebGLKernelValueSingleArray1DI } = require('../../web-gl/kernel-value/single-array1d-i');
@@ -11763,7 +11754,6 @@ class WebGL2KernelValueSingleInput extends WebGLKernelValueSingleInput {
1176311754
module.exports = {
1176411755
WebGL2KernelValueSingleInput
1176511756
};
11766-
1176711757
},{"../../../utils":107,"../../web-gl/kernel-value/single-input":62}],96:[function(require,module,exports){
1176811758
const { utils } = require('../../../utils');
1176911759
const { WebGLKernelValueUnsignedArray } = require('../../web-gl/kernel-value/unsigned-array');
@@ -11782,7 +11772,6 @@ class WebGL2KernelValueUnsignedArray extends WebGLKernelValueUnsignedArray {
1178211772
module.exports = {
1178311773
WebGL2KernelValueUnsignedArray
1178411774
};
11785-
1178611775
},{"../../../utils":107,"../../web-gl/kernel-value/unsigned-array":63}],97:[function(require,module,exports){
1178711776
const { utils } = require('../../../utils');
1178811777
const { WebGLKernelValueUnsignedInput } = require('../../web-gl/kernel-value/unsigned-input');
@@ -11801,7 +11790,6 @@ class WebGL2KernelValueUnsignedInput extends WebGLKernelValueUnsignedInput {
1180111790
module.exports = {
1180211791
WebGL2KernelValueUnsignedInput
1180311792
};
11804-
1180511793
},{"../../../utils":107,"../../web-gl/kernel-value/unsigned-input":64}],98:[function(require,module,exports){
1180611794
const { WebGLKernel } = require('../web-gl/kernel');
1180711795
const { WebGL2FunctionNode } = require('./function-node');
@@ -12147,17 +12135,23 @@ class WebGL2Kernel extends WebGLKernel {
1214712135
const subKernels = this.subKernels;
1214812136
if (subKernels === null || subKernels.length < 1) {
1214912137
switch (this.tactic) {
12150-
case 'speed': return 'in lowp vec2 vTexCoord;\n';
12151-
case 'performance': return 'in highp vec2 vTexCoord;\n';
12138+
case 'speed':
12139+
return 'in lowp vec2 vTexCoord;\n';
12140+
case 'performance':
12141+
return 'in highp vec2 vTexCoord;\n';
1215212142
case 'balanced':
12153-
default: return 'in mediump vec2 vTexCoord;\n';
12143+
default:
12144+
return 'in mediump vec2 vTexCoord;\n';
1215412145
}
1215512146
} else {
1215612147
switch (this.tactic) {
12157-
case 'speed': return 'out lowp vec2 vTexCoord;\n';
12158-
case 'performance': return 'out highp vec2 vTexCoord;\n';
12148+
case 'speed':
12149+
return 'out lowp vec2 vTexCoord;\n';
12150+
case 'performance':
12151+
return 'out highp vec2 vTexCoord;\n';
1215912152
case 'balanced':
12160-
default: return 'out mediump vec2 vTexCoord;\n';
12153+
default:
12154+
return 'out mediump vec2 vTexCoord;\n';
1216112155
}
1216212156
}
1216312157
}
@@ -12411,20 +12405,6 @@ class WebGL2Kernel extends WebGLKernel {
1241112405
return result;
1241212406
}
1241312407

12414-
getFragmentShader(args) {
12415-
if (this.compiledFragmentShader !== null) {
12416-
return this.compiledFragmentShader;
12417-
}
12418-
return this.compiledFragmentShader = this.replaceArtifacts(this.constructor.fragmentShader, this._getFragShaderArtifactMap(args));
12419-
}
12420-
12421-
getVertexShader(args) {
12422-
if (this.compiledVertexShader !== null) {
12423-
return this.compiledVertexShader;
12424-
}
12425-
return this.compiledVertexShader = this.constructor.vertexShader;
12426-
}
12427-
1242812408
destroyExtensions() {
1242912409
this.extensions.EXT_color_buffer_float = null;
1243012410
this.extensions.OES_texture_float_linear = null;
@@ -12461,7 +12441,6 @@ void main(void) {
1246112441
module.exports = {
1246212442
vertexShader
1246312443
};
12464-
1246512444
},{}],100:[function(require,module,exports){
1246612445
const lib = require('./index');
1246712446
const GPU = lib.GPU;

dist/gpu-browser-core.min.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)