Clirio Scan Views
A collection of features in the Clirio View apps for loading and viewing photogrammetry scans. Includes on-map, XR, comparison, and other views.
Type
Unity App Features
Year
2021
Skills Applied
- Front-End
- UX / UI
- Game Development
- Extended Reality (XR)
- Mobile Development
- Unity
- C#
- .NET
- UWP
- Android
- Azure
- SQLite
- CI/CD
- Prototyping
Company
ClirioOverview
One of the key features of the Clirio product suite is the capability to capture photogrammetry scans with LiDAR-enabled iOS devices, and then manage and view those scans. Captured scans can be viewed on-map, they can be always-on as an integral part of the map, or they can be viewed in scan view mode which comes with measure, comparison, and XR capabilities depending on the platform. In XR view, the scan can be scaled to 1m³ or 1:1 scale, or freely manipulated with hand manipulation. On iOS and Desktop, the view is controlled by touch or mouse inputs. Comparison views feature side-by-side, swipe, and overlay modes. Besides scans captured with Clirio Scan, other 3D models are also supported and can be uploaded on Clirio Cloud.
Development
The scan views have been continuously worked on from 2021 to 2023. In that timeframe, I was responsible for setting up most of the logic and views involved. My workflow involved designing UX and UI, and then quickly prototyping and refining until each feature was ready for release. My teammates Tonio Stillman, Timothy Thibault, Jordan Wischmann, and Erdem Gunay also made contributions. Some functionality was also carried over from the Ada Viewer app, upon which the Clirio View app was based.
The initial set of requirements was the loading and viewing of scans in a scan view mode (no map), which would be supported in AR on the HoloLens 2, and in 3D non-AR on iOS. Once these core functionalities had been implemented, one of the most important additions was the comparison and measure modes. An important workflow supported by the Clirio View apps is the analysis and monitoring of construction sites, for which scan comparisons help detect differences, and scan measurements help understand scale.
Later, other features were added, such as viewing scans on-map, more viewing tools such as freehand manipulation in XR, and more comparison modes such as the overlay mode which fades the transparencies on XR, and the swipe comparison view on iOS which crops the viewports.
Challenges
One of the biggest challenges has been the complexity originating from different UX flows, platforms, features, and states which have been expanded slowly over time. Particularly in the final MRTK2 versions of the Clirio View apps, complexity had ballooned, as MRTK2 had poor cross-platform support, which resulted in different prefabs, UI, and logic for iOS and HMDs.
Another layer of complexity was the different file formats, features, and sources for 3D models. Especially the various material properties, texture reference formats, coordinate and unit systems were tricky to develop and test for.
Solutions for these complexity challenges typically involved unifying behaviors, once similarities had been identified, and there was time to refactor. For instance, saving the initial state and reset behavior was unified across platforms and modes, and the logic for switching in and out of AR in scan view was combined with the logic for doing the same in map view. Furthermore, with the migration to MRTK3, view logic and prefabs were combined, which greatly reduced complexity.