Commit graph

26 commits

Author SHA1 Message Date
DD Liu
931990bfca Revert "Revert "Put back in "Merge pull request from adroitwhiz/touching-white-fixes""" 2020-08-27 16:58:01 -04:00
DD Liu
0ae9cdd85c
Revert "Put back in "Merge pull request from adroitwhiz/touching-white-fixes"" 2020-08-27 15:17:40 -04:00
DD Liu
4a168693dd Merge branch 'develop' into pull676 2020-08-20 15:38:54 -04:00
Chris Willis-Ford
7356a5c0c7
Merge pull request from adroitwhiz/no-touching-bubbles
Don't include text bubbles in touching queries
2020-08-20 12:22:40 -07:00
Chris Willis-Ford
60a2ea8b45
Merge pull request from adroitwhiz/fixelate
Fix pixelate effect on CPU path
2020-08-17 12:39:12 -07:00
DD Liu
90040dfa55
Revert "Revert "Revert "Revert "Merge pull request from adroitwhiz/touching-white-fixes"""" 2020-08-11 16:12:52 -04:00
DD Liu
70fae9665a
Revert "Revert "Revert "Merge pull request from adroitwhiz/touching-white-fixes""" 2020-08-05 19:20:10 -04:00
DD Liu
b2346252f1
Revert "Revert "Merge pull request from adroitwhiz/touching-white-fixes"" 2020-08-04 16:31:10 -04:00
adroitwhiz
116d147faf Revert "Merge pull request from adroitwhiz/touching-white-fixes"
This reverts commit a1ca2eb924, reversing
changes made to fcdcffeec8.
2020-07-16 15:07:16 -04:00
adroitwhiz
c0b339f9dc Make text bubble test robust against future errors
Now, the test will check that text bubbles are not being touched both
immediately after appearing and 0.1 seconds after appearing.
2020-07-08 16:09:43 -04:00
adroitwhiz
ac935423af Don't include text bubbles in touching queries 2020-07-06 16:13:48 -04:00
adroitwhiz
a7d636827c add touching color test for common clear colors 2020-06-10 16:36:18 -04:00
Christopher Willis-Ford
298200f2ee Make touching-color test more robust against GPU imprecision
Previously, the `color-touching-tests.sb2` test "touches a color that
doesn't actually exist right now" would use a sprite with ghost 50,
blended against another sprite, to create the color that "doesn't
actually exist" when the query sprite is skipped. Unfortunately the
blend result was near a bit-boundary and, depending on the specific
hardware used, that test could fail on the GPU. When the renderer uses
the CPU path this test works fine, though, so the existing problem went
unnoticed.

To fix the problem I changed the project to use ghost 30 instead, which
results in a color that is less near a bit boundary and is therefore
less likely to fail on specific hardware.

As an example of what was happening: the `touching color` block was
checking for `RGB(127,101,216)` with a mask of `RGB(0xF8,0xF8,0xF0)`. On
the CPU it would find `RGB(120,99,215)`, which is in range, but on some
GPUs the closest color it could find was `RGB(119,98,215)` which
mismatches on all four of the least significant bits -- one of which is
enabled in the mask.
2020-05-12 15:52:51 -04:00
adroitwhiz
b9411bf51e Skip "doesn't touch say bubble" test
There are some compatibility concerns to be worked out before the
corresponding bug can be fixed.
2020-05-12 15:52:51 -04:00
adroitwhiz
3612461f9c
Merge pull request from adroitwhiz/fix-fence-bounds
Always use getAABB for fence bounds
2020-05-07 15:43:28 -04:00
adroitwhiz
e6dbc0a635 Add pixelate touching test 2020-03-20 21:25:09 -04:00
adroitwhiz
60e7e568d5 Add fencing test 2019-07-09 10:38:19 -04:00
adroitwhiz
6e755ea015 Add "disappearing pen" test 2019-04-20 02:47:25 -04:00
Paul Kaplan
757d7e3c96
Revert "Adjust CPU isTouchingColor to match GPU results (again)" 2019-04-19 16:13:47 -04:00
Christopher Willis-Ford
b304ea8fdf Make touching-color test more robust against GPU imprecision
Previously, the `color-touching-tests.sb2` test "touches a color that
doesn't actually exist right now" would use a sprite with ghost 50,
blended against another sprite, to create the color that "doesn't
actually exist" when the query sprite is skipped. Unfortunately the
blend result was near a bit-boundary and, depending on the specific
hardware used, that test could fail on the GPU. When the renderer uses
the CPU path this test works fine, though, so the existing problem went
unnoticed.

To fix the problem I changed the project to use ghost 30 instead, which
results in a color that is less near a bit boundary and is therefore
less likely to fail on specific hardware.

As an example of what was happening: the `touching color` block was
checking for `RGB(127,101,216)` with a mask of `RGB(0xF8,0xF8,0xF0)`. On
the CPU it would find `RGB(120,99,215)`, which is in range, but on some
GPUs the closest color it could find was `RGB(119,98,215)` which
mismatches on all four of the least significant bits -- one of which is
enabled in the mask.
2019-03-20 22:58:36 -07:00
Christopher Willis-Ford
9526612d79 Add touching-color test to verify stencil use 2019-03-20 11:21:05 -07:00
Katie Broida
1f0f89920a Always use getAABB for bitmap skins when determining fenced position 2019-02-11 11:56:59 -05:00
Katie Broida
c8b9516219 Use Math.ceil and Math.floor to match Scratch 2 logic 2019-02-04 16:03:33 -05:00
Michael "Z" Goddard
bcf8ff60e4 add cat-touches-pen integration test () 2018-08-08 14:04:16 -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
Mx Corey Frang
e5d1516b1b
Quick example of a collision test integration test ()
* Quick example of a collision test integration test

* Add a test for ghost and hidden sprites

* enable scratch/es6 which then had my lint error for `(param) => {}` arrows

* cleanup npm test command

* an a was an an but should have been an a

* 2space tabs for the html doc

* Add some comments in the integration index html

* Add a few more comments about intentionally leaking variables into the global scope

* add some more comments for the integration helper and add a timeout

* 4 space tabs are actually correct

* adding even more comments and improving readability a little

* fix lint no-shadow rule

* fix indentation on comment
2018-04-27 13:06:34 -04:00