fire escape presentation

Anara Magavi

Anara Magavi

An AR app that leads students out of a "burning building". AR fires and special effects pop up on the students phone when they find image targets that the computer recognizes. The AR fires create virtual obstacles for the students try to avoid.

Sometimes in schools students blow off fire drills or ignore them, If there was a real fire those students would be in trouble. So, using their phone to simulate a fire could better educate students on how to escape one.

The creators used rhino to make image targets that show up as fire, water and arrows on the users phone. They wanted to make something that could train people for fire escape routes. The user only has to get the app, and use any smartphone or tablet with a working back facing camera to find the safest way out of their building.

Amiyr Ahmad

THE FIRE ESCAPE APP is for school fire drills so the user can learn many ways to escape a fire. the app will help learn many other ways to get out of a fire because all fires are not going to be in the same the app is an improvement on a fire drill because it allows the user to practice multiple different scenarios and let the user  reach the exit without obstruction.

The fire escape project is made to demonstrate the motion of putting out a fire and avoiding fire to make the drills more realistic, different triggers interact with the Augmented Reality app. The user will hold a phone that has the AR app on it and will be taught how to put out fires and make a path to  safety.

The problem is that  Students are often under prepared for fires and don't think of or know about multiple exits multiple way to get out of a fire in schools and to make it easier for firefighters to improve there speed 

the  that we are using is vuforia and unity to add the image targets and the effects.

there are not any other apps like this for students and fire fighters.

This app can be used with an app on the phone. there may be a headset version.

Presentation

Isabella Giaconi
IMG_8022.JPG

Puppy love

Rosella Cecil
1 / 12

Rosella -

Puppy Love has a four-fold purpose: To provide people who cannot afford or aren't ready for a real dog with the experience of having one, to help train potential dog owners in the care and responsibility required, to show potential dog owners the reward of owning a dog, and helping to promote the idea of adopting a dog from a shelter rather than buying a puppy from a breeder or store. It does all of these and more by using augmented reality or “AR” to place the user’s virtual pet into reality. After picking the perfect dog from the Virtual Shelter, the user gets to bring it home and play with it similarly to how one would with a real dog. Pets, and more specifically dogs, are at the top of many children’s wish lists. While their intentions in getting a dog are good, not all children are ready for a pet. “Puppy Love” helps children learn the responsibility and consistency that comes with owning a pet. It also shows potential dog owners the reward of owning a dog, as well as the not so rewarding things, like cleaning up after your dog.
“Puppy Love” uses a software called Vuforia to project AR dogs onto a phone screen and into the real world. The dogs are made in MagicaVoxel and later animated to make them more lifelike. Puppy Love uses the idea of truly learning pet care and responsibility by actually doing it. By moving your phone or interacting with the screen, you are also interacting with your dog. The more you play, the more the user and their said pet to bond with each other. The dog will let you know how it is feeling depending on how it’s tail moves.

 

Clio -

Pet companion app - Dogs are some of the easiest pets to get companionship from. Most dogs are kid friendly and so much love to their family. So, what family wouldn't want a dog? One of the biggest reasons parents refuse to get there children dogs is because dogs are to much work to take care of, almost like "an extra kid". Before refusing to get a dog because of its needs how about understanding what its like taking care of a dog without investing the money into getting one. The Pet Companion app allows the user to do everything with a dog you'd do in real life through a phone screen. The user adopts a dog, names the dog, and brings it home. Then until the user feels they're ready to get a real dog the user will walk, discipline, train, and feed the virtual dog. There is also an information sheet on the app giving information on how to care for a dog. By interacting with the dog through your phone you learn so much and hopefully gain enough confidence that you can take care of a dog in real life. This app was used with Unity and Majicavoxel.

Future Scrapers

Reuben Fuchs

Future scraper is a visually colorful and entertaining AR game where you earn money, buy new floors, and watch as your building stretches higher off the table taking you further into the future.

Welcome to Planet AR where you can transform everyday spaces into a whole new realm of discoveries, uncovering the mysterious worlds beyond Earth. Using the power of Augmented Reality (AR) you will be able to design and explore your own Augmented Reality World unconstrained by physics. Augmented Reality is similar to Virtual Reality, but instead of placing you in a 100% virtual world, AR shows the real world mixed with virtual elements.

Students will investigate the superpowers of the natural world and get inspired to design their own fantasy world & characters. They will uncover fascinating futuristic thinking and utilize the creative process to integrate these features into 3d modeled environments and avatars, ready to be viewed in AR ( Augmented Reality)  

Students will explore the power of illustration, storytelling, and digital design  3D modeling). Students will then learn rapid prototyping tools and how to bring their projects to the virtual world, thus introducing them to the exciting world of Augmented reality and Virtual Reality experience.

Focus Skills/Subjects/Technologies: 

Coding
Design
Storytelling
Game Design
Interactions Design
AR Software

Instructions for adding the animation script

  1. Export the frames of your animation from MagicaVoxel and bring them into Spark
  2. Download the two linked scripts in this post (animScript.js and names.js)
  3. Drag the Scripts and your Models into Spark so that they appear in the Assets Folder
  4. Create a Null Object and then parent (drag the 3D models) onto the null object, this will group the frames of the animation in one place.
  5. Click on AnimScript.js and click the '+' where it says "To Script".
  6. Select a number to create a variable and name it "frameIn"
  7. Follow the images in this presentation to create a patch for that variable


names.js
// Load in the required modulesconst Patches = require('Patches');const Scene = require('Scene');const Diagnostics = require('Diagnostics');

let parentNames = ["AnimObject0""Animation"]

let parentsArray = []let childArray = [];let totalFrames = 0;
// Enable async/await in JS [part 1](async function () {  let name = ""
  for (let anim = 0anim < parentNames.lengthanim++) {    // Locate the animation parent in the Scene    [parentsArray[anim]] = await Promise.all([      Scene.root.findFirst(parentNames[anim])    ]);  }
  //locate the text object in the scene (for debugging)  const [thetext] = await Promise.all([    Scene.root.findFirst('text0')  ]);
  // Get the parent object's children  and log their names to the console  for (let anim = 0anim < parentNames.lengthanim++) {    const children = await parentsArray[anim].findByPath('*');    childArray[anim] = children  }

  // Enable async/await in JS [part 2]})();
Patches.outputs.getScalar('frameIn').then(event => {  event.monitor({}).subscribe(function (values) {    // Diagnostics.log("To Script Number ".concat(values.newValue.toString()));    let frame = values.newValue    totalFrames++
    for (let anim = 0anim < parentNames.lengthanim++) {      if (childArray[anim] != null) {        for (var i = 0i < childArray[anim].lengthi++) {          childArray[anim][i].hidden = !(totalFrames % childArray[anim].length == i);        }      }    }  });});

  // Diagnostics.log(`Child ${i} name: ${children[i].name}`);