Skip to content

Commit 6bbe83a

Browse files
author
Babylon.js Platform
committed
Version update 5.48.1
1 parent 0f284f1 commit 6bbe83a

File tree

32 files changed

+470
-191
lines changed

32 files changed

+470
-191
lines changed

.build/changelog.json

Lines changed: 254 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,259 @@
11
{
2-
"fromTag": "5.47.1",
2+
"fromTag": "5.48.0",
33
"changelog": {
4+
"5.48.1": [
5+
{
6+
"pr": "13574",
7+
"title": "Update wrapNativeTexture and wrapWebGLTexture with explicit hasMipMaps and samplingMode",
8+
"description": "This is necessary so that the sampling mode will default to something as opposed to some arbitrary default behavior of the underlying rendering API.",
9+
"author": {
10+
"name": "bghgary",
11+
"url": "https://github.com/bghgary"
12+
},
13+
"files": [
14+
"packages/dev/core/src/Engines/engine.ts",
15+
"packages/dev/core/src/Engines/nativeEngine.ts"
16+
],
17+
"tags": []
18+
},
19+
{
20+
"pr": "13570",
21+
"title": "Add URL filter to the securitypolicyviolation event handler",
22+
"description": "Discussion originally in https://forum.babylonjs.com/t/38591.\r\nShould fix issue shown in this playground script: https://playground.babylonjs.com/#YMWYF6",
23+
"author": {
24+
"name": "kv-bh",
25+
"url": "https://github.com/kv-bh"
26+
},
27+
"files": [
28+
"packages/dev/core/src/Misc/fileTools.ts"
29+
],
30+
"tags": []
31+
},
32+
{
33+
"pr": "13575",
34+
"title": "Fix adaptToDeviceRatio for native engine",
35+
"description": "Setting `adaptToDeviceRatio` is broken in Babylon Native. This change fixes the problem.",
36+
"author": {
37+
"name": "bghgary",
38+
"url": "https://github.com/bghgary"
39+
},
40+
"files": [
41+
"packages/dev/core/src/Engines/Native/nativeInterfaces.ts",
42+
"packages/dev/core/src/Engines/nativeEngine.ts",
43+
"packages/dev/core/src/Engines/thinEngine.ts"
44+
],
45+
"tags": [
46+
"bug",
47+
"native"
48+
]
49+
},
50+
{
51+
"pr": "13565",
52+
"title": "Notify added observer if observable was triggered.",
53+
"description": "This is done to avoid the pattern of adding an observer after checking if the state requires that.\nAs an example let's take the scene's onReadyObservable which has a simple state - it will only notify once when the scene is ready. If a new observer will be added after the observable was triggered (and has notified existing observers) it will not be possible to trigger new observers that were added to is.\nIf `notifyIfTriggered` is set to true and the observable has already triggered it will automatically trigger newly added observers whenever they are added.\n\nIt's also recommended to add that to onDispose observables, which are the same.\nA different solution would be to define an onObserverAdded function, but that would require setting this function to every observable that requires it. Instead - this is a more generic solution.",
54+
"author": {
55+
"name": "RaananW",
56+
"url": "https://github.com/RaananW"
57+
},
58+
"files": [
59+
"packages/dev/core/src/Engines/engine.ts",
60+
"packages/dev/core/src/Engines/engineStore.ts",
61+
"packages/dev/core/src/Engines/thinEngine.ts",
62+
"packages/dev/core/src/Loading/Plugins/babylonFileLoader.ts",
63+
"packages/dev/core/src/Materials/Background/backgroundMaterial.ts",
64+
"packages/dev/core/src/Materials/material.ts",
65+
"packages/dev/core/src/Materials/materialPluginBase.ts",
66+
"packages/dev/core/src/Materials/pushMaterial.ts",
67+
"packages/dev/core/src/Misc/observable.ts",
68+
"packages/dev/core/src/scene.ts"
69+
],
70+
"tags": []
71+
},
72+
{
73+
"pr": "13576",
74+
"title": "Add function \"updateBodyInstances\" to synchronize mesh instances with…",
75+
"description": "… physics body instances.",
76+
"author": {
77+
"name": "carolhmj",
78+
"url": "https://github.com/carolhmj"
79+
},
80+
"files": [
81+
"packages/dev/core/src/Physics/v2/IPhysicsEnginePlugin.ts",
82+
"packages/dev/core/src/Physics/v2/physicsBody.ts"
83+
],
84+
"tags": [
85+
"physics",
86+
"skip changelog"
87+
]
88+
},
89+
{
90+
"pr": "13572",
91+
"title": "Adding 1 method for fast collisioncallback",
92+
"description": null,
93+
"author": {
94+
"name": "CedricGuillemet",
95+
"url": "https://github.com/CedricGuillemet"
96+
},
97+
"files": [
98+
"packages/dev/core/src/Physics/v2/IPhysicsEnginePlugin.ts",
99+
"packages/dev/core/src/Physics/v2/physicsBody.ts"
100+
],
101+
"tags": [
102+
"skip changelog"
103+
]
104+
},
105+
{
106+
"pr": "13569",
107+
"title": "ThinTexture: Allow to pass a RenderTargetWrapper to the constructor",
108+
"description": null,
109+
"author": {
110+
"name": "Popov72",
111+
"url": "https://github.com/Popov72"
112+
},
113+
"files": [
114+
"packages/dev/core/src/Materials/Textures/thinTexture.ts"
115+
],
116+
"tags": [
117+
"skip changelog"
118+
]
119+
},
120+
{
121+
"pr": "13568",
122+
"title": "Always pass default KTX2 decoder options",
123+
"description": "There is more discussion about this in the topic on the forum: https://forum.babylonjs.com/t/banding-when-viewing-uastc-ktx2-in-babylon-js-sandbox/38540\r\n\r\nThe long story short is that on second invocation of the worker, the default options are no longer being set, as the `isDirty` on the main thread that is being relied on for setting those options, is no longer `true`, due to the first time those options are sent over in: https://github.com/BabylonJS/Babylon.js/blob/master/packages/dev/core/src/Misc/khronosTextureContainer2.ts#L408\r\n\r\nThe worker, however, no longer contains these options on second invocation, since, if I'm reading this correctly, it gets created anew for each job: https://github.com/BabylonJS/Babylon.js/blob/master/packages/dev/core/src/Misc/khronosTextureContainer2.ts#L309\r\n\r\nThis results in a wrongly transcoded texture the second time, for example this is how it should look:\r\n![image](https://user-images.githubusercontent.com/238667/221824322-a493eb4b-b2f0-48c1-8195-0fd48721fdd2.png)\r\nBut this is how it looks (notice the extreme banding, flipped Y too?):\r\n![image](https://user-images.githubusercontent.com/238667/221824399-6afb9862-21c8-499a-b953-4df4bd029fec.png)\r\n\r\nIf there are no workers, i.e. `numWorkers = 0`, the same issue appears, since in the second `if` branch, we never set the default options of the decoder: https://github.com/BabylonJS/Babylon.js/blob/master/packages/dev/core/src/Misc/khronosTextureContainer2.ts#L421\r\n\r\nThis PR fixes both of those situations.\r\n\r\nThe issue was reproduced only on macOS running either Chrome, Firefox or Edge, but not on Safari or other platforms, namely Windows. The reason for this is that by default, the capabilities of e.g. Safari include ASTC, so the ASTC transcoder is selected even without the default options, e.g.:\r\n```js\r\n> console.log(gl.getExtension('WEBGL_compressed_texture_astc'))\r\n[Log] WebGLCompressedTextureASTC {getSupportedProfiles: function, COMPRESSED_RGBA_ASTC_4x4_KHR: 37808, COMPRESSED_RGBA_ASTC_5x4_KHR: 37809, COMPRESSED_RGBA_ASTC_5x5_KHR: 37810, COMPRESSED_RGBA_ASTC_6x5_KHR: 37811, …}\r\n```\r\nBut in Chrome, for example, this extension does not exist (that's weird, no?), so the caps of the engine do not have `astc` set:\r\n```js\r\nconsole.log(gl.getExtension('WEBGL_compressed_texture_astc'));\r\nnull\r\n```\r\n\r\nThis resolves my issue, but I'm not familiar with the inner workings of this subsystem and the potential other implications of these changes, so I would like to ask for comments & feedback. Thank you!",
124+
"author": {
125+
"name": "jure",
126+
"url": "https://github.com/jure"
127+
},
128+
"files": [
129+
"packages/dev/core/src/Misc/khronosTextureContainer2.ts"
130+
],
131+
"tags": [
132+
"bug",
133+
"texture"
134+
]
135+
},
136+
{
137+
"pr": "13566",
138+
"title": "Prevent NME Crash with old light block",
139+
"description": null,
140+
"author": {
141+
"name": "sebavan",
142+
"url": "https://github.com/sebavan"
143+
},
144+
"files": [
145+
"packages/tools/nodeEditor/src/graphSystem/properties/lightInformationPropertyTabComponent.tsx"
146+
],
147+
"tags": [
148+
"bug",
149+
"nme"
150+
]
151+
},
152+
{
153+
"pr": "13561",
154+
"title": "Fix Skeleton Bounding Box Timing issue",
155+
"description": "https://forum.babylonjs.com/t/bounding-box-does-not-compute-correctly/38448/4",
156+
"author": {
157+
"name": "sebavan",
158+
"url": "https://github.com/sebavan"
159+
},
160+
"files": [
161+
"packages/dev/core/src/Bones/skeleton.ts"
162+
],
163+
"tags": [
164+
"bug",
165+
"animations"
166+
]
167+
},
168+
{
169+
"pr": "13559",
170+
"title": "Physics iteration 10",
171+
"description": "* Visualize instanced bodies\r\n* Update PhysicsShape creation to allow for using an already existing reference",
172+
"author": {
173+
"name": "carolhmj",
174+
"url": "https://github.com/carolhmj"
175+
},
176+
"files": [
177+
"packages/dev/core/src/Debug/physicsViewer.ts",
178+
"packages/dev/core/src/Physics/v2/IPhysicsEnginePlugin.ts",
179+
"packages/dev/core/src/Physics/v2/physicsAggregate.ts",
180+
"packages/dev/core/src/Physics/v2/physicsShape.ts"
181+
],
182+
"tags": [
183+
"physics",
184+
"skip changelog"
185+
]
186+
},
187+
{
188+
"pr": "13560",
189+
"title": "Fix Inspector Additional Nodes",
190+
"description": "https://forum.babylonjs.com/t/additional-nodes-in-inspector-only-works-in-embedded-mode/38464\r\n\r\nFix #13558 ",
191+
"author": {
192+
"name": "sebavan",
193+
"url": "https://github.com/sebavan"
194+
},
195+
"files": [
196+
"packages/dev/inspector/src/inspector.ts"
197+
],
198+
"tags": [
199+
"bug",
200+
"inspector"
201+
]
202+
},
203+
{
204+
"pr": "13557",
205+
"title": "auto-parallel tasks",
206+
"description": "Should accelerate build. In my tests, build (of the entire umd/es6 process) is 15% faster when fully parallel.",
207+
"author": {
208+
"name": "RaananW",
209+
"url": "https://github.com/RaananW"
210+
},
211+
"files": [
212+
"package.json"
213+
],
214+
"tags": []
215+
},
216+
{
217+
"pr": "13556",
218+
"title": "Add CPU side exact srgb conversions",
219+
"description": null,
220+
"author": {
221+
"name": "sebavan",
222+
"url": "https://github.com/sebavan"
223+
},
224+
"files": [
225+
"packages/dev/core/src/Engines/thinEngine.ts",
226+
"packages/dev/core/src/Helpers/environmentHelper.ts",
227+
"packages/dev/core/src/Materials/Background/backgroundMaterial.ts",
228+
"packages/dev/core/src/Materials/Node/Blocks/Input/inputBlock.ts",
229+
"packages/dev/core/src/Materials/materialHelper.ts",
230+
"packages/dev/core/src/Maths/math.color.ts",
231+
"packages/dev/inspector/src/components/actionTabs/tabs/propertyGrids/postProcesses/defaultRenderingPipelinePropertyGridComponent.tsx",
232+
"packages/dev/loaders/src/glTF/2.0/Extensions/KHR_materials_transmission.ts",
233+
"packages/dev/loaders/src/glTF/2.0/Extensions/MSFT_sRGBFactors.ts",
234+
"packages/dev/serializers/src/glTF/2.0/glTFExporter.ts",
235+
"packages/dev/serializers/src/glTF/2.0/glTFMaterialExporter.ts"
236+
],
237+
"tags": [
238+
"skip changelog"
239+
]
240+
},
241+
{
242+
"pr": "13555",
243+
"title": "fix tag assignment when copying",
244+
"description": null,
245+
"author": {
246+
"name": "RaananW",
247+
"url": "https://github.com/RaananW"
248+
},
249+
"files": [
250+
"packages/dev/core/src/Misc/decorators.ts"
251+
],
252+
"tags": [
253+
"bug"
254+
]
255+
}
256+
],
4257
"5.48.0": [
5258
{
6259
"pr": "13336",

CHANGELOG.md

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,31 @@
11
# Changelog
22

3+
## 5.48.1
4+
5+
### Core
6+
7+
- Update wrapNativeTexture and wrapWebGLTexture with explicit hasMipMaps and samplingMode - by [bghgary](https://github.com/bghgary) ([#13574](https://github.com/BabylonJS/Babylon.js/pull/13574))
8+
- Add URL filter to the securitypolicyviolation event handler - by [kv-bh](https://github.com/kv-bh) ([#13570](https://github.com/BabylonJS/Babylon.js/pull/13570))
9+
- Fix adaptToDeviceRatio for native engine - [_Bug Fix_] by [bghgary](https://github.com/bghgary) ([#13575](https://github.com/BabylonJS/Babylon.js/pull/13575))
10+
- Notify added observer if observable was triggered. - by [RaananW](https://github.com/RaananW) ([#13565](https://github.com/BabylonJS/Babylon.js/pull/13565))
11+
- Always pass default KTX2 decoder options - [_Bug Fix_] by [jure](https://github.com/jure) ([#13568](https://github.com/BabylonJS/Babylon.js/pull/13568))
12+
- Fix Skeleton Bounding Box Timing issue - [_Bug Fix_] by [sebavan](https://github.com/sebavan) ([#13561](https://github.com/BabylonJS/Babylon.js/pull/13561))
13+
- fix tag assignment when copying - [_Bug Fix_] by [RaananW](https://github.com/RaananW) ([#13555](https://github.com/BabylonJS/Babylon.js/pull/13555))
14+
15+
### Inspector
16+
17+
- Fix Inspector Additional Nodes - [_Bug Fix_] by [sebavan](https://github.com/sebavan) ([#13560](https://github.com/BabylonJS/Babylon.js/pull/13560))
18+
19+
### Loaders
20+
21+
22+
### Node Editor
23+
24+
- Prevent NME Crash with old light block - [_Bug Fix_] by [sebavan](https://github.com/sebavan) ([#13566](https://github.com/BabylonJS/Babylon.js/pull/13566))
25+
26+
### Serializers
27+
28+
329
## 5.48.0
430

531
### Core

0 commit comments

Comments
 (0)