All Projects → maxxfrazer → Arkit Scnpath

maxxfrazer / Arkit Scnpath

Licence: mit
Create paths for your Augmented Reality environments using just points to represent the centre of the path.

Programming Languages

swift
15916 projects

Projects that are alternatives of or similar to Arkit Scnpath

ARKit-Sample-ObjC
ARKit sample application is written in Objective C with features of Add, Remove, Scale, Move, Snapshot for single and multiple objects with plane/surface detection, reset session and AR support checking.
Stars: ✭ 72 (-76.92%)
Mutual labels:  augmented-reality, scenekit, arkit
Arplayer
Playback videos using ARKit and AVFoundation.
Stars: ✭ 117 (-62.5%)
Mutual labels:  augmented-reality, arkit, scenekit
Scenekit Scnline
Draw a tube or thick line in SceneKit
Stars: ✭ 49 (-84.29%)
Mutual labels:  augmented-reality, arkit, scenekit
Augmentedsolarsystem
An Augmented reality experience to explore planets in our Solar System
Stars: ✭ 69 (-77.88%)
Mutual labels:  augmented-reality, arkit, scenekit
TheLaughingMan-ARKit
Use ARKit to become the infamous Laughing Man from Ghost in the Shell
Stars: ✭ 26 (-91.67%)
Mutual labels:  augmented-reality, scenekit, arkit
Arpaint
Draw with bare fingers in the air using ARKit
Stars: ✭ 672 (+115.38%)
Mutual labels:  augmented-reality, arkit, scenekit
Arkit Projects
Experimenting with ARKit
Stars: ✭ 70 (-77.56%)
Mutual labels:  augmented-reality, arkit, scenekit
Arkit By Example
Apple ARKit example app
Stars: ✭ 458 (+46.79%)
Mutual labels:  augmented-reality, arkit, scenekit
SceneKit-PortalMask
Clean class to create a portal in SceneKit for use in ARKit.
Stars: ✭ 60 (-80.77%)
Mutual labels:  augmented-reality, scenekit, arkit
ARKit-FocusNode
FocusSquare class taken straight from Apple's ARKit examples and packed up for anyone to use with ease.
Stars: ✭ 50 (-83.97%)
Mutual labels:  augmented-reality, scenekit, arkit
Arkit Floorislava
Basic ARKit example that detects planes and makes them lava.
Stars: ✭ 120 (-61.54%)
Mutual labels:  augmented-reality, arkit, scenekit
GVRSCNRenderer
SceneKit Rendering and ARKit 6DOF Tracking for Google Cardboard
Stars: ✭ 19 (-93.91%)
Mutual labels:  augmented-reality, scenekit, arkit
Unity-ARKit-Plugin
Modified plugin source and Add custom ARKit projects implement on Unity
Stars: ✭ 83 (-73.4%)
Mutual labels:  augmented-reality, scenekit, arkit
Argithubcommits
Show your GitHub commit records in 3D with ARKit and SceneKit. 用 ARKit 展示你的 GitHub 提交图
Stars: ✭ 280 (-10.26%)
Mutual labels:  augmented-reality, arkit, scenekit
Gesture Recognition 101 Coreml Arkit
Simple project to recognize hands in realtime. 👋 Serves as an Example for building your own object recognizer.
Stars: ✭ 278 (-10.9%)
Mutual labels:  augmented-reality, arkit
augmented-card
Example project for ARKit Image Tracking blog post
Stars: ✭ 26 (-91.67%)
Mutual labels:  augmented-reality, arkit
Arbottlejump
An ARKit version of WeChat Bottle Jump game. ARKit 版微信跳一跳游戏
Stars: ✭ 259 (-16.99%)
Mutual labels:  arkit, scenekit
Jeelizar
JavaScript object detection lightweight library for augmented reality (WebXR demos included). It uses convolutional neural networks running on the GPU with WebGL.
Stars: ✭ 296 (-5.13%)
Mutual labels:  augmented-reality, arkit
stardust-SDK
Stardust SDK and sample app for Unity
Stars: ✭ 23 (-92.63%)
Mutual labels:  augmented-reality, arkit
Realityui
A Swift Package for creating familiar UI Elements and animations in a RealityKit rendered Augmented Reality or Virtual Reality scene.
Stars: ✭ 275 (-11.86%)
Mutual labels:  augmented-reality, arkit

ARKit-SCNPath

Functions and classes for creating path geometries in a SceneKit application on iOS. Main use-case being for ARKit. I'm hoping to add RealityKit support once it is possible to generate meshes. (If anyone knows a way how, please let me know!)

Version License Platform Swift Package Manager Swift 5.0 Actions Status

Introduction

Navigation seems to be a strong point for people making AR apps. So here's a class to easily create a path in AR along a set of centre points. This class can also be used to draw out a racetrack, road for an animated character to follow, or even draw a pentagram on the floor!

Check out the full tutorial on Medium on how I made the examples in the below gifs using this Pod and about 30 lines of non boilerplate code.

Please feel free to use and contribute this library however you like. I only ask that you let me know when you're doing so, so I can see some cool uses of it!

If you're having issues with Swift Package dependencies there's some great resources online: https://developer.apple.com/documentation/xcode/adding_package_dependencies_to_your_app

Requirements

  • Swift 5.0
  • iOS 11.0

Compatibility

  • [x] SceneKit
  • [ ] RealityKit

Example

It's as easy as this to make a node with this path as a geometry:

let pathNode = SCNPathNode(path: [
	SCNVector3(0, -1, 0),
	SCNVector3(0, -1, -1),
	SCNVector3(1, -1, -1)
])

Alternatively, you can grab the geometry directly:

let pathGeometry = SCNGeometry.path(path: [
	SCNVector3(0, -1, 0),
	SCNVector3(0, -1, -1),
	SCNVector3(1, -1, -1)
])

The y value is set to -1 just as an example that assumes the origin of your scene graph is 1m above the ground. Use plane detection to actually hit the ground correctly.

Other parameters that can be passed into both the SCNPathNode class and the SCNGeometry.path functions:

name description default example
path Array of SCNVector3 points to make up the path no default [SCNVector3(0,-1,0), SCNVector3(0,-1,-1), SCNVector3(1,-1,-1)]
width width of the path in meters 0.5 0.1
curvePoints number of points to make up the curved look when the path is turning to a new direction. 8 16
materials materials to be applied to the geometry. a blue SCNMaterial [SCNMaterial()]
curveDistance distance from the centre of the curve as a multiple of half the width to set the corner radius. Minimum value is 1. 1.5 2

Here's some basic examples of what you can do with this Package:

Path Example 1 Path Example Texture Repeating Path Example Creating

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].