kitylam9 / moveme

Automatically exported from code.google.com/p/moveme
0 stars 0 forks source link

MoveMe Laser Pointer help. #11

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago

Hello.

I have the MoveMe working with an application I wrote.  I am getting correct 
position tracking.  I noticed the laser pointer commands and if they are what 
they look like, they would be very useful for what I am doing.

Do the laser commands provide a way to map controller orientation/position to a 
point on the screen like a virtual laser pointer?  So far I am getting erratic 
numbers back.

I issued the following commands to the GEM 0 controller:

TURNON_LASER

(while pointing at the 4 sides of the screen)
LASER_LEFT_PLANE
LASER_RIGHT_PLANE
LASER_BOTTOM_PLANE
LASER_TOP_PLANE

The server log shows that the commands were successfully received by the ps3.

Looking at the PSMovePointerState, valid is set to 1 after TURNON_LASER but 
normalize_x and normalize_y are not what I expect and are not even 
stable/consistent.

Please let me know if I understand this feature correctly and if you have any 
idea what I am doing wrong.  Any help would be greatly appreciated.

Original issue reported on code.google.com by Quemaz...@gmail.com on 17 Oct 2011 at 5:48

GoogleCodeExporter commented 8 years ago
Hey,

Have you confirmed that the controller is properly working (aside from the 
laser pointer)? I.E. The sphere is lit and the camera is tracking?

I'll help you get this up and running, but, I'd actually recommend against 
using the built-in support for laser pointer mode and just rolling your own. 

Basically, if you assume that your camera is in the same plane as the screen, 
you can just do a ray cast from the controller towards the origin to get your 
intersection point. Shoot a ray in each corner and use that for the extents. 
Having the extents lets you normalize the coordinates. I can post code if that 
would be helpful.

Thanks,
John

Original comment by j...@johnmccutchan.com on 18 Oct 2011 at 3:07

GoogleCodeExporter commented 8 years ago
Hello and thank you for the quick response. 

Yes, the controller is working correctly and I am already using position to 
control some crosshairs.  Thanks for the recommendation as well.  I actually 
already have some code for casting a ray to the screen but was curious whether 
you might have a more accurate method.  The project I am working on mixes real 
world and 3D graphics so accuracy helps a lot.  So far the MoveMe has been 
great.

Also, I noticed a tilt value from the camera.  Do the Sony cameras have a tilt 
sensor (accelerometer) in them?  If it is reasonably accurate, maybe I could 
work with a tilted camera.

Thanks again.

   -- Skyler

Original comment by Quemaz...@gmail.com on 18 Oct 2011 at 5:48

GoogleCodeExporter commented 8 years ago
Hi,

The camera doesn't have a tilt sensor but the tilt is calculated over time by 
using the video data and data from the Move controller to approximate the angle 
between the camera and gravity. Internally, the tilt from the camera is 
factored into the data describing the position of the Move controller, so 
having a tilted camera shouldn't impact the accuracy of the data.

Do you have a demo of what you're working on with MoveMe?

Thanks,
John

Original comment by j...@johnmccutchan.com on 19 Oct 2011 at 3:57

GoogleCodeExporter commented 8 years ago
Hi,

Thank you for the info on the camera.  That is a very cool way to get that 
information.  I don't have a demo to show you quite yet but I will pass your 
information on to the person I am developing this for.

Just to let you know, the position and orientation information with the Move is 
fantastic.  I have been working with a number of different controllers and 
depth cameras for ambient computing/alternative UI type applications and this 
is really the most solid so far.

  -- Skyler

Original comment by Quemaz...@gmail.com on 24 Oct 2011 at 5:12

GoogleCodeExporter commented 8 years ago

Original comment by john.mcc...@gmail.com on 8 Nov 2011 at 4:03