Git Product home page Git Product logo

wbvr's Introduction

Westbroek VR

This project is a VR simulation of a parachute flight above the dropzone 'Westbroek' of PCMN (Paracentrum Midden Nederland) in the Netherlands.

Technologies / libraries

  • Aframe: the VR library
  • AngularJS: for some client-side controls (1.5)
  • NodeJS: for the server (using Express)
  • Socket.io: using websockets for tranfering stering input and canopy position

Javascript all the way

Start and run

clone the repo

git clone https://github.com/digitalica/wbvr.git
cd wbvr

Install dependencies

npm install

Start the server

node server.js

Now browse to the app at http://localhost:3000.

Coordinates

For now we use the more or less default Aframe coordinate system:

  • x: positive to the east (right)
  • y: positive up
  • z: positive to viewer (south)

It may make sense to change this to be z up, but then the 'depth', 'width' and 'height' properties of the Aframe objects wont work any more.

Directory Layout

app/                    --> all of the source files for the application
  app.css               --> default stylesheet (nothing much so far...)
  components/           --> all app specific modules (so far, just the default ones from the angular template)
    version/              --> version related components
      version.js                 --> version module declaration and basic "version" value service
      version_test.js            --> "version" value service tests
      version-directive.js       --> custom directive that returns the current app version
      version-directive_test.js  --> version directive tests
      interpolate-filter.js      --> custom interpolation filter
      interpolate-filter_test.js --> interpolate filter tests
  viewMain              --> main view, select your role (fly or watch)
    viewMain.html           --> the partial template
    viewMain.js             --> the controller logic
  viewFly               --> fly view, full 3d / vr screen to fly
    viewFly.html            --> the partial template
    viewFly.js              --> the controller logic
  viewWatch             --> watch view, to see connected flyer(s) and control them
    viewWatch.html          --> the partial template
    viewWatch.js            --> the controller logic
  app.js                --> main application module
  index.html            --> app layout file (the main html template file of the app)
  index-async.html      --> just like index.html, but loads js files asynchronously

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.