Engine Release: v1.66.0

Engine v1.66.0 has been released. Release notes:

To stay updated on engine development, hit Watch on the repo. Support us by hitting Star too! :smiley:


Everyone, please note the breaking change in Tween library.


.to({x: 10, y: 0, z: 0}, 1, pc.Linear)
.on('complete', function () {
   console.log('tween completed');

Starting from 1.66:

.to({x: 10, y: 0, z: 0}, 1, pc.Linear)
.onComplete(() => {
   console.log('tween completed');

Same for update and loop events.

You would need to update the Tween library to the latest (thank you, @kungfooman ). You can grab one here:

Further details in PR:


Well done everyone looks like a solid release. I’m having issues getting webgpu running though (not a regression its never worked yet).
Firstly webpack is not happy with the new import statement for twgsl and gslang wasm files (in initWebFpu) I’ve had to put in webpackIgnore to get them to load (as it replaces it with its own import function)

We have an issue on this, and will look at options: Critical dependency: the request of a dependency is an expression - /webgpu/webgpu-graphics-device.js · Issue #5730 · playcanvas/engine · GitHub

@slimbuck - any thoughts on this one?

Managed to get webgpu working with the above workaround (and a few fixes ourside). Performance is looking fantastic (though post processing was off), Theres a number of regressions (shadows were incorrect with light leaks where there wasn’t previously and the environment light seems to have reverted back to the sky instead of the reflection capture) but other than that fantastic. We make heavy uses of compressed textures in a complex environment in a scene generated in unreal and exported with lightmaps etc so the fact that its now running in webgpu is a huge milestone. :smiley:

Great news @Adriaaaaan !

The shadow issue is possibly due to this not being done yet: Support depth bias on WebGPU Platform · Issue #5688 · playcanvas/engine · GitHub

Got more details about the environment light? I’m not sure I understand.

yeah you’re right it looks like a biasing issue. As for the environment light (this is an engine project), not sure what the issue is yet. Normally we are setting a skybox by loading a cubemap and calling app.setSkybox(sky); Afterwards we are then loading a reflection capture image and setting it to app.scene.envAtlas but it seems to no longer override the skybox and so the reflections look like the sky.

shadow issue

reflection issue

Doesn’t seem to be webgpu related, I’ll log a ticket If I have anymore information but we’re not scheduled to update just yet so I’ll look into later

1 Like

okay ignore the reflection issue its wrong on production too :fearful:

1 Like

Hi @Adrian_Meredith , if you’re generating the envAtlas yourself, make sure the texture has mipmaps disabled. If you can give me access I can investigate too.

Patched to Release v1.66.1 · playcanvas/engine · GitHub

We’re planning to promote this to the Editor early next week, please test your projects before then to avoid surprises by selecting RC from the Run tab.

1 Like

Thanks man, In truth this is actually a legacy path for us since I implemented reflection probe volumes that’ll apply it per material so I might as well just use that instead.

Sorry guys, its still not working on webpack for me. It is improved, it now fails gracefully and falls back to webgl2 but the error is the same. Stopping in the debugger I can see webpack has still replace the native import command with some _webpack_require function that refuses to load files from assets.
This is the only way I can get webgpu running…

Are you able to open an issue with some simple webpack project to show case this?

Patched to Release v1.66.2 · playcanvas/engine · GitHub

1 Like

And this is now the default engine in the Editor … please let us know of any issues.

Hi @mvaligursky,

My tween stopped working even though it worked earlier today.


I tried changing the events to onUpdate and onComplete but that does not fix it.
I am not entirely sure if it related to the engine update though.

It’s likely related to this:

Make sure to grab an up to date copy of the tween too.

I got it working by updating the tween library.

Note: I used the latest copy from github

The tween library which gets imported through the asset store doesn’t seem to be updated to the latest version.

Good point, we’re updating the one in store too now, thanks!


Few more fixes in the new patch: Release v1.66.3 · playcanvas/engine · GitHub

1 Like