This commit is contained in:
Robert Kowalski 2024-01-31 15:34:22 -05:00
commit bfce4b7269
3 changed files with 13 additions and 2 deletions

View file

@ -30,6 +30,8 @@
* `DynamicTexture` will now automatically call `setSize(width, height)` for both WebGL and Canvas. Previously it only did it for WebGL. This fixes an issue where DynamicTextures in Canvas mode would have a width and height of -1. Fix #6682 (thanks @samme)
* `DynamicTexture.setSize` will now check to see if the `glTexture` bound to the current frame is stale, and if so, destroy it before binding the one from the Render Target. This fixes an issue where constantly destroy and creating Dynamic Textures would cause a memory leak in WebGL. Fix #6669 (thanks @DavidTalevski)
* The `BloomFX` and `BlurFX` and any custom pipeline that relies on using the `UtilityPipeline` full or half frame targets will now correctly draw even after the renderer size changes. Fix #6677 (thanks @Nerodon)
* The `PostFXPipeline.postBatch` method will now skip `onDraw` is the pipeline hasn't booted, introducing an artificial frame skip. This should potentially fix glitch errors on mobile devices where Post FX would appear corrupted for a single frame. Fix #6681 (thank @moufmouf @tongliang999)
* The `Matter.Body` function `scale` has been updated so if the Body originally had an `inertia` of `Infinity` this will be restored at the end of the call. This happens if you set a Matter Body to have fixed rotation. Fix #6369 (thanks @sushovande)
## Examples, Documentation, Beta Testing and TypeScript

View file

@ -741,6 +741,8 @@ var Axes = require('../geometry/Axes');
point = point || body.position;
var wasFixedRotation = (body.inertia === Infinity) ? true : false;
for (var i = 0; i < body.parts.length; i++) {
var part = body.parts[i];
@ -792,6 +794,11 @@ var Axes = require('../geometry/Axes');
body.circleRadius = null;
}
}
if (wasFixedRotation)
{
Body.setInertia(body, Infinity);
}
};
/**

View file

@ -289,8 +289,10 @@ var PostFXPipeline = new Class({
{
this.bootFX();
}
this.onDraw(this.currentRenderTarget);
else
{
this.onDraw(this.currentRenderTarget);
}
this.onPostBatch(gameObject);