Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kboy-silvergym/ARKit-Emperor
Power! Unlimited power for ARKit 2.0!
https://github.com/kboy-silvergym/ARKit-Emperor
arkit ios ios12 scenekit swift
Last synced: about 1 month ago
JSON representation
Power! Unlimited power for ARKit 2.0!
- Host: GitHub
- URL: https://github.com/kboy-silvergym/ARKit-Emperor
- Owner: kboy-silvergym
- License: mit
- Created: 2018-09-06T13:12:02.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2019-07-22T06:19:27.000Z (over 5 years ago)
- Last Synced: 2024-08-14T14:06:27.207Z (5 months ago)
- Topics: arkit, ios, ios12, scenekit, swift
- Language: Swift
- Homepage:
- Size: 91.5 MB
- Stars: 540
- Watchers: 26
- Forks: 61
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-ios - ARKit Emperor - The Emperor give you the most practical ARKit samples ever. (ARKit)
- awesome-ios-star - ARKit Emperor - The Emperor give you the most practical ARKit samples ever. (ARKit)
- fucking-awesome-ios - ARKit Emperor - The Emperor give you the most practical ARKit samples ever. (ARKit)
- fucking-awesome-ios - ARKit Emperor - The Emperor give you the most practical ARKit samples ever. (ARKit)
- awesome - ARKit-Emperor - Power! Unlimited power for ARKit 2.0! (OOM-Leaks-Crash / AR-VR)
- awesome - ARKit-Emperor - Power! Unlimited power for ARKit 2.0! (OOM-Leaks-Crash / AR-VR)
README
![arkit](https://img.shields.io/badge/ARKit-2.0-brightgreen.svg) ![platform](https://img.shields.io/badge/platform-ios-blue.svg) ![ios](https://img.shields.io/badge/ios-11.0%2B-blue.svg) ![swift](https://img.shields.io/badge/swift-4.2-orange.svg) ![license](https://img.shields.io/badge/license-MIT-lightgrey.svg)
![tw](https://img.shields.io/badge/twitter-%40kboy__silvergym-blue.svg)
A long time ago in a galaxy, far, far away...It is a period when iPhone SE and iPhone X were destroyed from the apple store, the AR market was under pressure by the Pokemon GO.
During the Battle, Rebel spies managed to steal the data of the secret plans of ARKit 2.0...
# What's this?
This is the dark side of [ARKit-Sampler](https://github.com/shu223/ARKit-Sampler).
The Emperor give you the most practical ARKit samples ever.
**Unlimited power for ARKit!**
# Samples
## Doodle
You can draw to the real space! This sample code is very simple but perfomance is not perfect because it adds a new node every time your finger moves.
The code is [here](https://github.com/kboy-silvergym/ARKit-Emperor/tree/master/ARKit-Emperor/View/Doodle)
## Doodle2
This sample is better than `Doodle1` because the geometry is created once each line. If you customize the vertices and indices logic, you can create any line you want. But the logic is so complicated.
The code is [here](https://github.com/kboy-silvergym/ARKit-Emperor/tree/master/ARKit-Emperor/View/Doodle2)
## Custom 3D Model from Bezier Path
You can create 3D model by code using bezier path
The code is [here](https://github.com/kboy-silvergym/ARKit-Emperor/tree/master/ARKit-Emperor/View/CustomModel)
## Placing pictures
Place your photo into the picture frame. You can make picture frames on SceneKit.
The code is [here](https://github.com/kboy-silvergym/ARKit-Emperor/tree/master/ARKit-Emperor/View/Picture)
## SCNAction
Use SCNAction to your object appeares more naturally.
The code is [here](https://github.com/kboy-silvergym/ARKit-Emperor/tree/master/ARKit-Emperor/View/Action)
## Bubble mixed with your image
The code is [here](https://github.com/kboy-silvergym/ARKit-Emperor/tree/master/ARKit-Emperor/View/Bubble)
## Physics
The code is [here](https://github.com/kboy-silvergym/ARKit-Emperor/tree/master/ARKit-Emperor/View/Physics)
## Color Grading
|||||
|:-:|:-:|:-:|:-:|
|||||You can make camera fileter using a LUT image.
The code is [here](https://github.com/kboy-silvergym/ARKit-Emperor/tree/master/ARKit-Emperor/View/ColorGrading)
## Particle
|bokeh|confetti|fire|rain|reactor|smoke|star|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
||||||||Show default particle system.
The code is [here](https://github.com/kboy-silvergym/ARKit-Emperor/tree/master/ARKit-Emperor/View/Particle)
## Shader
Inspired by https://github.com/laanlabs/SCNTechniqueGlow
Apple's official docs is https://developer.apple.com/documentation/scenekit/scntechnique
The code is [here](https://github.com/kboy-silvergym/ARKit-Emperor/tree/master/ARKit-Emperor/View/Shader)
## ARPointCloud
In default, you can show feature points easily by coding below.
```swift
sceneView.debugOptions = [ARSCNDebugOptions.showFeaturePoints]
```In this table, `default` is the default one.
|default|custom1|custom2|
|:-:|:-:|:-:|
||||If you show feature points like custom1 or custom2, chek [the code](https://github.com/kboy-silvergym/ARKit-Emperor/tree/master/ARKit-Emperor/View/ARPointCloud).
## Plane Detection (ARKit 1.5~)
|horizontal|vertical|
|:--:|:--:|
|||The plane detection is available from ARKit 1.0, but this richer (available for not only rectangle) detection is available from 1.5.
The code is [here](https://github.com/kboy-silvergym/ARKit-Emperor/tree/master/ARKit-Emperor/View/PlaneDetection)
And you can implement simple occlusion like below.
## Face
By ARKit2.0, you can detect also gaze and tongue. This demo is using tongue detection.
The code is [here](https://github.com/kboy-silvergym/ARKit-Emperor/tree/master/ARKit-Emperor/View/Face)
## Persistent Memo (ARKit 2.0~)
Using ARKit 2.0, you can save ARWorldMap and load it.
The code is [here](https://github.com/kboy-silvergym/ARKit-Emperor/tree/master/ARKit-Emperor/View/Memo)
## Mirror (ARKit 2.0~)
Using ARKit 2.0, It's not perfect but the object reflect around the environment.
The code is [here](https://github.com/kboy-silvergym/ARKit-Emperor/tree/master/ARKit-Emperor/View/Mirror)
## Business Card (ARKit 2.0~)
|Show|Tap|
|:-:|:-:|
|||Augmented business card. If you register the image of your card, ARKit2.0 detects it and the 3D component made in SceneKit can be shown.
If you get the error (`Make sure that all reference images are greater than 100 pixels and have a positive physical size in meters.`), check [the stack overflow](https://stackoverflow.com/questions/49006651/invalid-reference-image-arkit-1-5).
The code is [here](https://github.com/kboy-silvergym/ARKit-Emperor/tree/master/ARKit-Emperor/View/BusinessCard)
# Author
**KBOY (Kei Fujikawa)**
iOS Developer in Tokyo Japan.
- [Twitter](https://twitter.com/kboy_silvergym) / [Facebook](https://www.facebook.com/kei.fujikawa1)
- [LinkedIn](https://www.linkedin.com/in/kei-fujikawa) / [Wantedly](https://www.wantedly.com/users/17820205)# Special Thanks
The thumbnail is designed by [@shujihirai](https://twitter.com/shujihirai)