750 Commits

Author SHA1 Message Date
Robert Plummer
230d09508c fix: nodeName 2022-03-28 10:51:31 -04:00
Robert Plummer
7bc4992610 fix: OffscreenCanvas, ImageBitmap, and ImageData throws 2022-03-28 10:34:23 -04:00
Robert Plummer
8dcd0546b6 feat: Read from ImageData
And tests and docs
2022-01-26 17:12:49 -05:00
Robert Plummer
49ee619d82 chore: Bump version number and docs 2022-01-26 16:32:18 -05:00
Robert Plummer
5622b0127b feat: Read from ImageBitmap
Also fixed CPU processing of OffscreenCanvas
2022-01-26 16:28:14 -05:00
Robert Plummer
8a7babaf00 feat: Read from OffscreenCanvas
And unit tests
2022-01-26 15:35:04 -05:00
Robert Plummer
97c19d5db6 fix: Use Array(2), Array(3), and Array(4) with both unsigned and single precision 2021-04-14 16:50:55 -04:00
Robert Plummer
b2a4aa8497 Merge branch 'develop' of https://github.com/gpujs/gpu.js into develop 2021-01-19 11:26:03 -05:00
Robert Plummer
c2b75366c6
Merge pull request #665 from evanakm/remove-trailing-commas
Remove trailing commas
2021-01-19 11:25:42 -05:00
Robert Plummer
3be597da99 Merge branch 'master' into develop 2021-01-19 11:20:53 -05:00
Evan Meikleham
c3db33590c Remove trailing commas 2021-01-18 22:40:35 -05:00
David Tittsworth
40a83eccfa Added a fix for a crash when using a pipeline kernel and a constant texture 2021-01-18 08:09:26 -08:00
Robert Plummer
026763ac74 fix: Better type exports 2021-01-13 15:31:23 -05:00
Robert Plummer
7e3fa3acb0 feat: Removal of istanbul handling
https://github.com/gotwarlost/istanbul/issues/922 & https://github.com/istanbuljs/istanbuljs/issues/499
2021-01-05 15:57:15 -05:00
Robert Plummer
e3fd163505 fix: Ensure arguments are targeted correctly
fix: Added a missing jsdoc
2020-12-02 15:16:35 -05:00
Robert Plummer
d489f1dcb8 fix: Provide native function reordering like standard functions
fix: Provide inline functions source when error
2020-11-12 14:06:19 -05:00
Robert Plummer
ccf9290fb3 fix: Update gpu-mock.js & Texture typeing 2020-09-23 06:05:13 -04:00
Robert Plummer
1dc2739c03 fix: Improve kernel maps typings 2020-09-18 15:41:53 -04:00
Robert Plummer
d5212d3887 fix: Making typescript play more nice 2020-09-17 12:51:21 -04:00
Robert Plummer
4396151d44 fix: Add Float32Array typings 2020-09-10 13:08:45 -04:00
Robert Plummer
c09e0b6325 fix: Merge master in, bump, and build 2020-08-25 14:06:40 -04:00
Robert Plummer
bee71782fe feat: Experimental internally defined matrixes 2020-08-25 14:04:39 -04:00
Robert Plummer
3b39adef85 fix: Move framebuffer for raw values to kernel 2020-08-11 08:37:30 -04:00
Robert Plummer
e8202a69ea fix: Mixing var and let/const contexts 2020-05-02 11:50:53 -04:00
Robert Plummer
4d2f27e596 fix: #590 add Kernel.onActivate
- which is called after gpu.js switches kernels based off need
fix: Consistent error message for values that are not defined
fix: Add recompiled kernels to gpu.js kernels property and test
fix: Move texture deleting to within the GLKernel Texture implementation
fix: Add Texture.clear as an abstract method on the base Texture
fix: Bump and build
2020-04-01 08:24:49 -04:00
Robert Plummer
7e62639033 fix: #585 check for inaccurate results for very small kernel
fix: #585 add features.isSpeedTacticSupported and tests
2020-03-30 08:21:09 -04:00
Robert Plummer
1955ad3500 fix: #586 2020-03-24 07:53:57 -04:00
Robert Plummer
61dfe8a46a fix: #572 excessive calls, reuse textures
feat: introduce WebGL._replaceOutputTexture and WebGL._replaceSubOutputTextures to cut down on resource usage
feat: All supportable Math.methods added
fix: Safari not able to render texture arguments
feat: CPU gets a pipeline that acts like GPU with/without immutable
2020-03-22 17:29:26 -04:00
Robert Plummer
a37fe28818 fix: Memory leaks on build if called more than once 2020-03-20 08:27:24 -04:00
sarthak saxena
bfa3433585
Add type for Uint8ClampedArray in KernelVariable
```
render = new GPU.GPU({ mode: "gpu" })
render(image.data, 14 * Math.sin(Date.now() / 400))
```
Since image data is of type Uint8ClampedArray & KernelVariable does not support the same hence gives type error


