Thank you Ryan for this super helpful video :) If anyone has run into some code issues in 2021 like I have, here are a few tips: - Add the key "Privacy - Local Network Usage Description" to info.plist - Add the key "Bonjour services" with the values "_{serviceName}._udp" and "_{serviceName}._tcp" to info.plist - To observe the sessionID, use: sessionIDObservation = arView.session.observe(\.identifier, ...
Thank you, sharivanlynn! So happy to hear it was helpful and thank you for sharing the tips. iOS 14 added some privacy requirements that weren’t needed in iOS 13 so thank you for sharing that with the community 🙏🏼 Best, Ryan
Great series of AR and RealityKit tutorials on this channel. ✨ For those who want to implement it in SwiftUI. You make need to make use of the Coordinator to conform NSObject and ARSessionDelegate. Use the @Published property wrapper for the variable arView and do the logic in the viewmodel. Also adding this on makeUIView() { vm.arView.session.delegate = context.coordinator }
The full example of the comments that I just left can be found on GitHub. Search this "arkit-multipeer-connectivity-swiftui" on GitHub. I am unable to post the link as RUclips is automatically deleting my comment.
Hi Ryan, thanks for the videos, they help me a lot to start my AR project! I just finished the SwiftUI + RealityKit video and then watch this one. I try to reimplement this project using SwiftUI, not UIKit, but find it hard to conform the ARSessionDelegate in SwiftUI. Can you give me some suggestions on that? Or I should just give up using SwiftUI to do that? Thanks!
Hi there Ryan, just wondering would this example work remotely? I mean I believe the multiPeerSession framework does only work with nearby devices over the network. I would like to send the AR Data to a remote device in a different location. Thanks 😊
@@realityschool Thank you very much for your quick response, I have seen your video, but I cannot determine if you have the same problem. Please watch my little video, non-tracking toe in one motion ruclips.net/video/YtNGM3vxpz4/видео.html
Hi, thank you very much for the lesson - this is a very useful tutorial! However, the question remained open for me how I can synchronize the scenes of all peers according to the scenario - one peer moved or scaled the object -> all peers saw changes. To date, the scenes in my project at the grooves are not synchronized.
I myself have resolved this issue. 1. I copied Apple's MultipeerSession code into a separate file so that it can be changed. 2. Added 'var multipeerConnectivityService: MultipeerConnectivityService? Н and initialized in init: 'do { multipeerConnectivityService = try MultipeerConnectivityService (session: session) } catch { print (error.localizedDescription) }) '' 3. In the viewWillAppear method of the ViewController class, I added: 'self.arView.scene.synchronizationService = multipeerSession? .multipeerConnectivityService' 4. Everything works fine!
THANK YOU :D I try to make a classic "memory game" for my kids :-) Can you do a video, so my son (13) and I can create together step by step ? Thank you so much!
@@realityschool thank you for your quick response :-) I think to get a feeling for code by just doing it. And a "Memory AR game" is an awesome goal, especially because you can play it together at the end. He can share it with is friends and hopefully get new ideas to work on. So we need how to create a Scene and then how to flip cards by clicking on them, this awesome Multiplayer stuff, so that we both see the same field. Can't wait to get started !
@@realityschool Thank you so much! I was irritated bout that 3 dots at "offsetBy: sessionIDCommandString.count)...])" I thought that it was folded by swift because of lack in space. But it seems part of the code :D. looking forward to build my APP "two player - memory AR"
// solved :D I used this link: github.com/AddedLayer/multipeer-session can't import that awesome "helper framework". need help :-) It says : the remote repository could not be accessed. Make sure a valid repository exists at the specified location and that the correct credentials have been supplied.
Hi, thank you for this great tutorial! I had some trouble at around 10:00. I am getting these two errors - 1) Value of type 'ARView' has no member 'automaticallyConfigureSession' 2) Value of type 'ARView' has no member 'session' It'd be great if anyone could help me out with this, I am just starting out and need this for a project.
Thank you Ryan for this super helpful video :)
If anyone has run into some code issues in 2021 like I have, here are a few tips:
- Add the key "Privacy - Local Network Usage Description" to info.plist
- Add the key "Bonjour services" with the values "_{serviceName}._udp" and "_{serviceName}._tcp" to info.plist
- To observe the sessionID, use: sessionIDObservation = arView.session.observe(\.identifier, ...
Thank you, sharivanlynn! So happy to hear it was helpful and thank you for sharing the tips. iOS 14 added some privacy requirements that weren’t needed in iOS 13 so thank you for sharing that with the community 🙏🏼
Best,
Ryan
the key should be "_servicename._udp" and "_servicename._tcp" in Xcode 12.5
@@uncobosco2420 I have two iPhones 12 Pro (iOS 14.7.1) and it still doesn't work for me. Can't pair two devices. Are there any other requirements?
Great series of AR and RealityKit tutorials on this channel. ✨
For those who want to implement it in SwiftUI. You make need to make use of the Coordinator to conform NSObject and ARSessionDelegate.
Use the @Published property wrapper for the variable arView and do the logic in the viewmodel.
Also adding this on makeUIView() { vm.arView.session.delegate = context.coordinator }
The full example of the comments that I just left can be found on GitHub. Search this "arkit-multipeer-connectivity-swiftui" on GitHub. I am unable to post the link as RUclips is automatically deleting my comment.
Awesome! Thanks for sharing this video. Merry Christmas! 🎄🎁
Your video helps me a lot when I am just new on VRkit. Pls keep creating more amazing work. Thanks for sharing !!!
Helpful video.
Video Audio quality is awesome.
Also in description table of content is helpful
Please make more videos of ARKIT
Great tutorial! Thank you for your work!
Thank you! Happy to hear that you’ve enjoyed it 🥳
Best,
Ryan
Thanks for sharing this video!
Great video! Is this possible on Android Devices also by using ARCore, Google Cloud Anchors or something?
This is awesome
Hi Ryan, thanks for the videos, they help me a lot to start my AR project! I just finished the SwiftUI + RealityKit video and then watch this one. I try to reimplement this project using SwiftUI, not UIKit, but find it hard to conform the ARSessionDelegate in SwiftUI. Can you give me some suggestions on that? Or I should just give up using SwiftUI to do that? Thanks!
Thanks Ryan!
hi, thank you, it was a great tutorial, Can you do a video teaching us how to stream audio please?, I want to make a walkie talkie. Thank you so much!
Hi there Ryan, just wondering would this example work remotely? I mean I believe the multiPeerSession framework does only work with nearby devices over the network. I would like to send the AR Data to a remote device in a different location. Thanks 😊
Excellent video!
Have you had an opportunity to work with RealityKit and BodyTracking?
I have a detail when following the position of the toe
@@realityschool Thank you very much for your quick response, I have seen your video, but I cannot determine if you have the same problem. Please watch my little video, non-tracking toe in one motion ruclips.net/video/YtNGM3vxpz4/видео.html
Hi, thank you for the tutorial. But I have a problem. I can't see the colored sphere. I use Xcode 13. Did something change?
Hi, thank you very much for the lesson - this is a very useful tutorial! However, the question remained open for me how I can synchronize the scenes of all peers according to the scenario - one peer moved or scaled the object -> all peers saw changes. To date, the scenes in my project at the grooves are not synchronized.
I myself have resolved this issue.
1. I copied Apple's MultipeerSession code into a separate file so that it can be changed.
2. Added 'var multipeerConnectivityService: MultipeerConnectivityService? Н and initialized in init:
'do {
multipeerConnectivityService = try MultipeerConnectivityService (session: session)
} catch {
print (error.localizedDescription)
})
''
3. In the viewWillAppear method of the ViewController class, I added:
'self.arView.scene.synchronizationService = multipeerSession? .multipeerConnectivityService'
4. Everything works fine!
THANK YOU :D I try to make a classic "memory game" for my kids :-) Can you do a video, so my son (13) and I can create together step by step ? Thank you so much!
@@realityschool thank you for your quick response :-) I think to get a feeling for code by just doing it. And a "Memory AR game" is an awesome goal, especially because you can play it together at the end. He can share it with is friends and hopefully get new ideas to work on. So we need how to create a Scene and then how to flip cards by clicking on them, this awesome Multiplayer stuff, so that we both see the same field. Can't wait to get started !
Awesome!Can I use SceneKit to create the multiuser AR experience and different animations by triggering different buttons
Please, I need full extended command: 31:19 line 108. Thank you !
@@realityschool Thank you so much! I was irritated bout that 3 dots at "offsetBy: sessionIDCommandString.count)...])"
I thought that it was folded by swift because of lack in space. But it seems part of the code :D. looking forward to build my APP "two player - memory AR"
// solved :D
I used this link: github.com/AddedLayer/multipeer-session
can't import that awesome "helper framework". need help :-) It says : the remote repository could not be accessed. Make sure a valid repository exists at the specified location and that the correct credentials have been supplied.
Hi, thank you for this great tutorial! I had some trouble at around 10:00. I am getting these two errors -
1) Value of type 'ARView' has no member 'automaticallyConfigureSession'
2) Value of type 'ARView' has no member 'session'
It'd be great if anyone could help me out with this, I am just starting out and need this for a project.
@@realityschool It worked! Thank You so much ˆ_ˆ