GithubHelp home page GithubHelp logo

udacity-arkit-swift-project's Introduction

Perform a Magic Trick

Project for the "Learn ARKit with Swift" Udacity Nanodegree.

Prerequisite

  • Xcode 9.3 (9E145)

Instructions

  • Open the app
  • Find a flat horizontal surface
    • The magic hat will appear when that surface is detected, and the butttons will become active
  • Tap the "Throw" button to throw a ball
  • Tap the "Magic" button to make the balls disappear/reappear

udacity-arkit-swift-project's People

Contributors

romanroibu avatar

Watchers

James Cloos avatar  avatar  avatar

udacity-arkit-swift-project's Issues

Place the created hat on a detected plane

Once you've created a scene for your magic hat, turn on plane detection to detect surfaces in your environment. Once a plane has been detected and added to the ARSession, load the magic hat scene you've created into an SCNNode and add it to the created ARAnchor.

Add ability to throw a ball

Create the ball (i.e. an SCNSphere), either programmatically or using the SceneKit scene editor, and have the user be able to throw that ball by tapping a button on the UI.

Throwing a ball can be done in 3 steps:

  1. position the ball in front of the camera using the camera's transform
  2. add a SCNPhysicsBody to the ball
  3. apply a force to the SCNPhysicsBody

Make balls within the hat disappear

Add a button on the UI to allow the user to make the balls captured within the hat disappear. You will need to use the magic hat's bounding box to detect if the balls are inside the hat.

Create a 3D magic hat in SceneKit

Create a hat 3D model in SceneKit by combining different SCNGeometry subclasses. Make sure to nest all SCNGeometry objects within the same SCNNode. Play around with lighting as well to make your hat stand out!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.