Skip to content

Commit 56d77f9

Browse files
Bump aframe-master dist/ builds. (3c6cc78...701d404)
1 parent 701d404 commit 56d77f9

File tree

5 files changed

+67
-8
lines changed

5 files changed

+67
-8
lines changed

‎dist/aframe-master.js‎

Lines changed: 63 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27678,7 +27678,6 @@ class AScene extends AEntity {
2767827678
}
2767927679
renderer = this.renderer = new THREE.WebGLRenderer(rendererConfig);
2768027680
renderer.setPixelRatio(window.devicePixelRatio);
27681-
renderer.sortObjects = false;
2768227681
if (this.camera) {
2768327682
renderer.xr.setPoseTarget(this.camera.el.object3D);
2768427683
}
@@ -30243,7 +30242,7 @@ __webpack_require__(/*! ./core/a-mixin */ "./src/core/a-mixin.js");
3024330242
// Extras.
3024430243
__webpack_require__(/*! ./extras/components/ */ "./src/extras/components/index.js");
3024530244
__webpack_require__(/*! ./extras/primitives/ */ "./src/extras/primitives/index.js");
30246-
console.log('A-Frame Version: 1.4.2 (Date 2023-08-01, Commit #1defeb0c)');
30245+
console.log('A-Frame Version: 1.4.2 (Date 2023-08-11, Commit #701d404d)');
3024730246
console.log('THREE Version (https://github.com/supermedium/three.js):', pkg.dependencies['super-three']);
3024830247
console.log('WebVR Polyfill Version:', pkg.dependencies['webvr-polyfill']);
3024930248
module.exports = window.AFRAME = {
@@ -32337,7 +32336,7 @@ module.exports.System = registerSystem('renderer', {
3233732336
anisotropy: {
3233832337
default: 1
3233932338
},
32340-
sortObjects: {
32339+
sortTransparentObjects: {
3234132340
default: false
3234232341
},
3234332342
colorManagement: {
@@ -32356,7 +32355,6 @@ module.exports.System = registerSystem('renderer', {
3235632355
var toneMappingName = this.data.toneMapping.charAt(0).toUpperCase() + this.data.toneMapping.slice(1);
3235732356
// This is the rendering engine, such as THREE.js so copy over any persistent properties from the rendering system.
3235832357
var renderer = sceneEl.renderer;
32359-
renderer.sortObjects = data.sortObjects;
3236032358
renderer.useLegacyLights = !data.physicallyCorrectLights;
3236132359
renderer.toneMapping = THREE[toneMappingName + 'ToneMapping'];
3236232360
THREE.Texture.DEFAULT_ANISOTROPY = data.anisotropy;
@@ -32368,6 +32366,10 @@ module.exports.System = registerSystem('renderer', {
3236832366
if (sceneEl.hasAttribute('logarithmicDepthBuffer')) {
3236932367
warn('Component `logarithmicDepthBuffer` is deprecated. Use `renderer="logarithmicDepthBuffer: true"` instead.');
3237032368
}
32369+
32370+
// These properties are always the same, regardless of rendered oonfiguration
32371+
renderer.sortObjects = true;
32372+
renderer.setOpaqueSort(sortFrontToBack);
3237132373
},
3237232374
update: function () {
3237332375
var data = this.data;
@@ -32377,6 +32379,14 @@ module.exports.System = registerSystem('renderer', {
3237732379
renderer.toneMapping = THREE[toneMappingName + 'ToneMapping'];
3237832380
renderer.toneMappingExposure = data.exposure;
3237932381
renderer.xr.setFoveation(data.foveationLevel);
32382+
if (data.sortObjects) {
32383+
warn('`sortObjects` property is deprecated. Use `renderer="sortTransparentObjects: true"` instead.');
32384+
}
32385+
if (data.sortTransparentObjects) {
32386+
renderer.setTransparentSort(sortBackToFront);
32387+
} else {
32388+
renderer.setTransparentSort(sortRenderOrderOnly);
32389+
}
3238032390
},
3238132391
applyColorCorrection: function (texture) {
3238232392
if (!this.data.colorManagement || !texture) {
@@ -32402,6 +32412,55 @@ module.exports.System = registerSystem('renderer', {
3240232412
}
3240332413
});
3240432414

32415+
// Custom A-Frame sort functions.
32416+
// Variations of Three.js default sort orders here:
32417+
// https://github.com/mrdoob/three.js/blob/ebbaecf9acacf259ea9abdcba7b6fb25cfcea2ab/src/renderers/webgl/WebGLRenderLists.js#L1
32418+
// See: https://github.com/aframevr/aframe/issues/5332
32419+
32420+
// Default sort for opaque objects:
32421+
// - respect groupOrder & renderOrder settings
32422+
// - sort front-to-back by z-depth from camera (this should minimize overdraw)
32423+
// - otherwise leave objects in default order (object tree order)
32424+
32425+
function sortFrontToBack(a, b) {
32426+
if (a.groupOrder !== b.groupOrder) {
32427+
return a.groupOrder - b.groupOrder;
32428+
}
32429+
if (a.renderOrder !== b.renderOrder) {
32430+
return a.renderOrder - b.renderOrder;
32431+
}
32432+
return a.z - b.z;
32433+
}
32434+
32435+
// Default sort for transparent objects:
32436+
// - respect groupOrder & renderOrder settings
32437+
// - otherwise leave objects in default order (object tree order)
32438+
function sortRenderOrderOnly(a, b) {
32439+
if (a.groupOrder !== b.groupOrder) {
32440+
return a.groupOrder - b.groupOrder;
32441+
}
32442+
return a.renderOrder - b.renderOrder;
32443+
}
32444+
32445+
// Spatial sort for transparent objects:
32446+
// - respect groupOrder & renderOrder settings
32447+
// - sort back-to-front by z-depth from camera
32448+
// - otherwise leave objects in default order (object tree order)
32449+
function sortBackToFront(a, b) {
32450+
if (a.groupOrder !== b.groupOrder) {
32451+
return a.groupOrder - b.groupOrder;
32452+
}
32453+
if (a.renderOrder !== b.renderOrder) {
32454+
return a.renderOrder - b.renderOrder;
32455+
}
32456+
return b.z - a.z;
32457+
}
32458+
32459+
// exports needed for Unit Tests
32460+
module.exports.sortFrontToBack = sortFrontToBack;
32461+
module.exports.sortRenderOrderOnly = sortRenderOrderOnly;
32462+
module.exports.sortBackToFront = sortBackToFront;
32463+
3240532464
/***/ }),
3240632465

3240732466
/***/ "./src/systems/shadow.js":

‎dist/aframe-master.js.map‎

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

‎dist/aframe-master.min.js‎

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

‎dist/aframe-master.min.js.map‎

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

‎src/index.js‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ require('./core/a-mixin');
9292
require('./extras/components/');
9393
require('./extras/primitives/');
9494

95-
console.log('A-Frame Version: 1.4.2 (Date 2023-08-01, Commit #1defeb0c)');
95+
console.log('A-Frame Version: 1.4.2 (Date 2023-08-11, Commit #701d404d)');
9696
console.log('THREE Version (https://github.com/supermedium/three.js):',
9797
pkg.dependencies['super-three']);
9898
console.log('WebVR Polyfill Version:', pkg.dependencies['webvr-polyfill']);

0 commit comments

Comments
 (0)