Skip to content

Conversation

david-lively
Copy link
Contributor

@david-lively david-lively commented Sep 23, 2025

Description

image

When tangents are missing but required (specifically, when the tileset is lit, or has a normal map but no tangents), they will be generated on the CPU when the vertex buffer is prepared. An option alwaysIncludeTangents is added to Cesium3DTileset to force tangent generation.

Note: requires changes from this cesium-native branch: https://github.com/CesiumGS/cesium-native/tree/generate-tangents

Author checklist

  • I have submitted a Contributor License Agreement (only needed once).
  • I have done a full self-review of my code.
  • I have updated CHANGES.md with a short summary of my change (for user-facing changes).
  • I have added or updated unit tests to ensure consistent code coverage as necessary.
  • I have updated the documentation as necessary.

Remaining Tasks

Testing plan

@david-lively david-lively requested review from j9liu and kring September 23, 2025 18:15
@david-lively david-lively self-assigned this Sep 23, 2025
@j9liu
Copy link
Contributor

j9liu commented Sep 23, 2025

Just to clarify @david-lively, is this meant to build on #596 or replace it? Or is it entirely separate?

@david-lively
Copy link
Contributor Author

david-lively commented Sep 23, 2025

@j9liu This replaces 596.

@j9liu
Copy link
Contributor

j9liu commented Sep 23, 2025

Thanks @david-lively, can you close #596 to avoid confusion?

@kring kring added this to the October 2025 Release milestone Sep 24, 2025
Copy link
Contributor

@j9liu j9liu left a comment

Choose a reason for hiding this comment

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

Thanks @david-lively ! I still have to test this out locally, but I have some suggestions after taking a pass over the code.

@j9liu
Copy link
Contributor

j9liu commented Sep 25, 2025

I tried loading the NormalTangentTest sample model on this branch, but it looks off:

image

Here's the simple tileset I made to wrap around it; you can use a georeference with True Origin to more easily visualize it.

NormalTangentTest.zip

@j9liu
Copy link
Contributor

j9liu commented Sep 25, 2025

Let me do a clean rebuild and test again with the above. It's possible that the native part got messed up somehow while jumping branches

@j9liu
Copy link
Contributor

j9liu commented Sep 25, 2025

Sadly still seeing the same behavior after a clean build. I also tried this with the NormalTangentMirrorTest model. It's kind of better, but still a bit wonky...

image

@kring
Copy link
Member

kring commented Sep 29, 2025

Moving this out of this month's release because it's not quite ready yet.

@kring kring removed this from the October 2025 Release milestone Sep 29, 2025
@david-lively david-lively marked this pull request as draft October 2, 2025 18:59
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.

3 participants