Skip to content
Snippets Groups Projects
user avatar
García-Hernández authored
Add fullvalues option: ply filenames are listed explicitly, and do not
use the <timestep>-<iso> nomenclature.
Add cutplanes option with two parameters: nearcut, farcut.
Add CuttingPlane value to menubutton. If enabled, the button will
provide a cutting plane which moves smoothly between neacut and farcut
and back.
Support http(s) based config files.
Use two-faced normals in iso shader.
Send 'A' for selected atom in multiuser mode.
Add optional chain affiliations to atoms (chainfile option).
235c7353
History

Purpose of this code:

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:

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

Requirements:

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

Usage Instructions:

See https://www.nomad-coe.eu/the-project/graphics/VR-prototype

Subdirectories:

OpenVR: Demos for HTC Vive.
OculusMobile: Demos for GearVR.
GoogleCardboardAndroid: Demos for Google Cardboard (android)
GoogleCardboardIOS: Demo for Google Cardboard (IOS)
	See readme.md in this folder for instructions
GoogleCardboard: Common files between Google Cardboard for Android
	and for IOS
CAVE: Demos for LRZ CAVE-like environment (linux)

NOMADGearVRChooser: Android app to select the dataset for GearVR, which
	calls the OculusMobile app as a subroutine.

NOMADVRLib: Shared code between HTC Vive, GearVR and Google Cardboard demos related to NOMAD.
libs: Other (external) supporting libs shared by HTC Vive, GearVR, Cardboard and CAVE demos
	happyhttp (Zlib license)
	LodePNG (Zlib license)
	rapidjson (MIT license)
	rply (BSD 3-clause license)

webserver: 
	htdocs: Web pages containing the VR software and documentation.
	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:
	Docker container running the VR webservices
	See Readme.md in this folder for details


RemoteVisualization: NOMAD2xyz app 
	Transforms a json from encyclopedia or archive into an XYZ file	
	Useful for the remote visualization infrastructure

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.

More platforms will be added in the future.

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