Skip to content

feat: remove regular skeleton layer check from rendering and improve visible chunk getting#148

Merged
seankmartin merged 12 commits intofeature/edit-modefrom
feat/NA-711
May 7, 2026
Merged

feat: remove regular skeleton layer check from rendering and improve visible chunk getting#148
seankmartin merged 12 commits intofeature/edit-modefrom
feat/NA-711

Conversation

@seankmartin
Copy link
Copy Markdown

@seankmartin seankmartin commented May 5, 2026

For now, no major changes, just a little bit clearer in shader binding and then order. Also adds some debug flags which add a little bit of complexity, but I think are worth overall. Other than that is in title.

Next steps to continue with cleaning and helping to debug:

  1. Cleaning up the debug wireframe and adding it.
  2. Fixing the isReady and refactoring it since a lot of duplication with the getVisibleChunks on areVisibleChunksReady
  3. Confirming if getNode and getNodes in the frontend are needed, I don't see where they are used.

Next steps after that:

  1. Try to improve overlay ID tracking
  2. Try to solve double rendering across edges

Worth checking #149 first as this adds new debug options

seankmartin added 11 commits May 5, 2026 11:46
previously was used to avoid double rendering with visible segments
the previous version was leaving some logic in the draw method for filtering chunks.
What should instead happen is that the FE filters to only the chunks to draw, and
directly gives the chunks to draw to the draw method. The draw method early returns if
no chunks, and otherwise just draws them all
@seankmartin seankmartin changed the title feat: improve overlay layer rendering feat: remove regular skeleton layer check from rendering and improve visible chunk getting May 6, 2026
@seankmartin seankmartin marked this pull request as ready for review May 6, 2026 11:34
@seankmartin seankmartin requested a review from afonsobspinto May 6, 2026 11:34
Comment thread src/skeleton/frontend.ts
} else {
gl.uniform1ui(shader.uniform("uUseSegmentDefaultColor"), 1);
gl.uniform3f(
gl.uniform3fv(
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm getting an error here:

No overload matches this call.
  The last overload gave the following error.
    Argument of type 'number' is not assignable to parameter of type 'Float32List'.ts(2769)
lib.dom.d.ts(39668, 5): The last overload is declared here.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I must have put a commit on a different branch sorry, should be just segmentDefaultColor here, not segmentDefaultColor[0], [1], [2]. Will fix

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in f714b04, I'll merge this as I'm guessing the rest is fine, but if I've assumed wrongly let me know and I'll revert the merge. Thanks for the review

@seankmartin seankmartin merged commit 5257f24 into feature/edit-mode May 7, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants