Engine 1.27.0 coming tomorrow - Help us test it!

Hi everyone! We hope to deploy engine v1.27.0 tomorrow. Lots of cool things contained in that including:

  • A new API for easily creating and editing pc.Mesh objects
  • Detail maps
  • Clear coat shader
  • A new raycasting function to catch all hit entities
  • glTF loader now handles morph targets
  • Improvements to the WebXR APIs
  • …and much more.

You can see the commit history since 1.26.1 here.

To ensure we have a smooth roll-out, you can help us test it and catch any potential bugs. To do so, just launch your scene from the Editor and add the following to the URL:

?use_local_engine=https://code.playcanvas.com/playcanvas-latest.dbg.js

So you should have something of the form:

https://launch.playcanvas.com/404993?use_local_engine=https://code.playcanvas.com/playcanvas-latest.dbg.js

Please follow up with any change of behavior. Thanks! :smile:

6 Likes

Thank you for the update!

I’m going to give this a try later today.

Hello,

Thank you for the update. I’ve been testing that new version on one of my games, and I’m getting this error after a while, especially when I shoot and break things.

The project is private, I can’t open it publicly. Hopefully you guys can reach that project on your end. I can also add any team members of PlayCanvas if it’s needed.

Here is the project link : https://launch.playcanvas.com/895025?debug=true&use_local_engine=https://code.playcanvas.com/playcanvas-latest.dbg.js

Here is a video from scene :

I can also confirm that is not happening in previous version.

1 Like

Hi @commention - I am not able to load the project - I’m getting “Project not found” … is it public? Can you add me to the Editor project as well? (mvaligursky).

Thanks
Martin

1 Like

Hello, thanks guys, seems more fast, everything seems to work for me, about the trouble with the models size when some animations are applied? Some news?

There’s something ‘special’ about that particular project as we can’t reproduce it in a brand new project :thinking:

1 Like

Hi, I added you to the project as an admin. To test it, there are two ceramic type items, break them, and go to the back side, there is a jump pad, there are also two ceramic type vases. For some reason, when I break them it gives this error. I know it sounds very difficult to test and reproduce. If you want to make it simpler, you can change vase’s positions. You can make changes on project if you need, I forked it already.

pc.RigidBodyComponentSystem#raycastAll: Your version of ammo.js does not expose Ammo.AllHitsRayResultCallback. Update it to latest.

[playcanvas-latest.dbg.js:32492]: Ammo.AllHitsRayResultCallback is not a constructor

Where can I find the latest version of Ammo?

Here is my contribution:

I tried to launch my game using the playcanvas-latest.dbg.js
The project is https://playcanvas.com/project/656470/overview/jumpon
I believe @will has access to it.

In the console of the editor tab I get errors like this:

viewport:pick (editor.method error)

editor.js:21673 TypeError: Cannot read property 'getFormat' of null
    at GraphicsDevice.setVertexBuffer (playcanvas-latest.dbg.js:6377)
    at ForwardRenderer.renderForward (playcanvas-latest.dbg.js:10843)
    at ForwardRenderer.renderComposition (playcanvas-latest.dbg.js:11738)
    at Picker.prepare (playcanvas-latest.dbg.js:17593)
    at editor.js:108175
    at Editor.call (editor.js:21670)
    at Editor.<anonymous> (editor.js:108147)
    at Editor.Events.emit (events.js:57)
    at editor.js:104657

3 playcanvas-latest.dbg.js:6377 Uncaught TypeError: Cannot read property 'getFormat' of null
    at GraphicsDevice.setVertexBuffer (playcanvas-latest.dbg.js:6377)
    at ForwardRenderer.renderForward (playcanvas-latest.dbg.js:10843)
    at ForwardRenderer.renderComposition (playcanvas-latest.dbg.js:11738)
    at Func.Application.render (editor.js:104629)
    at editor.js:104663

9 playcanvas-latest.dbg.js:6377 Uncaught TypeError: Cannot read property 'getFormat' of null
    at GraphicsDevice.setVertexBuffer (playcanvas-latest.dbg.js:6377)
    at ForwardRenderer.renderForward (playcanvas-latest.dbg.js:10843)
    at ForwardRenderer.renderComposition (playcanvas-latest.dbg.js:11738)
    at Func.Application.render (editor.js:104629)
    at editor.js:104663