Ex: https://observablehq.com/@fil/image-to-gpu
2020-03-18 20:01:17 +05:30
Robert Plummer
8cfbf0cad7 fix: Clearing cloned textures produces new internal copy when multi references 2020-03-16 10:59:04 -04:00
Robert Plummer
6df34b3a90 fix: Don't call beforeMutate if immutable and unit test 2020-03-16 08:40:04 -04:00
Robert Plummer
b1af9b3c4c fix: Don't call kernel.updateTextureArgumentRefs if kernel is mutable 2020-03-12 07:40:15 -04:00
Robert Plummer
f88d92cc40 feat: Bring back kernel.immutable and kernel.setImmutable() with defaults to false
Along with tests and documentation on which versions are affected.  Sorry for the inconvenience!
feat: Add more advanced-typescript.ts
fix: Alter documentation mentioning v2
fix: Example of fluid.html, to use `immutable`
2020-03-11 07:36:50 -04:00
Robert Plummer
3fe63f6db3 feat: Add texture.empty() support and tests 2020-03-10 16:16:13 -04:00
Robert Plummer
54518beecd fix: Add missing Math.tanh support and test 2020-03-09 05:46:34 -04:00
Robert Plummer
9286f5669d fix: Move argument sanitization to when writing strings only 2020-02-16 15:58:24 -05:00
Robert Plummer
3cc8987d79 fix: Underscore and test, version bump, and code coverage command
ty c8!
2020-02-16 14:38:33 -05:00
Robert Plummer
b69644c17a fix: Use case of CallExpression
in WebGL.astCallExpression
2020-02-11 08:12:45 -05:00
Robert Plummer
012cfff566 fix: #522 related, add missing deprecated method with warning 2020-01-24 10:41:27 -05:00
Robert Plummer
5a6d817d77 fix: #519 funny names from minification and upgrade typescript
So c35717e3b4 is properly supported.
2020-01-23 07:20:40 -05:00
Robert Plummer
b2c9051f7e fix: #534 2020-01-21 08:17:02 -05:00
Robert Plummer
db54434166 fix: Modulo performance and simplify tests
fix: Modulo negatives
fix: Modulo accuracy issue on OSX with `integerCorrectionModulo`
fix: Follow naming convention `div_with_int_check` to `divWithIntCheck`
fix: Member expression with function
fix: CPU variable assignment
fix: `gpu.addFunction` needed to be before createKernel and documentation
fix: mandelbulb.html from above .addFunction
2020-01-21 07:37:48 -05:00
Robert Plummer
16bed1596e fix: If already an IGPUFunction don't convert to one 2020-01-19 07:47:05 -05:00
Robert Plummer
de98b0102d feat: Finish HTMLCanvas input from PR https://github.com/gpujs/gpu.js/pull/566
fix: #567
fix: #569
fix: #568
fix: #565
fix: #564
2020-01-18 08:42:09 -05:00
Robert Plummer
13f70f427d
Merge pull request #566 from InkLabApp/develop
Added Canvas Elements as valid input to Kernel
2020-01-17 15:23:30 -05:00
InkLab
84debbb4d3 Added Canvas Elements as valid input to Kernel
This small change only allows single canvas elements as kernel input. They have
the exact same properties and use cases as html images, bit if you need to use
a canvas directly it is more efficient than converting it to an image first.
2020-01-14 17:49:44 -05:00
Robert Plummer
254b06791f feat: Handle ++ in function-tracer.js
This is in favor of using for loop variable position tracking, which is removed.
feat: Removal of no longer needed `warnVarUsage`
feat: If ternary returns void, use if statement in webgl
fix: Update documentation and clarify variable declarations
  Officially support private functions - WOOHOO!
2020-01-14 07:01:23 -05:00
Robert Plummer
cd0b417c67 fix: #552 remove incorrect texture size checks
fix: texture.renderRawOutput to use existing framebuffer, or make it so it can be deleted
fix: glKernelString to handle the framebuffer from texture.renderRawOutput
fix: WebGLKernelArray.checkSize so display error for all three scenarios
  1. width too big
  2. height too big
  3. width and height too big
2020-01-08 07:13:37 -05:00
Robert Plummer
03972cc1fa fix: #553 call gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, false); on every texture type and add unit tests
fix: Framebuffer loss after texture is deleted
fix: Split up array and primitive (index.js) types of KernelValues and introduce .setup()
  * This was needed to handle .toArray() from the fix from #553
fix: Performance fix, define texture types in `kernelValue.setup()`, rather than on every `kernelValue.updateValue()`
2020-01-06 13:36:00 -05:00