Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Currently available VPS Maps
Gross Area: Approx. 79,659 m²
Landmarks
Latitude
Longitude
MAXST Office (1)
37.48513
127.03492
Yangjae Station Crossroad (2)
37.48450
127.03408
Map boarders (3)
37.48756
127.03168
Map boarders (4)
37.48798
127.03300
Map boarders (5)
37.48509
127.03555
Map boarders (6)
37.48369
127.03500
Map boarders (7)
37.48441
127.03214
Included SDK Version
0.8.0
Requirements
Unity 2020 or later
Supported Devices
iPhones (supporting ARKit), Android Phones (supporting ARCore)
Samples
Placement by Raycasting, AR Navigation
Included SDK Version
0.8.0
Requirements
Unity 2020 or later,
Supported Devices
Nreal Glasses
Samples
Placement by Raycasting, AR Navigation
Description of AR Navigation using MAXSTVPS
The code to determine the point of departure and arrival to find the navigation path is as follows. If you wish to get a navigation path from the point of user's location, set arCamera.tranform.position as a point of departure. This will only be successful if the localization is practiced correctly.
NavigationController is collected from VPSStudio GameObject. Through MakePath() from Instance of NavigationController, you will receive the path from the point of departure to the point of arrival.
API Reference Link
Click to check API Reference
Setup Guide of MAXSTVPS SDK
Requirements
In order to use MAXSTVPS SDK for Unity, you need basic knowledge of Unity developer tools and developer resources.
Download MAXSTVPS SDK
Create or Open Unity Project
Newly created project, must download MAXSTVPSSDK_0.8.0.unitypackage and install on Unity
Download VPSData and install VPSMap in accordance to location
Description of File/Build Settings/Player Settings for Unity
Android must only select OpenGLES3 in Graphic APIs on Other Settings
Android must uncheck Multithreaded Rendering
Android must have Custom Main Manifest & Custom Main Gradle Template installed on Publishing Settings
Refer to the following Github links for Manifest and Gradle
Github Link
iOS must include descriptions for Camera Usage Description and Location Usage Description
MAXSTVPS SDK requires Editor Coroutines Package in Unity
If the following message pops up, go to Unity > Window > PackageManager > Search Editor Coroutines and download the package
VPS Map includes mesh, reference images and simulation data of the location. As suggested below, VPSData folder needs to be created at same hierarchy as Unity Project folder (MAXSTVPSUnity), and VPSMap folder needs to be saved under VPSData.
Once you unzip VPSData_yangjae_indoor.zip by MAXST, it automatically opens under VPSData folder as VPSMap and VPSSimulationData. yangjae_indoor folder will be generated automatically under these two folders.
You must follow VPSMap Folder Structure in order to successfully activate VPS Map
MAXSTVPS SDK recommends or higher
To find out more about developer tools for Unity, click for more information.
Easily place rendered 3D Object in UnitySceneView and precisely arrange its positioning via simulation using reference camera
Load VPS Map on VPSStudio GameObject via VPSStudioController
Once VPS Map is loaded, it is presented in UnitySceneView as depicted below.
Placing content on Map is based on the location of the mesh. Place contents around mesh and confirm through ReferenceCamera
Change the location of the content upon selecting ReferenceCamera, and the user will be able to accurately pinpoint its position.
Upon completion of content generation, you will be able to confirm through VPS Simulation Data on VPSStudio. The Simulation Data of the particular regions will be available on OSX or Windows.
The features of occlusion (Hidden features of building meshes) is specified on the page below
Unity Scene components for Nreal Glasses are as follows. Detailed information regarding Unity Scene components can be found in the link below. ARCamera from the former Unity Scene is replaced with NRCameraRig.
ARCamera from SceneManager is replaced with NRCameraRig Object
Play() of Instance from NRCollect YUV starts Nreal Camera.
VPSTracker Start can be found in the page below.
This is a code for ARFrame Instance from Unity Update(). This is a code to obtain the posture of 6Degrees of Freedom on VPS Map at the time of update and reflect it on the virtual camera for rendering.
In order to support Nreal Glasses, Nreal Unity SDK is required. click to download the SDK. Download Nreal Unity SDK and click Assets/import Package to add onto your project.
In order to support Nreal Glasses, MAXSTVPS Unity SDK for Nreal Glasses is required. Click to download the SDK. Click Assets/import Package to add the SDK onto your project.
Description of Scene Manager
The following is code for required components of SceneManager
Required Components
ARManager
ARCamera
VPSStudioController
CameraBackgroundBahavior
RootTrackable
When rendered 3D Objects are visibly hidden from the building mesh is called Occlusion Culling. Occlusion is applied when runtimeBuildingMaterial is rendered.
스마트폰과 스마트 글래스와 같은 모바일 기기 환경에서는 아래 코드를 통해 하드웨어 카메라가 시작됩니다. MAC OS X와 Windows 환경에서는 VPSStudioController를 통해 선택한 시뮬레이션 데이터가 시작됩니다. 이를 통해 현장에 직접 나가지 않아도 앱 개발이 가능합니다.
VPS Tracker를 시작하기 위해서는 해당 VPS 공간지도에 접근할 수 있도록 서버 이름을 입력해야 합니다.
트래킹 결과는 UpdateFrame()과 GetARFrame()을 통해서 얻을 수 있습니다. GetARFrame()을 통해 얻은 ARFrame의 인스턴스에는 현재 트래킹 상태, 이미지, 6자유도 자세를 포함되어 있습니다.
ARFrame의 GetARLocationRecognitionState()를 통해서 현재 위치 인식 상태를 얻을 수 있습니다. 이 상태 정보에 맞춰 증강시킬 3D Object의 활성화 여부를 결정합니다.
Detailed Information on Unity Scene components of MAXST VPS
The Unity Scene Hierarchy for MAXSTVPS is as follows.
ARCamera GameObject : Process tracking camera images and positioning
VPSStudio GameObject : Manage VPS Map data
RootTrackable GameObject : Root Object of rendered 3D objects on VPS Map
(Rendering 3D Objects must be placed under Root Objects)
SceneManager GameObject : Control MAXSTVPS actions
CameraBackground display images extracted from hardware camera
VPSStudio manages VPS Map data
VPSStudio Controller menu is as follows:
Using VPS Map combo box, check the VPS Map list under VPSData Folder and select the desired location
Using VPS Map combo box, check the simulation data list under VPSData/VPSSimulationData/your_vps_map and select the desired simulation data
The mesh information & reference camera of the selected location will be loaded when you press Load VPS Map button
The mesh information and reference camera will be deleted when you press clear button
Navigation Controller will offer navigation function within the selected location
Position Distance indicates the interval between rendering arrow objects in alignment to navigation path. The unit is in meters.
Arrow prefab is 3D arrow objects in the navigation path.
Root Trackable is Root GameObject to render 3D Object on the navigation path based on tracking position
SceneManager manages VPS controls
Disable Objects are GameObjects that needs to be disabled from the perspective of Unity Play. (VPSStudio Game Object includes camera eye, thus needs to be disabled).
Root Trackable is GameObject that includes all tracking contents
Occlusion Objects are Mesh that needs to add occlusion from the perspective of Unity Play. If there are additional mesh that needs occlusion culling, you can simply add the following element.