Skip to content

Commit

Permalink
dont consider distance when sorting opaque objects
Browse files Browse the repository at this point in the history
  • Loading branch information
Alex Fedosov committed Mar 14, 2016
1 parent d692d6d commit 92293e9
Showing 1 changed file with 3 additions and 16 deletions.
19 changes: 3 additions & 16 deletions src/renderer/Renderer.js
Expand Up @@ -144,7 +144,7 @@ class Renderer {
const renderObjects = typedObjects.common;

if (state.renderer.sortObjects) {
this._sortObjects(state, renderObjects);
renderObjects.sort(this._renderOrderSort);
}

renderObjects.forEach(object => object.render(state));
Expand All @@ -168,21 +168,8 @@ class Renderer {
this._canvasElement.getContext('experimental-webgl', attributes);
}

_sortObjects({camera}, renderObjects) {
const sorter = this._painterSortStable.bind(this, camera);

renderObjects.sort(sorter);
}

_painterSortStable(camera, a, b) {
if (a.renderOrder !== b.renderOrder) {
return a.renderOrder - b.renderOrder;
}

const aZ = camera.project(a.getWorldPosition())[2];
const bZ = camera.project(b.getWorldPosition())[2];

return aZ - bZ;
_renderOrderSort(a, b) {
return a.renderOrder - b.renderOrder;
}
}

Expand Down

0 comments on commit 92293e9

Please sign in to comment.