AR Documentation
DEVELOPMENT TOOLS
Software and Hardware used in the project
Software
Unity 2019.2.20f1
Xcode 11.4 (11E146)
Packages
AR Foundation 2.0.2
ARKit XR plugin 2.0.2
AR Subsystems 2.0.2
Unity Standard Assets
Hardware
iPhone XR iOS 13.3.1
XRCHAEOLOGY FRAMEWORK
C# scripts and assets for Unity made for this project
Scripts
CameraController
Script to handle Camera movement and view change
Public Class Members:
Transform[] views :
float transitionSpeed;
Button changeViews :
Public Class Methods:
void start()
build the circular array to loop through the view
void TaskOnClick()
change the transform.position with current view's position
change the transform.eulerAngles with current view's Angles
transitionSpeed determines how fast we can move to targeted position
Dropdown Menu
control the drop down buttons which can be used to switch to different scenes
FirstPerson controller
control the movement of the FPS object
enable the character to jump and move
use joystick class to control the movement
use touch field class to enable touch screen to control the view
JoyStickMovement
Script to use JoyStick to control the movement
MainMenu
Script to control different buttons on the main menu
play game button: load the selected scenes
options button: change different scenes
use SceneLoader.Instance.LoadScene() to load different scenes
MovementController
Script to control the camera movement
attached this script to the camera game object
use the joystick to control camera movement
Options Menu
switch to different scenes when touch different scene options
PlacementAudioCanvasController
This script control the canvas to play the audio
Touch the game object and then pop up with a canvas
For pop up canvas we can choose different language to play the audio
PlaneController
Enable and Disable the plane detection
PortalControl
Set the shader to visible when the camera enter the the portal
contains an array of material that achieves trigger portal effect when camera enter the portal
PortalPlacer
control the position of the portal
always make the portal face in front of user even user are in different rotation and position
SceneLoader
Script to loading the scene loading page
present target scene after the loading scene
soundController
Script to play the audio when the audio play button is touched
Prefabs and Assets
Materials
PortalDoor - material that consists of the portal door
PortalRoom - all the model inside portal consists of this material
Menu Items
main menu
option menu
object canvas
Prefabs
diablo
M71
portal door
Site Assets
Materials - Folder for the materials used
diablo
m71
spidermonkeybowl
Meshes - Scanned meshes of the excavations
diablo
m71
spidermonkey bowl
Diablo Site - Prefab of the El Diablo excavation (player spawn included)
M7_1 Site - Prefab of the M7-1 excavation (player spawn included)
Spidermonkey Bowl - Prefab of the spider monkey bowl
Shader
portal door
portal room