Feature
Diagram of the linkage between arcAstroVR (Unity program) and Stellarium※Linkage diagram taken from Serious Gaming for Virtual Archaeoastronomy (https://doi.org/10.14434/sdh.v4i1.31041)
ArcAstroVR works in conjunction with the planetarium app Stellarium. Therefore, both apps need to run at the same time. arcAstroVR is in charge of spatial display of lands and buildings, movement, and overall control, and Stellarium is in charge of calculation and display of celestial bodies.
Regarding the cooperation between arcAstroVR and Stellarium, the following communication plug-in for Stellarium*1 , output script*2 , and cooperation asset for Unity*3 created by Georg Zotti et al. Are used. In addition, arcAstroVR is created using the VR engine Unity.
※1:Stellarium:Remote Control (Plugin) ・Authors: Florian Schaukowitsch, Georg Zotti ・License: GNU GPLv2 or later This plugin was created in the 2015 campaign of the ESA Summer of Code in Space programme.
※2:Stellarium:Skybox Tiles (Script) ・Author: Georg Zotti ・License: Public Domain
※3:Unity:Stellarim - Unity ・Author: Georg Zotti, John Fillwalk, David Rodriguez, Neil Zehr ・License: GNU General Public License v3.0 This is a collaboration between Georg Zotti (LBI ArchPro Vienna) and John Fillwalk, David Rodriguez and Neil Zehr (IDIA Lab, Ball State University) suggested by Bernard Frischer (Indiana University).
The cooperation between arcAstroVR and Stellarium is as follows.
Send a request from arcAstroVR to Stellarium's RemortControl plugin.
Stellarium Skybox script outputs 6 tiles global image.
Stellarium notifies arcAstroVR of updates through the Remort Control plugin.
6 Unity automatically detects the global image output of 6 tiles, loads the global image into Unity, and reflects it on the celestial sphere to synthesize the image.
Terrain accuracy
The earth is a spherical 3D shape, but most of the elevation data published by the Geospatial Information Authority of Japan (GSI), JAXA, NASA, and other public organizations are 2D transformed for easy human handling. To accurately build these terrain data in VR space, various terrain corrections must be made.
-Ortho and sphere correction
Fig.1_1:Conversion from equirectangular to orthographic
Fig.1_2:Spherical correction according to latitude and optical correction by equivalent earth radius
In the Mercator and equirectangular coordinate maps often used for maps, where latitude and longitude intersect at right angles, the higher the latitude of the area, such as the South and North Poles, the more the scale in the direction of longitude is stretched. In order to correct the distortion of the terrain, arcAstroVR converts the terrain data into the orthographic azimuth method*4 , and in addition, performs spherical correction*5 to make it conform to the roundness of the earth.
*4: Orthographic azimuth This is a method of projection from the sky at infinity above the observation point, and is characterized by the hemispheric display with no distortion of azimuth. Satellite imagery corresponds to this method in an approximate sense. Although the satellite is located near the Earth's surface, a satellite photograph taken when the satellite is moved to infinity becomes an orthographic azimuthal projection.
*5: Spherical correction The earth is not a sphere, but an ellipsoid extending in the equatorial direction. This is called the Earth's ellipsoid, and arcAstroVR uses the GRS80 ellipsoid model to perform spherical correction according to the curvature at the latitude and longitude of the observation point.
-Optical correction
On the Earth, the lensing effect of the atmosphere makes the view appear more distant than it actually is. The lensing effect corresponds to the roundness of an ellipsoid whose radius is 1.156 times the radius of the earth, which is called the equivalent earth radius. arcAstroVR reproduces the atmospheric lensing effect by correcting the terrain using the equivalent earth radius.
-Geoid correction
Fig.1_3 : Relationship between geoid height, elevation and ellipsoid height
The earth has a gravitational bias, and the elevation origin *6 is affected by gravity and deviates from the GRS80 ellipsoid by +85m to -105m. The difference between the earth ellipsoid and the elevation origin is called the geoid height. The terrain creation plug-in for arcAstroVR, "terrain4arcAstroVR," can perform terrain correction by adding geoid height data to generally available elevation data.
*6: Elevation origin The elevation origin (elevation 0 m) is defined as corresponding to the mean sea level of the earth and is called the geoid plane.
"terrain4arcAstroVR" terrain creation plug-in for QGIS
The above corrected terrain data can be created using the free GIS software "QGIS " and the QGIS plug-in "terrain4arcAstroVR " for terrain creation. Various map information that can be imported into QGIS can be easily output as terrain data for arcAstroVR by inputting latitude and longitude information.
Coordinate system
There are various types of coordinates that indicate the position of observation points and structures, etc. arcAstroVR can handle three types of coordinate systems.
-WGS84
It is one type of geographic coordinate system expressed in terms of latitude, longitude, and other angular information. There are several types of geographic coordinate systems, depending on the location of the origin and the model of the earth's ellipsoid. arcAstroVR allows you to specify latitude and longitude in the WGS84 coordinate system, which is used in GPS devices.
-UTM
Because the geographic coordinate system is angular information of a sphere, it is difficult to handle as a local coordinate display on the earth*7 . The UTM coordinate system is a type of plane rectangular coordinate system that divides the equator (latitude 0°) into 60 zones with a reference point at every 6 degrees of longitude.
*7: Difficult point to handle When measuring the distance between two points in a geographic coordinate system, for example, it is necessary to measure along the curved ground surface of an ellipsoid, rather than connecting the two points with a straight line.
-Plane rectangular coordinate system (19 system)
The coordinate system with 19 reference points as Japan's original abscissa-axis regular cylindrical drawing method is called the plane rectangular coordinate system. It is also called the 19-system. The location of the reference point for each system is defined by Notification No. 9 of the Ministry of Land, Infrastructure, Transport and Tourism in 2002, and can be confirmed on the linked page. (https://www.gsi.go.jp/LAW/heimencho.html )
Switching coordinate systems
Fig.2_1:Coordinate System Switching Dialog
The type of coordinate display can always be switched among the above three types.
Also, when specifying coordinates in a configuration file, one of the above three types can be selected and set.※8
*8: Selecting the Plane Rectangular Coordinate System (System 19) In the coordinate system switching dialog, the Plane Rectangular Coordinate System (System 19) is described as "Japan PRCS".
VR space reproduction
arcAstroVR can handle two types of terrain and multiple 3D objects. The extent and accuracy of each are as follows
Fig.3_1:Overlay of two types of terrain and 3D objects
Fig.3_2:Wide-area terrain with 9 tiles of 100 km size arranged side by side
Fig.3_3:Terrain in VR space. 16-bit representation of heights from -1000m to 9000m from the observation site (center point).
-Wide-area terrain
It has a terrain coverage of 300 km per side (150 km radius) and a resolution of 24.4 m mesh. For this terrain, we assume the use of free 30m mesh global undulation data published by NASA, JAXA, and other organizations.
The horizon drop 150 km ahead due to the roundness of the earth will be approximately 1.75 km. This means that the summit of a 1.75 km mountain 150 km away is visible on the horizon (horizon). Since the horizon itself is difficult to see due to the influence of mountains, topographic relief, trees, etc., we treat a 150 km radius as sufficient for the extent of the wide-area topography.
Note that due to the specifications of Unity, the 3D engine of arcAstroVR, terrain data is limited to 16-bit image files with a maximum size of 4096 x 4096 px. By using a mesh resolution of 24.4m per px, the terrain data can have a length of 100km (4096 x 22.4m per side). The wide-area topography is represented by arranging nine tiles of this 100-km terrain data side by side. In addition, elevation data can be 16bit (integer value from 0 to 65,536), and in the VR space, the range of -1000m to 9000m is represented in 16bit, which gives a vertical resolution of 10000m ÷ 65536 = 15.26cm.
-Narrow-area terrain
It is a one-tile terrain with a mesh resolution of 0.1 to 10 meters. We assume the use of high-resolution shading and undulation data available for a fee or from our own LiDAR measurements.
Based on the aforementioned Unity specifications, the terrain data is a 16-bit image file of 4096 x 4096 px, so it will cover an area of 410 x 410 m when a mesh resolution of 0.1 m is specified and 40960 x 40960 m when a mesh resolution of 10 m is specified. The detailed terrain is placed in the center of the wide-area terrain.
-3D Object
Three-dimensional structures such as ruins and remains are handled. Since it is not mesh image data, it can handle multiple objects of any shape and size. The 3D objects can be in obj, fbx, and dae formats, which are commonly used 3D formats.
Move operation of the observer
Observer movement is done with the keyboard and mouse, or with a game controller.
Keyboard & Mouse
Basically, drag the left mouse key to set the direction of travel, and press the "W" and "S" keys to move forward and backward.
Look : Left mouse button drag (Viewpoint shifts)
Viewpoint switching : tab Key (Switch between 1st and 3rd person view)
Move : W Key (Forward to viewpoint direction)
S Key (Backward from viewpoint direction)
A Key (Left shift)
D Key (Right shift)
Sprint : Shift Key (Press and hold to move at high speed)
Flight : F Key (Switches to flight mode and can fly in the direction of the viewpoint. Press again to return to walking mode.)
Jump / Vertical Lift : Space Key (Jumps when in walking mode and lifts vertically when in flight mode)
Zoom In / Out : Ctrl Key + Mouse Wheel (change viewing angle)
Fig.4_1 : Keyboard & mouse operation
Gamepad
Fig.4_2 : Operation with Gamepad
VR controller
Fig.4_3 : Operation with VR controller
Simulation Operation
The simulation of the sky is operated by the linked planetarium software "Stellarium", but can also be operated from within arcAstroVR.
Date and time setting
Fig.5_1 : Date & Time Panel
In the date and time panel,
Input Time Zone
Enter the date (press and hold the increase/decrease key to increase/decrease at high speed)
Enter the time (you can also enter it with the slide bar)
and press the update button to update the sky image of arcAstroVR.
On both sides of the slide bar, there are forward/back keys for 1 hour or 10 minutes. The forward/back keys automatically update the sky image, so there is no need to press the update key.
Display Operation
You can switch the display with the menu key or the keyboard.
Constellation Lines : Icon Click or C Key
Constellation Labels : Icon Click or V Key
Constellation Art : Icon Click or R Key
Equatorial Grid : Icon Click or E Key
Azimuthal Grid : Icon Click or Z Key
Cardinal Points : Icon Click or Q Key
Atmosphere : Icon Click or T Key
ArchaeoLines : Icon Click or U Key
Planet Labels : Icon Click or P Key
Fig.5_2 : Display switching icon
Data display/editing
Various data displays are shown in the screen. From the information window, each data can be shown or hidden, and the setting values can be changed.
Fig.6_1 : Information window
Avatar
Fig.6_2 : Standard Avatar
The character indicates the observer, and the coordinates at which he/she is standing are displayed in the top bar at the top of the screen. The top bar also displays the display coordinate system settings and the azimuth and altitude information of the cursor position.
By default, a black human is displayed, but it is possible to load Unity Human model data and display an arbitrary avatar.
Markers
Fig.6_3 : Marker
Arbitrary markers can be placed in the VR space. The information window shows the location of the marker and the azimuth, altitude, and distance of the marker from the observer's perspective. The Add button allows you to add a marker at the position where the observer is standing, the Checkbox allows you to show/hide the marker, and the Edit button allows you to change the settings.
Auxiliary lines
Fig.6_4 : Auxiliary line
In the VR space, auxiliary lines can be drawn starting from the markers. Auxiliary lines can be drawn between two markers or in any direction starting from a marker. Click the Add button in the information window to add an auxiliary line, or use the checkboxes to control whether the auxiliary line is shown or hidden, or the Edit button to change the settings.
Objects
3D models of archaeological sites and remains. The information window displays information such as the model origin position, rotation angle, size, and the era in which the model exists, as well as display/hide controls for the 3D model from the checkboxes, and the Edit button allows you to change settings.
Compass Map
You can display a compass map centered on the marker that is the starting point of the auxiliary line. It is displayed by pressing the Map button on the Auxiliary Line in the Info Window. The map is always displayed with north directly above, and the display area can be changed by Zoom In / Zoom Out (Ctrl+mouse wheel on mouse / keyboard).
Fig.6_5:Compass Map
Information copy function
Pressing CopyInfo in the lower left corner of the information window will copy the information displayed in the information window and paste it directly into a spreadsheet.
Fig.6_6:Paste information into spreadsheets
Environment settings
The "Setting" button on the top bar allows you to change various preferences related to the display.
Fig.7_1:Settings Dialog
Language
You can select the language of the information to be displayed from English, Japanese, or Spanish.
Display coordinate system
You can select the coordinate system for the information to be displayed from WGS84 / UTM / Japan PRCS; if you select UTM or Japan PRCS, you must also specify the zone number.
Ambient light
Light sources in the VR space are limited to three types: the sun, the moon, and Venus. Therefore, at midnight, when the moon is not visible, the ground is completely dark and cannot be seen. However, there are times when it is desirable to verify the view while viewing the landscape on the ground, so the brightness (ambient light) on the ground can be changed arbitrarily.
Fig.7_2:Difference in visibility between minimum ambient light (left) and maximum ambient light (right)
Output
Three types of output can be selected. - Standard PC output - HMD (Head Mount Display) output - Dome master output