Home

Awesome

FocusNode

The root class here uses a class I found in Apple's documentation for ARKit apps that I wanted to have easy to use myself, and thought others would benefit from it too.

Actions Status Version License Platform Swift Package Manager Swift 5.0

FocusNode Example 1

The Example looks identical to the above GIF.

Medium Article V1 of this CocoaPod

It was found inside the downloadable project on the following page: https://developer.apple.com/documentation/arkit/handling_3d_interaction_and_ui_controls_in_augmented_reality

I've added the license from that project to this repository.

For a similar object to place into a RealityKit scene, try the FocusEntity Repository.

Minimum Requirements

Installation

Swift Package Manager

Add the URL of this repository to your Xcode 11+ Project and select version 2.0+ https://github.com/maxxfrazer/ARKit-FocusNode.git

CocoaPods

Include this pod in your Podfile like so:

pod 'FocusNode'

Usage

See the Example for a full working example as can be seen in the image above

V2

Follow steps in V1, and then whatever you have as your sceneView class, for example ARSCNView, add the protocol of ARSmartHitTest to it like the following:

extension ARSCNView: ARSmartHitTest {}

V1

Import FocusNode to your .swift file and add it to your scene as so:

let focusNode = FocusSquare()
sceneView.scene.rootNode.addChildNode(self.focusNode)
focusNode.viewDelegate = sceneView

Check out the Example project or message me on GitHub or twitter if it's unclear.

I DID NOT WRITE A MAJORITY OF THIS CODE MYSELF, MOST OF IT WAS TAKEN DIRECTLY FROM APPLE'S EXAMPLES