README.md 2.31 KB
Newer Older
1
Purpose of this code:
2

3 4 5 6 7
	The NOMADVR application can be used to visualize in virtual reality
	different materials science datasets provided by NOMAD or final users.
	Multiple platforms are supported by this code.
	
Context:
8

9 10 11 12
	NOMADVR is provided in the context of the NOMAD Center of Excellence.
	Datasets from the Encyclopedia and Archive are supported by NOMADVR.

Requirements:
13

14
	-Supported virtual reality hardware: HTC Vive or Oculus Rift, GearVR,
15 16
		Google Cardboard for Android or IOS, or the LRZ CAVE 
		environment.
17 18

Usage Instructions:
19

20 21
	See https://www.nomad-coe.eu/the-project/graphics/VR-prototype
		
22
Subdirectories:
23

24 25
	OpenVR: Demos for HTC Vive.
	OculusMobile: Demos for GearVR.
26
	GoogleCardboardAndroid: Demos for Google Cardboard (android)
27
	GoogleCardboardIOS: Demo for Google Cardboard (IOS)
28
		See readme.md in this folder for instructions
29 30
	GoogleCardboard: Common files between Google Cardboard for Android
		and for IOS
31
	CAVE: Demos for LRZ CAVE-like environment (linux)
32 33 34

	NOMADGearVRChooser: Android app to select the dataset for GearVR, which
		calls the OculusMobile app as a subroutine.
35
	
36
	NOMADVRLib: Shared code between HTC Vive, GearVR and Google Cardboard demos related to NOMAD.
37
	libs: Other (external) supporting libs shared by HTC Vive, GearVR, Cardboard and CAVE demos
38 39 40 41
		happyhttp (Zlib license)
		LodePNG (Zlib license)
		rapidjson (MIT license)
		rply (BSD 3-clause license)
42
	
43 44
	webserver: 
		htdocs: Web pages containing the VR software and documentation.
45 46 47 48 49
		cgi-bin: cgi scripts to create suitable config files from a material 
			(material id from NOMAD Encyclopedia or NOMAD schema from Archive).
		See Readme.md in this folder for details

	containerization:
50
		Docker container running the VR webservices
51 52
		See Readme.md in this folder for details

53

54 55 56 57
	RemoteVisualization: NOMAD2xyz app 
		Transforms a json from encyclopedia or archive into an XYZ file	
		Useful for the remote visualization infrastructure
	
58 59 60 61 62 63 64
	proxy: Back-end support for multiuser support in OpenVR NOMAD VR. 
		NOMADVRproxy listens to connections and forwards user actions to rest of
			users.
			
		MD-Driver/SimpleMove and MD-Driver/PeriodicTable: see MD-Driver/Readme
			Support for atom drag-and-drop functionality in OpenVR NOMAD VR.
	
65

66 67
More platforms will be added in the future.

68 69
The code is distributed under the Apache 2.0 License (See LICENSE file).