Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

I wanna help make iOS work #990

Closed
mtak- opened this issue Jul 10, 2018 · 2 comments
Closed

I wanna help make iOS work #990

mtak- opened this issue Jul 10, 2018 · 2 comments

Comments

@mtak-
Copy link

mtak- commented Jul 10, 2018

See this winit issue #596.

  • These are the changes required to vulkano to get ios running. It's not much; most of the work required is in winit.

With the changes to winit and vulkano, I can get the triangle example to run and render a few frames before a stack overflow occurs. Any tips on debugging that issue would be awesome.

Here is the portion of the stack that loops:

#8247	0x00000001059a5e88 in _$LT$vulkano..sync..future..fence_signal..FenceSignalFuture$LT$F$GT$$u20$as$u20$vulkano..sync..future..GpuFuture$GT$::cleanup_finished::ha1c63a88ab5eb6dc at /Users/tyler/Documents/git/opengles_rust_demo/rust/vulkano/vulkano/src/sync/future/fence_signal.rs:318
#8248	0x00000001059c26ac in _$LT$alloc..boxed..Box$LT$F$GT$$u20$as$u20$vulkano..sync..future..GpuFuture$GT$::cleanup_finished::h1f597a1e1a74278e at /Users/tyler/Documents/git/opengles_rust_demo/rust/vulkano/vulkano/src/sync/future/mod.rs:265
#8249	0x0000000105914ea8 in _$LT$vulkano..sync..future..join..JoinFuture$LT$A$C$$u20$B$GT$$u20$as$u20$vulkano..sync..future..GpuFuture$GT$::cleanup_finished::h1f3b280fab06bd62 at /Users/tyler/Documents/git/opengles_rust_demo/rust/vulkano/vulkano/src/sync/future/join.rs:73
#8250	0x0000000105986b1c in _$LT$vulkano..command_buffer..traits..CommandBufferExecFuture$LT$F$C$$u20$Cb$GT$$u20$as$u20$vulkano..sync..future..GpuFuture$GT$::cleanup_finished::hbea70a6d3adc5a99 at /Users/tyler/Documents/git/opengles_rust_demo/rust/vulkano/vulkano/src/command_buffer/traits.rs:208
#8251	0x000000010596e148 in _$LT$vulkano..swapchain..swapchain..PresentFuture$LT$P$C$$u20$W$GT$$u20$as$u20$vulkano..sync..future..GpuFuture$GT$::cleanup_finished::h0b78a2635f7da078 at /Users/tyler/Documents/git/opengles_rust_demo/rust/vulkano/vulkano/src/swapchain/swapchain.rs:990
#8252	0x00000001059a8e00 in _$LT$vulkano..sync..future..fence_signal..FenceSignalFuture$LT$F$GT$$GT$::cleanup_finished_impl::h04fafc4e2c5cd352 at /Users/tyler/Documents/git/opengles_rust_demo/rust/vulkano/vulkano/src/sync/future/fence_signal.rs:172
#8253	0x00000001059a5e88 in _$LT$vulkano..sync..future..fence_signal..FenceSignalFuture$LT$F$GT$$u20$as$u20$vulkano..sync..future..GpuFuture$GT$::cleanup_finished::ha1c63a88ab5eb6dc at /Users/tyler/Documents/git/opengles_rust_demo/rust/vulkano/vulkano/src/sync/future/fence_signal.rs:318
@mitchmindtree
Copy link
Contributor

@mtak- awesome work on getting this far! Any chance you could share an update? Did you manage to workaround this issue? I wonder #1135 is related to this - it sounds very similar.

@mtak-
Copy link
Author

mtak- commented Dec 12, 2018

Thanks for the follow up! I forgot about this issue. I have moved over to gfx-hal. Issue #1135 definitely looks related. I wouldn't be surprised if macos/ios with moltenvk would have roughly the same problems

Aside from this issue/1135, winit should have enough plumbing to support vulkano now, as hal seems to work fine.

IIRC, to setup a vulkano surface, using the WindowBuilder extension method with_root_view_class should be all that a user has to do (besides linking to moltenvk).

ex:

window_builder.with_root_view_class(class!(MTKView) as *const _ as *const _)

I'll try and find time to test it out again.

@Rua Rua closed this as completed Aug 12, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants