AssetLoadingProgressEvent auf EventBus emittieren #19

Closed
opened 2026-04-16 20:22:41 +00:00 by sebastian · 0 comments
Owner

Problem: processQueue() gibt zwar LoadingProgress zurück, aber ein Ladescreen-Layer muss den SceneManager nicht direkt kennen, um zu wissen wann er fertig ist.
Lösung:

// game/events/AssetLoadingProgressEvent.h
struct AssetLoadingProgressEvent {
    float fraction;   // 0.0 - 1.0
    bool complete;
};

processQueue() (oder die Scene) emittiert dieses Event nach jedem Frame-Schritt auf den EventBus. Der Ladescreen-Layer abonniert es.
Acceptance Criteria:

  • Event wird pro Frame emittiert solange Queue nicht leer
  • complete = true im letzten Event
  • Ladescreen-Layer braucht keine direkte Abhängigkeit zu SceneManager
**Problem**: processQueue() gibt zwar LoadingProgress zurück, aber ein Ladescreen-Layer muss den SceneManager nicht direkt kennen, um zu wissen wann er fertig ist. **Lösung**: ``` // game/events/AssetLoadingProgressEvent.h struct AssetLoadingProgressEvent { float fraction; // 0.0 - 1.0 bool complete; }; ``` `processQueue()` (oder die Scene) emittiert dieses Event nach jedem Frame-Schritt auf den EventBus. Der Ladescreen-Layer abonniert es. Acceptance Criteria: - Event wird pro Frame emittiert solange Queue nicht leer - complete = true im letzten Event - Ladescreen-Layer braucht keine direkte Abhängigkeit zu SceneManager
sebastian added this to the Inkrementelles AssetLoading milestone 2026-04-16 20:22:41 +00:00
sebastian added the
enhancement
engine
labels 2026-04-16 20:22:41 +00:00
sebastian added this to the Dicewars project 2026-04-16 21:02:49 +00:00
Sign in to join this conversation.
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: sebastian/Dicewars-Siedler#19
No description provided.