Maybe because i still miss the latest version of ammo.js…

Do I notice faster model load times :face_with_monocle:

The build runs flawlessly on all my projects :ok_hand:

1 Like

@mvaligursky is investigating and will patch the candidate engine release ASAP.

1 Like

@will, great to see the new engine version out! It works absolutely perfectly in all of my projects, and don’t throw up any errors. Load times have improved drastically as well.

Thanks for your help guys, this error has now been fixed and we’ll release a fix soon.

TypeError: Cannot read property 'getFormat' of null
1 Like

As @mvaligursky, this problem is now fixed. So @Albertos, @LeXXik and @commention - if you could check again and confirm we’re good to go, we can deploy. :tada:

Great to see an easier new way to modify existing meshes :heart_eyes: thanks for the good work everyone

1 Like

@will Looks good on my side. Verified.

Hello @will,

I get this message in the editor’s console tab,
for both the current version and the new version:

reference settings:ammo is not defined
editor.js:60613 reference settings:layers is not defined
editor.js:60613 reference settings:batchGroups is not defined
editor.js:60613 reference settings:asset-tasks is not defined
editor.js:60613 reference settings:name is not defined
playcanvas-stable.js:392 Powered by PlayCanvas 1.26.1 2a5cefb
messenger.js:80 messenger connected
reference settings:ammo is not defined
editor.js:60613 reference settings:layers is not defined
editor.js:60613 reference settings:batchGroups is not defined
editor.js:60613 reference settings:asset-tasks is not defined
editor.js:60613 reference settings:name is not defined
playcanvas-latest.dbg.js:392 Powered by PlayCanvas 1.27.0-dev 96fa379
messenger.js:80 messenger connected

I removed and re-imported Ammo.js but with no success.
The ammo folder with three files are in the project.

I also can’t use the raycastAll function:

pc.RigidBodyComponentSystem#raycastAll: Your version of ammo.js does not expose Ammo.AllHitsRayResultCallback. Update it to latest.

[playcanvas-latest.dbg.js:32498]: Ammo.AllHitsRayResultCallback is not a constructor

TypeError: Ammo.AllHitsRayResultCallback is not a constructor
    at RigidBodyComponentSystem.raycastAll (https://code.playcanvas.com/playcanvas-latest.dbg.js:32498:23)
    at script.Player.updateSensors (https://launch.playcanvas.com/api/assets/files/Player/Scripts/Player_Sensors.js?id=30087414&branchId=22fbbf3a-437a-47ed-b44d-046bd3e77327:7:54)
    at script.Player.update (https://launch.playcanvas.com/api/assets/files/Player/Scripts/player.js?id=30087348&branchId=22fbbf3a-437a-47ed-b44d-046bd3e77327:173:14)
    at ScriptComponent._scriptMethod (https://code.playcanvas.com/playcanvas-latest.dbg.js:29838:21)
    at ScriptComponent._onUpdate (https://code.playcanvas.com/playcanvas-latest.dbg.js:29874:14)
    at ScriptComponentSystem._callComponentMethod (https://code.playcanvas.com/playcanvas-latest.dbg.js:30289:51)
    at ScriptComponentSystem._onUpdate (https://code.playcanvas.com/playcanvas-latest.dbg.js:30298:10)
    at Function._helper (https://code.playcanvas.com/playcanvas-latest.dbg.js:26745:14)
    at Function.update (https://code.playcanvas.com/playcanvas-latest.dbg.js:26753:10)
    at Application.update (https://code.playcanvas.com/playcanvas-latest.dbg.js:26168:24)

I only have replaced raycastFirst to raycastAll to test this.

Ahh, good catch @Albertos - we need to update the ammo.js module on the store to the version that exposes the API required by raycastAll. I’ll get that done now.

The Editor console messages are harmless.

Thanks!

I checked with all projects of mine, and all of them works properly. Thank you for that new update.

1 Like