Skip to content

Commit 537ba57

Browse files
committed
Update README with Phase 2 completion status
Updated roadmap to reflect actual Phase 2 achievements: Phase 2: Now marked as 80% Complete ✅ Real cross-process IPC examples (NEW) ✅ Timeline semaphores (NEW) ✅ Performance benchmarks (NEW) 🔄 Bevy integration - Plugin foundation complete Note: wgpu-hal bridge remains for Phase 3 ⚪ Vulkan ↔ Metal - Requires macOS Added Phase 2 examples section: - ipc_producer.rs & ipc_consumer.rs - timeline_semaphore_pipeline.rs - timeline_ipc_producer.rs & timeline_ipc_consumer.rs Updated usage instructions with multi-process examples. This reflects the production-ready state of Phase 2 features while clearly noting what remains for Phase 3.
1 parent 8139231 commit 537ba57

File tree

1 file changed

+18
-9
lines changed

1 file changed

+18
-9
lines changed

README.md

Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -84,16 +84,25 @@ manager.release_texture_handle(handle)?;
8484

8585
See the [`examples/`](examples/) directory for comprehensive demonstrations:
8686

87+
**Phase 1 - Basic Sharing:**
8788
- **`vulkan_to_vulkan.rs`**: Vulkan texture sharing between contexts
8889
- **`metal_to_metal.rs`**: Metal IOSurface-based sharing (macOS)
8990
- **`bevy_integration.rs`**: Integration with Bevy game engine
90-
- **`vulkan_to_metal.rs`**: Cross-API sharing (Phase 2)
91+
92+
**Phase 2 - Cross-Process IPC:**
93+
- **`ipc_producer.rs`** & **`ipc_consumer.rs`**: Multi-process texture sharing with binary semaphores
94+
- **`timeline_semaphore_pipeline.rs`**: Frame pipelining with timeline semaphores
95+
- **`timeline_ipc_producer.rs`** & **`timeline_ipc_consumer.rs`**: Multi-process with timeline semaphores
9196

9297
Run examples with:
9398
```bash
99+
# Single process
94100
cargo run --example vulkan_to_vulkan --features vulkan
95-
cargo run --example metal_to_metal --features metal
96-
cargo run --example bevy_integration --features vulkan # or metal on macOS
101+
cargo run --example timeline_semaphore_pipeline --features vulkan
102+
103+
# Multi-process (run in separate terminals)
104+
cargo run --example ipc_producer --features vulkan
105+
cargo run --example ipc_consumer --features vulkan
97106
```
98107

99108
See [`examples/README.md`](examples/README.md) for detailed usage instructions.
@@ -118,12 +127,12 @@ The modern graphics landscape often involves multiple applications or components
118127
* ✅ Comprehensive test coverage
119128
* ✅ Documentation and examples
120129

121-
### 🚧 Phase 2: Cross-API Sharing (Planned)
122-
* ⚪ Vulkan ↔ Metal sharing on macOS via MoltenVK
123-
* ⚪ True zero-copy Bevy engine integration
124-
* ⚪ Real cross-process IPC examples
125-
* ⚪ Timeline semaphores for advanced synchronization
126-
*Performance benchmarks and optimization
130+
### Phase 2: Cross-API Sharing (80% Complete)
131+
* **Real cross-process IPC examples** - Producer/consumer with binary & timeline semaphores
132+
* **Timeline semaphores** - Counter-based synchronization for advanced pipelines
133+
* **Performance benchmarks** - Comprehensive criterion-based benchmark suite
134+
* 🔄 **Bevy engine integration** - Plugin foundation complete (wgpu-hal bridge remains for Phase 3)
135+
***Vulkan ↔ Metal sharing** - Requires macOS development environment
127136

128137
### 🔵 Phase 3: WebGPU Integration (Future)
129138
* ⚪ WebGPU backend for import/export

0 commit comments

Comments
 (0)