|

Step Into Newsletter – November 24, 2024

Improved Gesture Examples, exploring Immersive Spaces, and celebrating an arbitrary milestone!

As you can probably see, I’ve been busy with example code on Step Into Vision. On November 14 I published my 50th post on this site and I’m just getting stated. There are so many topics I want to explore and so many things I want to bring you. If you find Step Into Vision helpful, please do me a favor. Take a few minutes share the site or this newsletter post with your friends and colleagues. Help me get this site in front of anyone building for visionOS and Apple Vision Pro.

Bluesky post: You know how I love an arbitrary milestone! I just published my 50th post on Step Into Vision

With that out of the way, let’s get back to our regularly scheduled newsletter.

Step Into Examples: Gestures

Continuing the mini-series on system gestures, we learned how to account for initial entity transforms when starting gestures.

Improved Drag Gesture – Let’s fix that “snapping” bug that we saw in the Drag Gesture example.

Improved Magnify Gesture – We can smooth out the Magnify Gesture by multiplying the magnification by the initial scale of the entity.

Rotate Gesture 3D Improved – We can smooth out Rotate Gesture 3D by multiplying the gesture rotation by the initial orientation of the entity.

We also explore some ideas for combining gestures.

Combine Gestures in a Sequence – An example of using SequenceGesture to create a Long Press + Drag gesture.

Simultaneously Combine Gestures – An example of using SimultaneousGesture to create a Magnify + Rotate gesture.

You can find links to the entire gesture series on the Learn visionOS page.

Step Into Labs

The only new labs to tell you about are also related to gestures.

Lab 013 – Target a gesture to entities with a component – We can use targetedToEntity with a query to target our gestures on a subset of entities.

Lab 014 – Building an Indirect Transform System – Use the Drag Gesture and a Toolbar to switch modes. We can use one gesture to drag, scale, and rotate entities. I’m particularly proud of this one!

Example Code: Immersive Spaces

I started the third section of the mini-series on working with application scenes (Windows, Volumes, and Immersive Spaces).

Open and dismiss Immersive Spaces – Covering the basics of opening and dismissing Immersive Spaces.

Using Scene Phase to provide an exit for an Immersive Space – Building on the Scene Phase concepts we learned with Windows, with an anchored twist.

Immersive Styles in visionOS – Covering mixed, progressive, and full immersion in visionOS Immersive Spaces.

Moving from one Immersive Space to another – Building on what we have learned about scene phase, we can transition from one space to another.

You can find the entire series on the Learn visionOS page. I’m going to outgrow this page at this rate!

New Resources

If this newsletter isn’t enough, I have two more that I can highly recommend.

Magic Beans – A weekly newsletter covering Spatial Computing, AI, and cutting-edge technologies.

diff visionOS – The diff visionOS newsletter by Tim Mitra.

Both Tim Mitra and Tom Krikorian are curating awesome repos related to visionOS

Community

The visionOS community is showing up on Bluesky in a big way. You can find me there https://bsky.app/profile/vrhermit.bsky.social. Make sure you check out these start packs.

Tim’s visionOS Starter Pack
Tom’s visionOS Starter Pack

On November 20, Apple held an event called Envision the future: Build great apps for visionOS. Many people traveled to the event, and many more of us attended remotely. The content was mostly geared towards Apple Developers who are taking their first steps into visionOS. Most of what they showed has be presented in WWDC videos or the documentation, but it was still time well spent. I picked up a few things along the way and it was really nice to see so many faces from Apple and the community during the Q&A session.

What’s Next?

I have a few more examples and labs to share with you regarding gestures. I also have a lot more to say on the subject of working with immersive spaces. Once those series are in a good place, I’ll move on to the next series:

  1. ARKit Basics: Providers, Anchors, etc.
  2. Hand Tracking and interaction (outside of the system gestures)

As always, if there is anything you want to see on Step Into Vision, please let me know. Particularly, if you are stuck on a problem and can’t seem to make progress, let me help get you unstuck. I don’t have all the answers, but the chances are pretty good that I can figure it out or find someone who can.

Until next time,

Joseph

Questions or feedback?