Commit graph

4999 commits

Author SHA1 Message Date
Michael "Z" Goddard
bd14d53fb2
make sure drawable matrix and silhouette for mouse touching
RenderWebGL methods that test drawable touching should call
updateMatrix and updateSilhouette before calling drwaable.isTouching.
These methods are called by RenderWebGL instead of isTouching because
isTouching can be called repeatedly in quick succession. Calling update
methods in isTouching would waste a lot of cycles.
2018-10-04 11:50:38 -04:00
Chris Willis-Ford
5f9ca5b4fa
Merge pull request from wdr-data/fix/infinite-bounds-loop
Fix bug when bounds would be infinite and cause never ending loop
2018-10-02 12:18:21 -07:00
DD Liu
834c5eb984
Merge pull request from fsih/updateSvgRender 2018-09-26 11:33:11 -04:00
DD
ef91583603 Also update webpack cli because it's breaking travis 2018-09-26 11:23:02 -04:00
DD
3e084dfe26 Update scratch svg render 2018-09-26 11:16:03 -04:00
Marcus Weiner
fdea47d31c Fix bug when bounds would be infinite and cause never ending loop 2018-09-22 22:29:23 +02:00
Ray Schamp
24737982f0
Merge pull request from rschamp/snapshots
Add ability to get a snapshot of the next frame
2018-09-18 16:06:46 -04:00
Ray Schamp
cfaadfcc75
Merge pull request from rschamp/get-canvas
Add getter for the renderer's canvas
2018-09-18 16:01:53 -04:00
Ray Schamp
997062c851 Add JSDoc for requestSnapshot 2018-09-18 15:55:49 -04:00
Ray Schamp
90b1c47c3e Add getter for the renderer's canvas
Resolves 
2018-09-18 15:21:01 -04:00
Ray Schamp
550cd7aacf Add ability to get a snapshot of the next frame 2018-09-18 15:01:22 -04:00
DD Liu
9b5a33ce3c
Merge pull request from LLK/greenkeeper/scratch-svg-renderer-0.2.0-prerelease.20180907141232
Update scratch-svg-renderer to the latest version 🚀
2018-09-07 10:38:13 -04:00
greenkeeper[bot]
2eca0a8326 fix(package): update scratch-svg-renderer to version 0.2.0-prerelease.20180907141232 2018-09-07 14:15:07 +00:00
Michael "Z" Goddard
b901c1ac75
round drawable position
Scratch 2 rendered sprite position is at whole numbers, while its vm
position may be rational numbers.
2018-08-24 18:19:19 -04:00
Karishma Chadha
7d55dec445
Merge pull request from LLK/greenkeeper/scratch-storage-1.0.0
fix(package): update scratch-storage to version 1.0.0
2018-08-24 10:03:30 -04:00
Karishma Chadha
24c28cbb19
Merge pull request from LLK/greenkeeper/scratch-vm-0.2.0-prerelease.20180824135031
chore(package): update scratch-vm to version 0.2.0-prerelease.20180824135031
2018-08-24 10:02:23 -04:00
greenkeeper[bot]
54a2aaf9ba chore(package): update scratch-vm to version 0.2.0-prerelease.20180824135031
Closes 
2018-08-24 13:53:00 +00:00
greenkeeper[bot]
32bd87933a fix(package): update scratch-storage to version 1.0.0
Closes 
2018-08-23 22:10:48 +00:00
DD Liu
fa5e1df732
Merge pull request from LLK/greenkeeper/scratch-svg-renderer-0.2.0-prerelease.20180817005452
Update scratch-svg-renderer to the latest version 🚀
2018-08-20 11:34:03 -04:00
greenkeeper[bot]
5c6acbfb73 fix(package): update scratch-svg-renderer to version 0.2.0-prerelease.20180817005452 2018-08-17 10:41:41 +00:00
Christopher Willis-Ford
3ff532dbee Quick fix for line drawing gaps
This fixes 238747426 and mostly fixes 197728370 without breaking 225569460
2018-08-10 18:30:38 -07:00
Michael "Z" Goddard
4c8bc5d806
Framebuffer PenSkin ()
* draw pen skin lines and stamps to a framebuffer

* skip reading pixels and draw stamp to framebuffer

* update silhouette with readPixels

* draw pen canvas to buffer when its dirty

Composite lines and stamps on browser preferred side (cpu/gpu) until
the export texture is needed. Then blend the canvas with the current
buffer contents.

Updating this way invalidates useProgram optimization and the renderer
currently does not have a way to know this.

* draw lines on framebuffer through fragment shader

* optimize draw regions and pen skin matrix creation

* control draw regions

* mobile gpus need high precision floats for line drawing

* optimize cpu pen line math

* sampled pen line caps

* sampleless pen skin lines, lint, document pen skin buffer ops

* add PenSkin._canvasDirty to constructor

* remove DRAW_MODE_line

* comment PenSkin reused memory, use memory in drawRectangle

* turn draw region id's into optional method handlers

A region ID object may have an enter and exit method on it that are
used by default when entering and exiting that region.

* remove old DRAW_MODE_line precision setting

* standardize vert lines on 4 spaces

* fixup! turn draw region id's into optional method handlers

* do not draw when updating pen skin silhouette

* do not premultiply stamp colors by alpha

* fixup! do not draw when updating pen skin silhouette

* do not premultiply line color

* add a small rim around the line for aliasing

* variable pen line alias amount

