diff --git a/.github/workflows/coverage.yml b/.github/workflows/coverage.yml index 49dce629..30863dd7 100644 --- a/.github/workflows/coverage.yml +++ b/.github/workflows/coverage.yml @@ -96,7 +96,7 @@ jobs: if: success() || failure() uses: actions/upload-artifact@v4 with: - name: snapshots + name: coverage-snapshots path: | tests/snapshots/scenes/comparison/**/* tests/snapshots/avatar-image-generation/comparison/**/* diff --git a/.github/workflows/docker_build_test.yml b/.github/workflows/docker_build_test.yml index b39ef994..9d87eb91 100644 --- a/.github/workflows/docker_build_test.yml +++ b/.github/workflows/docker_build_test.yml @@ -78,7 +78,7 @@ jobs: if: success() || failure() uses: actions/upload-artifact@v4 with: - name: snapshots + name: docker-snapshots path: | ${{ github.workspace }}/avatar-output/**/* ${{ github.workspace }}/scenes-output/**/* \ No newline at end of file diff --git a/godot/src/tool/scene_renderer/scene-test-input.json b/godot/src/tool/scene_renderer/scene-test-input.json index 18f71279..d6268bfb 100644 --- a/godot/src/tool/scene_renderer/scene-test-input.json +++ b/godot/src/tool/scene_renderer/scene-test-input.json @@ -9,7 +9,7 @@ "camera": { "position": { "x": 8, - "y": 20, + "y": 25, "z": -8 }, "target": { @@ -17,13 +17,13 @@ "y": 0, "z": -8 }, - "orthoSize": 20, + "orthoSize": 25, "projection": "ortho" } }, "payload": [ { - "coords": "72,-10" + "coords": "73,-6" } ] } \ No newline at end of file diff --git a/godot/src/tool/scene_renderer/scene_orchestor.gd b/godot/src/tool/scene_renderer/scene_orchestor.gd index b2b1b014..be17fb08 100644 --- a/godot/src/tool/scene_renderer/scene_orchestor.gd +++ b/godot/src/tool/scene_renderer/scene_orchestor.gd @@ -179,6 +179,10 @@ func _process(_delta): func _on_timer_timeout(): + # Continue only when every pointer around was fetched + if Global.scene_fetcher.scene_entity_coordinator.is_busy(): + return + if current_payload_index >= scenes_to_process.scenes.size(): Global.testing_tools.exit_gracefully(0) return diff --git a/lib/src/realm/scene_entity_coordinator.rs b/lib/src/realm/scene_entity_coordinator.rs index 0df4fcdb..69d63125 100644 --- a/lib/src/realm/scene_entity_coordinator.rs +++ b/lib/src/realm/scene_entity_coordinator.rs @@ -546,6 +546,11 @@ impl SceneEntityCoordinator { self.cache_scene_data.remove(&scene_id); self.update_position(self.current_position.0, self.current_position.1); } + + #[func] + pub fn is_busy(&self) -> bool { + !(self.requested_city_pointers.is_empty() && self.requested_entity.is_empty()) + } } #[godot_api] diff --git a/tests/scene-renderer-test-input.json b/tests/scene-renderer-test-input.json index 18f71279..d6268bfb 100644 --- a/tests/scene-renderer-test-input.json +++ b/tests/scene-renderer-test-input.json @@ -9,7 +9,7 @@ "camera": { "position": { "x": 8, - "y": 20, + "y": 25, "z": -8 }, "target": { @@ -17,13 +17,13 @@ "y": 0, "z": -8 }, - "orthoSize": 20, + "orthoSize": 25, "projection": "ortho" } }, "payload": [ { - "coords": "72,-10" + "coords": "73,-6" } ] } \ No newline at end of file diff --git a/tests/snapshots/scene-image-generation/test-scene-rendering-0-72_-10.png b/tests/snapshots/scene-image-generation/test-scene-rendering-0-72_-10.png deleted file mode 100644 index c53884a1..00000000 Binary files a/tests/snapshots/scene-image-generation/test-scene-rendering-0-72_-10.png and /dev/null differ diff --git a/tests/snapshots/scene-image-generation/test-scene-rendering-0-73_-6.png b/tests/snapshots/scene-image-generation/test-scene-rendering-0-73_-6.png new file mode 100644 index 00000000..5f1b8a67 Binary files /dev/null and b/tests/snapshots/scene-image-generation/test-scene-rendering-0-73_-6.png differ