kopia lustrzana https://github.com/backface/turtlestitch
optimized collision detection
by only looking at the alpha channel datapull/89/head
rodzic
c5746036b8
commit
71f3b37f14
|
@ -4,11 +4,15 @@
|
|||
* **New Features:**
|
||||
* **Notable Changes:**
|
||||
* gliding animation when inserting blocks using the keyboard
|
||||
* optimized collision detection
|
||||
* **Notable Fixes:**
|
||||
* list watchers occasionally didn't show cells after reassigning a changed list to a variable
|
||||
* FOREACH over a linked list failed for scripts mutating it
|
||||
* **Translation Updates:**
|
||||
|
||||
### 2019-07-02
|
||||
* morphic: optimized collision detection by only looking at the alpha channel data
|
||||
|
||||
### 2019-07-01
|
||||
* new dev version
|
||||
* lists: fixed #2446
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>Snap! Build Your Own Blocks 5.0.1 - dev -</title>
|
||||
<link rel="shortcut icon" href="src/favicon.ico">
|
||||
<script type="text/javascript" src="src/morphic.js?version=2019-07-01"></script>
|
||||
<script type="text/javascript" src="src/morphic.js?version=2019-07-02"></script>
|
||||
<script type="text/javascript" src="src/widgets.js?version=2019-06-27"></script>
|
||||
<script type="text/javascript" src="src/blocks.js?version=2019-07-01"></script>
|
||||
<script type="text/javascript" src="src/threads.js?version=2019-07-01"></script>
|
||||
|
|
|
@ -1162,7 +1162,7 @@
|
|||
|
||||
/*global window, HTMLCanvasElement, FileReader, Audio, FileList, Map*/
|
||||
|
||||
var morphicVersion = '2019-July-01';
|
||||
var morphicVersion = '2019-July-02';
|
||||
var modules = {}; // keep track of additional loaded modules
|
||||
var useBlurredShadows = getBlurredShadowSupport(); // check for Chrome-bug
|
||||
|
||||
|
@ -4454,19 +4454,18 @@ Morph.prototype.evaluateString = function (code) {
|
|||
|
||||
Morph.prototype.isTouching = function (otherMorph) {
|
||||
var oImg = this.overlappingImage(otherMorph),
|
||||
data;
|
||||
data, len, i;
|
||||
if (!oImg.width || !oImg.height) {
|
||||
return false;
|
||||
}
|
||||
data = oImg.getContext('2d')
|
||||
.getImageData(1, 1, oImg.width, oImg.height)
|
||||
.data;
|
||||
return detect(
|
||||
data,
|
||||
function (each) {
|
||||
return each !== 0;
|
||||
}
|
||||
) !== null;
|
||||
len = data.length;
|
||||
for(i = 3; i < len; i += 4) {
|
||||
if (data[i] !== 0) {return true; }
|
||||
}
|
||||
return false;
|
||||
};
|
||||
|
||||
Morph.prototype.overlappingImage = function (otherMorph) {
|
||||
|
|
Ładowanie…
Reference in New Issue