* reverse offset pen line on y axis by relative alias amount

Reverse the offset to keep small line overlap to a minimum.

* fixup! reverse offset pen line on y axis by relative alias amount

* medium precision gpu floats
2018-08-08 14:30:51 -04:00
Mx Corey Frang
c54a928f0a
Touching color implementation ()
* Touching color draft implementation

* New constant for CPU/GPU render split determined, removing query param

* Small fix for pick tests
2018-08-08 14:20:35 -04:00
greenkeeper[bot]
62b4a1d5a2 chore(package): update scratch-vm to version 0.2.0-prerelease.20180802142248 () 2018-08-08 14:06:07 -04:00
Michael "Z" Goddard
d88b2b4df4 offset pen lines of width 1 and 3 () 2018-08-08 14:05:30 -04:00
Michael "Z" Goddard
c08b853519 add uniformName to ShaderManager EFFECT_INFO entries () 2018-08-08 14:04:37 -04:00
Michael "Z" Goddard
bcf8ff60e4 add cat-touches-pen integration test () 2018-08-08 14:04:16 -04:00
Mx Corey Frang
8b965032a7
fix travis.yml to quote github author name for deploy () 2018-08-07 11:08:36 -04:00
Mx Corey Frang
6863613d20
Optimizing isTouching while creating a drawableTouches for sensing mouse pointer ()
* Allow 'isTouching' and 'pick' to still work on invisible drawables.

* Always ignore visibility for isTouching on drawable

* Filter invisble drawbles in isTouchingDrawable per rules of collision

* polish up some docs/get logic 👍

* leftover line from deleted comment

* revert to ghosted pick behavior

* Add clientSpaceToScratchBounds method

* fix lint

* add some pick tests
2018-08-07 10:56:28 -04:00
Paul Kaplan
87faddf50d
Merge pull request from paulkaplan/fix-vm-update
Update scratch-vm and svg-renderer dependency and fix tests
2018-07-25 09:41:53 -04:00
Paul Kaplan
bf12823037 Update scratch-vm and svg-renderer dependency and fix tests 2018-07-24 15:58:26 -04:00
kchadha
85f40266f0
Merge pull request from kchadha/get-drawable-order
Add API for getting the drawable order of a given drawable.
2018-07-24 11:19:17 -04:00
Karishma Chadha
11671ee885 Add API for getting the drawable order of a given drawable. 2018-07-24 11:05:38 -04:00
Mx Corey Frang
b753c37899
Add a test case for touching color ()
* Add a test case for touching color

* Add a say bubble based touching color test
2018-07-20 10:03:06 -04:00
Andrew Sliwinski
6fe4c33365
Update TRADEMARK 2018-06-18 13:16:21 -04:00
Paul Kaplan
6035ea29d0
Merge pull request from LLK/greenkeeper/scratch-svg-renderer-0.2.0-prerelease.20180613184320
Update scratch-svg-renderer to the latest version 🚀
2018-06-15 09:05:47 -04:00
greenkeeper[bot]
bdde0168ae fix(package): update scratch-svg-renderer to version 0.2.0-prerelease.20180613184320 2018-06-13 20:54:04 +00:00
Paul Kaplan
0d1d0d3552
Merge pull request from LLK/greenkeeper/scratch-svg-renderer-0.2.0-prerelease.20180605154326
Update scratch-svg-renderer to the latest version 🚀
2018-06-13 15:19:27 -04:00
greenkeeper[bot]
f10f18042e fix(package): update scratch-svg-renderer to version 0.2.0-prerelease.20180605154326 2018-06-05 15:55:07 +00:00
Paul Kaplan
ebd5378936
Merge pull request from paulkaplan/update-svg-renderer
Update scratch-svg-renderer
2018-06-05 10:51:43 -04:00
Paul Kaplan
a4b8460cf0 Update scratch-svg-renderer 2018-06-05 10:26:56 -04:00
DD Liu
18d4567d66
Merge pull request from fsih/updateDeps
update svg renderer
2018-05-31 17:24:49 -04:00
DD
ac8ab4e495 update svg renderer' 2018-05-31 17:11:35 -04:00
Ray Schamp
eb95e2e663
Merge pull request from mzgoddard/dependents-no-boiler
Use src/index for browser entry point
2018-05-31 16:57:03 -04:00
Michael "Z" Goddard
9b869e0da7 Depend on script dependencies for downstream webpack
Downstream webpack will need any dependencies src/ depends on so it can
successfully build. Also if multiple packages being built into a larger
script share a common dependency version range, they can share the
dependency instead of duplicating it. This will save built file size,
execution time, and memory.
2018-05-31 16:49:21 -04:00
Paul Kaplan
d7e39a35d7
Merge pull request from paulkaplan/fix-escaping
Remove duplicate xml escaping
2018-05-29 16:18:31 -04:00
Paul Kaplan
44c30d76ad Add snapshot test for bubble svg strings 2018-05-29 15:28:16 -04:00
Paul Kaplan
d7b26ea1be Remove duplicate xml escaping
We used to write the user string directly into the svg string, but now we are setting the `.textContent` of an actual dom node, which does the escaping for us.
2018-05-29 14:25:35 -04:00
kchadha
7f53a4a19e
Merge pull request from kchadha/layer-ordering
Layer ordering
2018-05-25 09:31:37 -04:00
kchadha
d8f82b21ec
Merge branch 'develop' into layer-ordering 2018-05-25 09:23:02 -04:00