Difference between revisions of "Magic Lens"

From Immersive Visualization Lab Wiki
Jump to: navigation, search
(Resources)
(TO DO)
 
(9 intermediate revisions by 2 users not shown)
Line 5: Line 5:
  
 
===Significant Updates===
 
===Significant Updates===
 +
* June 6: Implemented core functionality based on "Generalized Perspective Projection, Robert Kooima, August 2008"
 +
 +
* May 7: Enabled camera position and perspective manipulation on android client with accordance to motion trackers.
 +
 +
* April 26: Sample camera tracking manipulation tested on viewer on desktop.
 +
 
* March 12: Enabled camera position manipulation on android client with accordance to motion trackers.
 
* March 12: Enabled camera position manipulation on android client with accordance to motion trackers.
  
Line 20: Line 26:
  
 
===TO DO===
 
===TO DO===
 +
* Tweak current rotation functionality.
 
* Enable headtracking to alter the perspective of view on android.
 
* Enable headtracking to alter the perspective of view on android.
* Develop a way to pan around the object in space using the trackers.
+
* Enable debugging or simulator mode for android to display data and enable default position.
 
* <s>Figure out what dtrack values are scaled to</s>
 
* <s>Figure out what dtrack values are scaled to</s>
 
* <s>Pass/Calculate rotation values to client-side (Android) version of Magic Lens</s>
 
* <s>Pass/Calculate rotation values to client-side (Android) version of Magic Lens</s>
Line 27: Line 34:
  
 
===Known Bugs/Issues===
 
===Known Bugs/Issues===
 +
* Current version allows the camera to rotate incorrectly.
 
* Connection Issues  
 
* Connection Issues  
 
** Needs to open up firewall permissions (port 28888) on the computer before being able to create a connectable server
 
** Needs to open up firewall permissions (port 28888) on the computer before being able to create a connectable server
** Server connection hangs if CalVR is closed before connected Android client (Workaround: Always Terminate Android client before CalVR)
+
** Server connection hangs if Android client is not forcibly quit before CalVR closes (Workaround: '''Always force close Android client before closing CalVR''')
* Device Issues - Some devices are not recognized on Rubble (Nexus 7, Samsung Galaxy S3 SGH-i747).  Proposed solution requires root permissions
+
  
 
==Additional Information==
 
==Additional Information==

Latest revision as of 15:18, 13 June 2013

Contents

Project Overview

The project is building upon the work found in the prior project ArtifactVis with Android Device. The goal of MagicLens is to allow the user to use an android device as a "magical lens" to view the world. The device will update its perspective on the world depending on its location in the world. Additonally head tracking will affect how the world is displayed depending on how it is viewed by the user.


Significant Updates

  • June 6: Implemented core functionality based on "Generalized Perspective Projection, Robert Kooima, August 2008"
  • May 7: Enabled camera position and perspective manipulation on android client with accordance to motion trackers.
  • April 26: Sample camera tracking manipulation tested on viewer on desktop.
  • March 12: Enabled camera position manipulation on android client with accordance to motion trackers.
  • February 27: Implemented view-frustum updating on android client with accordance to motion trackers.
  • Februrary 26: Resolved several TCP/IP packet/connection issues and began transforming android client using values passed from dtrack.
  • February 14: Implemented necessary library functions from dtrack API (Angles, Position Matrices, etc.). Allowed access to shared memory location in order to pull values from the Sensors to the server.
  • Feburary 12 : Enabled access to dtrack on MagicLens CalVR plugin. MagicLens can now track and interpret movement of sensors based on dtrack's given orientation/rotation values.
  • Feburary 1 : Client-end(Android Device) can now handle custom IP addresses.
  • January 18 : Configured workspace and OpenSceneGraph for android.

TO DO

  • Tweak current rotation functionality.
  • Enable headtracking to alter the perspective of view on android.
  • Enable debugging or simulator mode for android to display data and enable default position.
  • Figure out what dtrack values are scaled to
  • Pass/Calculate rotation values to client-side (Android) version of Magic Lens
  • Add the rotation matrices to Scene Graph, and watch the magic happen!

Known Bugs/Issues

  • Current version allows the camera to rotate incorrectly.
  • Connection Issues
    • Needs to open up firewall permissions (port 28888) on the computer before being able to create a connectable server
    • Server connection hangs if Android client is not forcibly quit before CalVR closes (Workaround: Always force close Android client before closing CalVR)

Additional Information

Project Goals

  • A sophisticated and intuitive user experience
  • Tracking device panning and replicating movement on CalVR
  • Heading tracking and replicating displaced object on device
  • Expand to interaction and application with Archaeological artifacts
  • Communication between other plugins


Developers

Software Developer

  • Tony Chan
  • Michael Chao

Project Advisor

  • Jurgen Schulze


Resources

Computers that can connect using MagicLens:

  • Gneiss - xxx.xxx.119.202
  • Rubble - xxx.xxx.119.176 (Android Application Default)
  • Shale - xxx.xxx.118.124

Local

  • Starting and Stoping Dtrack commands
    • ps -ef | grep trackd
    • /home/calvr/trackd start
    • /home/calvr/trackd stop
  • Dtrack Memory Location
    • /usr/local/trackd/etc/trackd.conf
  • Plugin Helper Functions
    • file:///home/calvr/CalVR/doc/html/classcvr_1_1PluginHelper.html#a50da32d210cff2d68c4564cb189953a7

Online