Skip to content

Skeletal animation implementation#653

Merged
adriengivry merged 18 commits intomainfrom
feature/skeletal_animation
Apr 5, 2026
Merged

Skeletal animation implementation#653
adriengivry merged 18 commits intomainfrom
feature/skeletal_animation

Conversation

@adriengivry
Copy link
Copy Markdown
Member

@adriengivry adriengivry commented Apr 4, 2026

Description

This PR aims to integrate work from feature/skeletal_animation to main.

This PR adds:

Also adds:

  • #engine_feature shader keyword to hide a feature that is intended to be controlled by the engine from the material editor

Updated/added documentation:

To-Do

Related Issue(s)

Fixes #302

Screenshots/GIFs

Write here.

Checklist

  • My code follows the project's code style guidelines
  • I have commented my code, particularly in hard-to-understand areas
  • I have updated the documentation accordingly
  • My changes don't generate new warnings or errors

@adriengivry adriengivry self-assigned this Apr 4, 2026
@adriengivry adriengivry added the Graphics Graphical feature label Apr 4, 2026
adriengivry and others added 9 commits April 4, 2026 17:43
- More extensive use of `FTransform`
- Simplified skinning calculations
- Fixed PickingRenderPass culling
- Now properly supports custom outline shaders
- Deprecated PRE_TRANSFORM_VERTICES
- Removed auto-add SkinnedMeshRenderer when model changes
- Add Describable::SetDescriptor() to atomically add-or-replace a descriptor
- Use SetDescriptor in SkinningUtils::ApplyDescriptor, removing the
  redundant HasDescriptor/RemoveDescriptor/AddDescriptor pattern
- Group SkinningRenderFeature's 7 loose state fields into two inner
  structs (UploadedPaletteState, BoundPaletteState) for clarity
- Remove unused p_scene parameter from AssimpParser::ProcessMesh (was
  immediately suppressed with (void)p_scene)
- Replace self-referential lambda in BuildSkeleton with a plain
  recursive free function in the anonymous namespace
- Remove unused CSkinnedMeshRenderer::GetBoneMatrices() (non-transposed
  version was never called outside the class itself)

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
DEBONE removes bone data from meshes, making it incompatible with
skeletal animation. Mirror the PRE_TRANSFORM_VERTICES pattern: only
strip the flag when it is actually set, and emit a warning so the
user knows why their flag was ignored.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@adriengivry adriengivry marked this pull request as ready for review April 5, 2026 00:15
@adriengivry adriengivry merged commit 07c2029 into main Apr 5, 2026
4 checks passed
@adriengivry adriengivry deleted the feature/skeletal_animation branch April 5, 2026 22:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Graphics Graphical feature

Development

Successfully merging this pull request may close these issues.

Implement Skeletal Animation

2 participants