Skip to content

Replace Havok-dependent navmesh debug displayΒ #4836

@bennettgoble

Description

@bennettgoble

Description

Research and implement a replacement for the current Havok-based navmesh debug display system to eliminate Havok as a dependency from the Second Life viewer.

Details

The Second Life viewer currently requires Havok libraries solely for rendering the navmesh debug display - a feature used primarily by content creators and region developers to visualize pathfinding meshes. This dependency adds a hefty maintenance and open source overhead for a rarely-used feature (The physics extensions package are notoriously annoying to update, and we have to keep havok libs in a private gdrive for TPVs that have signed the havok sublicense.) By converting the navmesh data from Havok's proprietary format to our standard llmesh format (or another general-purpose format) at the simulator level, we can remove this dependency entirely while maintaining the functionality.

Acceptance Criteria

  • Havok dependency completely removed from the Second Life viewer codebase
  • Navmesh debug display remains functional with equivalent or better visualization quality
  • Performance of navmesh visualization is equal to or better than current implementation
  • Backward compatibility maintained for regions running older simulator versions
  • Documentation updated for the new navmesh format and protocol


This repo is using Opire - what does it mean? πŸ‘‡
πŸ’΅ Everyone can add rewards for this issue commenting /reward 100 (replace 100 with the amount).
πŸ•΅οΈβ€β™‚οΈ If someone starts working on this issue to earn the rewards, they can comment /try to let everyone know!
πŸ™Œ And when they open the PR, they can comment /claim #4836 either in the PR description or in a PR's comment.

πŸͺ™ Also, everyone can tip any user commenting /tip 20 @bennettgoble (replace 20 with the amount, and @bennettgoble with the user to tip).

πŸ“– If you want to learn more, check out our documentation.

Metadata

Metadata

Assignees

No one assigned

    Labels

    triageFlags issues that need to be triaged

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions