Skip to content

Releases: playcanvas/engine

v1.51.1

20 Dec 14:36
Compare
Choose a tag to compare

Bug Fixes

  • Added same sprite check in Button component to break circular dependency (#3821)
  • Fixed circular dependency for image element 'set:color' and 'set:opacity' events (#3817)
  • Tweak env shiny reflection filtering (#3829)
  • Fix clearcoat normals shader gen (#3823)

v1.51.0

15 Dec 12:57
512c114
Compare
Choose a tag to compare

Summary

There's a brand new method of rendering environment lighting, check out the details here: #3783
The clustered lighting has had an API changes to its final form (still in a preview), please update your code if you're testing it: #3763

image

What's New

  • Refactor environment lighting #3783 #3789 #3810
  • Implementation of the final API for clustered lighting, shadowType support #3763
  • Improvement to clustered lighting shader loop #3738
  • Clustered lighting uses single light texture on devices with small number of texture units #3793
  • Clustered lighting uses textureLod to sample data textures to improve dynamic branching #3794
  • Add support for DDS rgba16 #3743
  • Remove left handed cubemap sampling #3751
  • Make text-element color and opacity setter consistent with image-element. #3766
  • Small refactor to ForwardRenderer.updateShaders #3757
  • Add SHADOWPASS #define to shader #3746 (@Maksims)
  • Internal Debug logging functionality #3754 #3775 #3777 #3802
  • Create examples for the proper use of world-space screens and world to screen coordinates. #3771
  • Update the assignAnimation function signature and documentation with blend tree support #3774
  • Simplify NodeGraph.path and NodeGraph.root #3792
  • Refactored gpu markers using Debug module #3801
  • Improved DefaultMaterial to avoid circular dependency #3791
  • Camera onPreRender and onPostRender callbacks #3818

Documentation

  • Properly deprecated MeshInstance.syncAabb #3797

Examples Browser

  • Revamp User Interface examples. #3753
  • Updated cluster spot light example to add controls to add/remove light #3796
  • RenderCubemap example switched from model to render component #3816
  • New Box reflection example #3800 #3819

Bug Fixes

  • Update the examples browser build process to correctly copy static files and clear the static folder each build (#3737)
  • Correctly enable textureLod extension on webgl1 #3744
  • Fix semantics string in documentation #3747
  • Corrected aabb computation for morphed meshes #3750
  • Remove deprecated shader chunks #3752
  • Fixed standard shader generation when GGX is enabled but there are no lights #3764
  • AnimComponent - First frame bug fix #3770
  • Fix to the way createMesh handles blend indices #3779
  • AnimComponent - fix a bug with the assignAnimation function
  • fix to shader chunk naming related to skybox #3785
  • Resolve animation nodes correctly and uniquify sibling node names #3787
  • Search correctly when resolving nodes in default anim binder #3798 #3799
  • Load vox without palette correctly #3803
  • Fix aligned array buffer access on vox models #3806
  • Fix embedded ktx2 loading #3812
  • Fix material emissive logic #3822

v.1.50.2

15 Dec 13:13
Compare
Choose a tag to compare

Bug Fixes

  • Added same sprite check in Button component to break circular dependency #3821
  • Fixed circular call for image element 'set:color' and 'set:opacity #3817 (thanks @Sarletor!)

v1.50.1

10 Dec 14:11
Compare
Choose a tag to compare

Bug Fixes

  • Always fire element set:color and set:opacity event when color and opacity is set (#3761)
  • Assign animations events when animation asset is loaded (#3767)
  • First frame bug fix (#3770)
  • Fix to the way createMesh handles blend indices (#3779)
  • Resolve animation nodes correctly and uniquify sibling node names (#3787)
  • Anim controller update method fix (#3795)

v1.50.0

24 Nov 13:24
Compare
Choose a tag to compare

Summary

This release brings improvements to clustered lights and a ton of bug fixes.

Be sure to check out the newest clustered area lights example: https://playcanvas.github.io/#/graphics/clustered-area-lights

Screenshot 2021-11-11 at 12 01 12

What's New

  • Clustered Area lights (#3691)
  • Small improvements to clustered lighting (#3728)
  • Specular & Clear-coat support for clustered lights (#3668)
  • Add vox loading script (#3655)
  • Simplify skybox rotation (#3636, #3736)
  • Add prefiltering helper functions (#3633)
  • Expose collision point applied impulse. (#3682) - thanks to @LeXXik
  • MeshInstance.skinInstance is now public (#3706)
  • Deprecated Scene.defaultMaterial (#3709)

Documentation

  • Set and Map are officially permitted in the engine, with limitations (#3662)
  • Fixed jsdoc datatype on excludeFromLayout (#3670)
  • Fix the pause animation description in the anim component layer (#3672)
  • Updated description on follow camera script (#3703)

Examples Browser

  • New example: Clustered Area Lights (part of #3691)
  • Improved clustered spot light engine example (#3717)
  • Improved lighting in Locomotion example (#3720)
  • Examples debug watch update (#3722)
  • UI updates (#3644)
  • Fix for older mobiles (#3700)
  • Debug build (#3713)
  • Debug build now works on devices that only supports es5 (#3730)

Bug Fixes

  • Animation updates (#3637)
  • Small tweaks to clustered lighting to improve compatibility and performance (#3704)
  • Grabpass functionality refactor and mipmap support for webgl2 (#3656)
  • Small refactor to the way TextElement releases MeshInstances (#3595)
  • Refactor some single iteration loops (#3659)
  • When shader fails to link in debug mode, print out vertex/fragment shader source (#3669)
  • Reimplement skybox handling in application (#3671)
  • Update release script (#3690, #3692)
  • Move the resizeobserver polyfill into the examples package.json (#3701)
  • Follow camera lerp function is framerate independent (#3696)
  • RenderComponent.material returns assigned material for primitives (#3665)
  • Clustered lighting honors MeshInstance.noShadow (#3705)
  • Update to msdf font rendering shader to lower the smoothing (#3707)
  • Fix to lightmapper stats reporting (#3708)
  • Area light optimization - shared functionality is executed one time for all lights (#3710)
  • Fix to sphere area light specular reflection (#3711)
  • Fixed null exception when button component is used with element group (#3712)
  • Calculate compressed mipmap sizes correctly (#3716)
  • Switch the watch lib to nodemon for multiple directory watching (#3721)
  • Don't allow clustered area lights if less than 8 texture units (#3729)
  • Fallback to uncompressed with invalid texture dimensions (#3731)
  • Removed private and no longer needed debug.js (#3732)
  • Various code maintenance improvements (NPM dependencies, linting)

v1.49.4

16 Nov 12:06
Compare
Choose a tag to compare

Bug Fixes

  • Anim mask blending fix (#3698)
  • Layer mask blending fix (#3697)
  • AnimStateGraph asset change fix (#3694)
  • AnimComponent syntax change (#3646)

v1.49.3

11 Nov 11:17
Compare
Choose a tag to compare

Bug Fixes

  • Change to the ownership of defaultMaterial to allow easier access to it (#3685)

v1.49.2

10 Nov 11:04
Compare
Choose a tag to compare

Bug Fixes

  • Glb parser handles a scene without nodes (#3677)
  • AnimComponent layer mask path fix (#3679)
  • Re-added entity references init event (#3680)

v1.49.1

05 Nov 12:10
Compare
Choose a tag to compare

Bug Fixes

  • Lightmapper no longer leaks shadow map GPU memory (#3645)
  • Fixed looping over Set to be compatible with old browsers (#3660)
  • Fix undefined positions bug (#3653) - many thanks to @vmwxiong for this one!
  • Replace usage of File with Blob (#3667)

v1.49.0

27 Oct 17:25
Compare
Choose a tag to compare

Summary

This is primarily a bug fix release along with a ton of code maintenance updates!

Bug Fixes