Giter VIP home page Giter VIP logo

vr_lab's Introduction

2. Implementation

Imagine that you have been tasked with re-furnishing the VR lab in room B210.

Place the user in the center of the empty space (5 points). The room should be empty when the application starts.

2.1 Must-have functions

  • Spawning: Allow the users to spawn two different items of your choices (5 points), and provide a way for the user to modify the placement and orientation (10 points). Once spawned, the objects should have physics properties attached to them and react to gravity and collisions (5 points).

  • Selection and manipulation: Allow the users to select already placed items in the space and highlight the corresponding selections (10 point). We expect two different interaction schemes for selection (5 points for the second selection method). Allow manipulation of the highlighted objects. After an item is selected, design a way to allow the users to move, rotate and scale the item (10 points). Only the trigger button and the grip button are allowed to be used.

  • Travel: The user should be able to move around the space allowing free movement from one side to the other and control over orientation (5 points movement, 5 points orientation)

  • Indicator: It is not necessary to use a ray, but you should include an indicator/pointer for each corresponding selection and travel method (5 points for selections, 5 points for travel).

2.2 Extra credit

  • Improve the spawning method: Design a way to allow the user to spawn large variety of different items in the space. It can be a menu, gesture or anything else (5 points)

  • Group selection and manipulation: Design a way for the user to select more than one items in the scene and manipulate them all at once. We expect to see translation, orientation, scaling and duplication for the manipulation (5 points).

vr_lab's People

Contributors

randaldong avatar

Watchers

 avatar

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.