Git Product home page Git Product logo

simformsolutionspvtltd / ss-artreasurehunt Goto Github PK

View Code? Open in Web Editor NEW
22.0 2.0 0.0 15.65 MB

✨SS-ARTreasureHunt - A Christmas themed Augmented Reality based Treasure - Hunt App built using Unity and AR Foundation πŸš€πŸ”₯πŸ’₯

License: MIT License

C# 17.75% ShaderLab 70.07% HLSL 12.18%
android arcore-unity arfoundation augmented-reality location-based-augmented-reality mobile-app treasure-hunt unity google-geospatial-creator-api

ss-artreasurehunt's Introduction

πŸŽ„AR Treasure Hunt πŸŽ„πŸŽ…πŸ»πŸŽ

Made with Unity C# API Platform

A Christmas themed Augmented Reality based Treasure - Hunt Game built using Unity and AR Foundation β˜ƒοΈ

There are Christmas themed items placed in the real world. Your task is to find out the items following the cues.

Features πŸŽ‰

  • Geospatial Creator API is used to place 3D models of Christmas Items at specific geolocations
  • Cues to discover Christmas items
  • Score system to track user's current progress
  • Notification system to inform user if there is low GPS accuracy, no Internet connectivity
  • Animations

Technologies & Frameworks πŸ› 

  • Unity Engine
  • AR Foundation
  • Google's ARCore Geospatial Creator Feature
  • GPS and LocationService
  • Enhanced Input System for handling touch events
  • Particle System for Confetti animations

Screenshots πŸ€–

Play Game Instructions Cue
Playing Game Christmas Item Visible Congrats Message

Video πŸŽ₯

Game Play
treasure_hunt_gameplay.mp4

How does it works? 🧐

The AR Treasure Hunt project can be built to create a mobile game.

The project uses Unity 2022.3.15f1 and Google's ARCore Geospatial Creator API

The Geospatial Creator API anchors christmas items to specific GPS coordinates in the real world. The API can track a user's latitude, longitude and altitude on the earth. The user needs to follow the given cues inorder to discover the items.

Note

App works best in day time.

Requirements 🎯

The app will require the following:

  • Internet and GPS access.
  • The experience works best outdoors.
  • An ARCore compatible device: Android: Google Pixel 2 or later device for optimum performance.

Developer Setup πŸ‘¨β€πŸ’»

Unity πŸ‘Ύ

  1. Download Unity version 2022.3.15f1 for compatibility. We recommend using Unity Hub.
  2. Clone this repo to your machine (optionally fork this repository if you plan on expanding on it).
  3. Open the project in Unity 2022.3.15f1, and open the 'ARTreasureHunt' scene (if it doesn't open automatically).
  4. Switch platform to Android (File > Build Settings > Choose Android Platform > Click on Switch Platform)
  5. Follow the steps below in the 'ARCore API Key' section
  6. Deploy it to an ARCore compatible device (File > Build Settings > Build & Run)

ARCore API Key πŸ”‘

You'll need to set up API access to use the ARCore Geospatial API and the Google Map Tiles API

  1. Create a new Google Cloud project.
  2. Enable the ARCore API and Maptiles API and generate API keys.
  3. Add the keys to your Unity Project:
    1. Open Unity Project Settings (Edit > Project Settings)
    2. Under 'XR Plug-in Management', click on 'ARCore Extensions'
    3. Paste the ARCore API Key into the 'Android API Key' textfield
    4. 'Geospatial' and 'Geospatial Creator' should be turned on
    5. Open the ARTreasureHunt Scene by Double Clicking it (Projects window > Assets > Scenes)
    6. Click on 'AR Geospatial Creator Origin' from the Hierarchy window
    7. Paste the Map Tiles API Key under 'AR Geospatial Creator Script' component in the Inspector window

Changing the geographic coordinates of Christmas Items ✨

  1. Open the ARTreasureHunt Scene by Double Clicking it (Projects window > Assets > Scenes)
  2. Click on any Christmas Item Model in the Hierarchy window (eg. Christmas_Tree)
  3. From the Inspector window, look for 'AR Geospatial Creator Anchor' and change the values for latitude, longitude, altitude to your desired location
    • To learn more about Geospatial Creator API, click here

Changing the cues ⚑️

Find and edit the ShowCue script to show proper cues according to the Christmas Item placement

Find this project useful? ❀️

Support it by joining stargazers for this repository.⭐

How to Contribute? 🀝

Whether you're helping us fix bugs, improve the docs, or a feature request, we'd love to have you! πŸ’ͺ Check out our Contributing Guide for ideas on contributing.

Bugs and Feedback 🐞

For bugs, feature requests and discussion use GitHub Issues.

Awesome Mobile Libraries πŸ“±

Credits 🧩

License πŸ”‘

MIT License

Copyright (c) 2023 Simform Solutions

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

ss-artreasurehunt's People

Contributors

ankit-verma-simform avatar yashwantgowla-simform avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

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.