
How I’m Learning ARKit - gmcerveny
https://medium.com/@gmcerveny/how-im-learning-arkit-baee5376a6a2
======
AndrewKemendo
I've been doing mobile AR since 2011 and it seems like there is probably
demand for some AR app best practices now that ARKit and FB Studio are coming
out. Is that accurate?

If so I'll take the time to write up something if people are interested.

~~~
nartam11
Yes! I work on building AR applications and I would find any best practice you
have very helpful!

~~~
mendeza
The ARKit example app has a readme doc that lists best practices when
developing ARKit experiences. I feel that list is super valuable when building
ARKit apps in general.

------
avaer
This post is a list of links you'll find on the natural Google searches.
That's fine as a gateway drug, but you'll get more mileage out of frequenting
one of the AR/VR subreddits or chats.

For things in the early stages, plugging yourself into the community is more
valuable than consuming the right news or tutorials.

~~~
gmcerveny
Sounds like good advice.

What are some of the AR/VR subreddits or chats you like?

~~~
dmartinez
After scanning some of the more promising subreddits, I made a few notes:

/r/augmentedreality

    
    
      - 6K Subscribers
      - Demos of things people have built
      - Promising
    

/r/virtualreality

    
    
      - 39K Subscribers
      - Mix of gaming news and "see what I built" articles
    

/r/vr_ar_ux_design

    
    
      - 220 Subscribers
      - Very UX article heavy
    

/r/AR_Innovations

    
    
      - 1K Subscribers
      - Mix of consumer news and development resources about AR
    

/r/virtuality

    
    
      - 1K Subscribers
      - Mostly hype about VR, few development resources
    

/r/Vive

    
    
      - 77K Subscribers
      - Mostly about gaming, not development

------
billconan
I made a sample code to place a 3D sphere with ARkit. it differs from the
official demo by detecting not only horizontal surfaces, but also feature
points (for example, vertical walls). But so far I wasn't able to achieve the
same kind of accuracy as shown by the ruler video and few other demos.

The ARKit api is very simple, I don't know what else I can do to improve the
accuracy.

~~~
mendeza
You should look at the ARKit Example app, I think they do some averaging of
the feature points you get to better stabilize anchoring in real world.

Also note that since ARKit identifies points from image features, stickiness
will be improved with areas that have a lot of texture, like a wood table.

I’ve been experienmenting with ARKit to see where it works and where it fails,
it does terrible if you use it in a car. Try it! That’s shows that Apple
relies so much on the motion data on the phone.

Message if me if anyone has any questions or interests in ARkit, love to chat
:).

~~~
billconan
Thank you! is the placeobjects code on this page
[https://developer.apple.com/arkit/](https://developer.apple.com/arkit/) , the
ARkit example app you mentioned? I have been learning this code. I will double
check.

~~~
mendeza
Ya the example app. They have some really nice tips on User experience, but
the code is dense. I need a few days to sit down and read through it.

------
nan0
Started a ARKit project, I am trying to accurately place a shape based on user
touch. Is this possible without vertical plane detection ? I am new to Swift,
but have been picking it up quickly.

------
synaesthesisx
I've been playing with ARKit quite a bit recently and enjoying it. There's a
plugin available for Unity now that integrates with ARKit which makes
converting models convenient.

------
andrewfong
Do people have strong opinions on building ARKit apps with XCode vs using a
Unity plugin? Does it matter if I'm coming mostly from a JavaScript / web dev
background?

~~~
AndrewKemendo
Not sure what you are asking because XCode is an IDE and Unity is a 3D engine.
You would be using both on an iOS project. You'd export your unity project to
an XCode project then publish the .ipa from XCode.

Are you wondering if it's better to use OpenGL/Metal instead of Unity? I'd say
stick with Unity unless you've written a shader before. You're not going to
build an optimized 3D/AR app without quite a bit of experience.

~~~
mendeza
Well the Example ARKit app is based off of scenekit, which is a wrapper for
Metal. Scenekit is a more natural choice to people who have background with
Three.js or want to develop more with code.

Ive been developing ARKit stuff solely with scenekit, and I enjoy it. I would
like to learn unity, but I dont see a point now cause of the high learning
curve to learn unity and since ARKit is iOS only, no point in using something
thats cross platform. But would love to hear of any feedback on using Scenekit
vs Unity!

------
nkg
ARKit looks cool, even though I am as far as one can be from the iStuff.

