Implement position sync system (Transform → atomics) #44

Open
opened 2025-12-17 02:48:44 +00:00 by siennathesane · 0 comments
siennathesane commented 2025-12-17 02:48:44 +00:00 (Migrated from github.com)

Description

Core synchronization logic between the game thread (ECS Transform components) and audio thread (Steam Audio position parameters). Must be lock-free and glitch-free.

Acceptance Criteria

Scenario: Position updates are lock-free
  Given entities with AudioSource and Transform components
  When Transform changes
  Then position should update Steam Audio atomically
  And no locks should block the audio thread
  And no glitches should occur during updates

Technical Notes

  • Query Changed<Transform> for audio sources and listeners
  • Update Steam Audio position parameters via atomics
  • Ensure lock-free communication
  • Handle coordinate system transformations
  • Test with rapidly moving sources
  • Verify glitch-free operation
## Description Core synchronization logic between the game thread (ECS Transform components) and audio thread (Steam Audio position parameters). Must be lock-free and glitch-free. ## Acceptance Criteria ```gherkin Scenario: Position updates are lock-free Given entities with AudioSource and Transform components When Transform changes Then position should update Steam Audio atomically And no locks should block the audio thread And no glitches should occur during updates ``` ## Technical Notes - Query `Changed<Transform>` for audio sources and listeners - Update Steam Audio position parameters via atomics - Ensure lock-free communication - Handle coordinate system transformations - Test with rapidly moving sources - Verify glitch-free operation
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: studio/marathon#44