{"id":15146714,"url":"https://github.com/irobot1/ng3-vr-examples","last_synced_at":"2025-11-13T22:37:28.524Z","repository":{"id":41153795,"uuid":"497350142","full_name":"IRobot1/ng3-vr-examples","owner":"IRobot1","description":"VR examples using @angular-three","archived":false,"fork":false,"pushed_at":"2023-02-15T14:16:54.000Z","size":15193,"stargazers_count":16,"open_issues_count":0,"forks_count":4,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-30T22:17:11.364Z","etag":null,"topics":["3d","angular","angular-three","augmented-reality","cannon-es","dagre","directed-graph","lil-gui","ngraph","svg","svg-icons","threejs","typescript","virtual-reality","vr","webgl","webxr"],"latest_commit_sha":null,"homepage":"https://ng3vr.z9.web.core.windows.net/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/IRobot1.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-05-28T15:03:28.000Z","updated_at":"2025-01-02T07:35:47.000Z","dependencies_parsed_at":"2024-10-28T21:46:07.327Z","dependency_job_id":null,"html_url":"https://github.com/IRobot1/ng3-vr-examples","commit_stats":{"total_commits":525,"total_committers":1,"mean_commits":525.0,"dds":0.0,"last_synced_commit":"d8bb19ce8e53fd8113f30c5eb72a0d97d9c32d9d"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/IRobot1%2Fng3-vr-examples","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/IRobot1%2Fng3-vr-examples/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/IRobot1%2Fng3-vr-examples/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/IRobot1%2Fng3-vr-examples/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/IRobot1","download_url":"https://codeload.github.com/IRobot1/ng3-vr-examples/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":237901410,"owners_count":19384384,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["3d","angular","angular-three","augmented-reality","cannon-es","dagre","directed-graph","lil-gui","ngraph","svg","svg-icons","threejs","typescript","virtual-reality","vr","webgl","webxr"],"created_at":"2024-09-26T12:04:04.634Z","updated_at":"2025-10-24T01:30:59.059Z","avatar_url":"https://github.com/IRobot1.png","language":"TypeScript","readme":"VR Examples for @angular-three\n\n[DEMO here](https://ng3vr.z9.web.core.windows.net/)\n\n![image](https://user-images.githubusercontent.com/25032599/182047284-40ef9a33-db46-4591-90f0-3455f0b22fba.png)\n\nEnter VR to experience each demo in person or touch/mouse a panel to preview an example or move/pan around.\n\nPoint the controller at a panel to activate.  Pull the `Trigger` on the controller to open/experience the example.\n\nClick the `Grab` button to return to the home screen\n\n### Examples\n\n#### Ball Shooter\nPull the trigger to shoot balls\n\n#### Dragging\nPoint at a shape. When highlighted, pull the trigger to move the shape.  Release the trigger to stop moving.\n\n#### Hand Input\nThe example requires Oculus Quest or equivalent and is still under development\n\n#### Teleport\nPull the trigger at a location on the floor.  Release the trigger to teleport there.\n\n#### Physics Ball\nHit balls with a baseball bat.  Score a point when you hit one in the yellow box.\n\n#### Grab / Inspect\nWhen controller overlaps a cube, pull the trigger to pickup.  Release trigger to drop.  Throwing also works.\n\n#### Drumstick / Keyboard\nUse the drumstick to tap keys on the virtual keyboard to enter a message.  Press Enter to clear the message.\n\n#### Touchpad Movement\nUse the touchpad to move forward and sideways.\n\n#### Joystick Movement\nUse the joystick to move forward and sideways.\n\n#### Toggle Controller Behavior\nPoint controller at a button to enable/disable that capability on the controller.  Capabilites include dragging shapes, teleporting, highlighting and showing the track pointer and controller model\n\n#### Lights, Camera, Action\nWall textures show what camera 1 and 2 can see.  Grab and move the cameras.  Grab and move spot lights.\n\n#### Paint\nPull trigger and move controller to start painting.  Use the joystick to increase/decrease the size of the paint brush.\n\n#### HTML Mesh GUI\nShows lil-GUI being used in VR.  Point at sliders to change shape parameters\n\n#### World Scale\nPull triggers on both controllers.  Moving controllers closer makes the model smaller.  Moving apart ameks the model larger.\n\n## Code Highlights\nAdd webvr to ngt-canvas to enable WebVR support\n```html\n\u003cngt-canvas webvr (created)=\"created($event)\" [camera]=\"{ fov: 55, position: [0, 2, 4]}\"\u003e\n```\nAdd vr-controller to add left and/or right controllers into a scene.  Index 0 is left controller, Index 1 is right controller.\n```html\n\u003cvr-controller showcontroller trackedpointer [index]=\"1\"\u003e\u003c/vr-controller\u003e\n```\nAdd directives to vr-controller to add behaviors depending on needs\n* showcontroller - shows controller\n* trackedpointer - shows ray to point at stuff\n* teleport - teleport to new location on floor.  Requires `[floor]` and `[room]`\n```html\n\u003cvr-controller teleport showcontroller trackedpointer navhome \n               [marker]=\"left.instance.value\" [floor]=\"floor.instance.value\"\u003e\n\u003c/vr-controller\u003e\n```\n\nAll behaviors can be enabled/disabled at runtime on either controller.  The allows behaviors to be switched between controllers if needed.\n```html\n\u003cvr-controller [showcontroller]=\"enableshow\" [trackedpointer]=\"enabletracking\"\u003e\n\u003c/vr-controller\u003e\n\n```\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Firobot1%2Fng3-vr-examples","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Firobot1%2Fng3-vr-examples","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Firobot1%2Fng3-vr-examples/lists"}