<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: GameTrak, a first impression</title>
	<atom:link href="http://cb.nowan.net/blog/2006/09/25/gametrak-a-first-impression/feed/" rel="self" type="application/rss+xml" />
	<link>http://cb.nowan.net/blog/2006/09/25/gametrak-a-first-impression/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=gametrak-a-first-impression</link>
	<description>Virtual Reality for all</description>
	<lastBuildDate>Wed, 14 Dec 2011 10:13:26 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.4</generator>
	<item>
		<title>By: Jack</title>
		<link>http://cb.nowan.net/blog/2006/09/25/gametrak-a-first-impression/comment-page-1/#comment-44816</link>
		<dc:creator>Jack</dc:creator>
		<pubDate>Sun, 18 May 2008 17:23:27 +0000</pubDate>
		<guid isPermaLink="false">http://cb.nowan.net/wblog/?p=260#comment-44816</guid>
		<description>Hey guys - I&#039;m new to both Virtools and Gametrak, so I have a question - do you create that script (the one gilles pinault created) on the level or on the 3d frame? And then, how do you connect the dots in the schematic? (you know, the lines that connect scripts).

A step by step, basic walkthrough would be very, very appreciated - thank you!</description>
		<content:encoded><![CDATA[<p>Hey guys &#8211; I&#8217;m new to both Virtools and Gametrak, so I have a question &#8211; do you create that script (the one gilles pinault created) on the level or on the 3d frame? And then, how do you connect the dots in the schematic? (you know, the lines that connect scripts).</p>
<p>A step by step, basic walkthrough would be very, very appreciated &#8211; thank you!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: JP</title>
		<link>http://cb.nowan.net/blog/2006/09/25/gametrak-a-first-impression/comment-page-1/#comment-44378</link>
		<dc:creator>JP</dc:creator>
		<pubDate>Thu, 06 Mar 2008 14:05:27 +0000</pubDate>
		<guid isPermaLink="false">http://cb.nowan.net/wblog/?p=260#comment-44378</guid>
		<description>Two versions of the Gametrak have been made : one for the Playstation 2 and one for PC. And even if the PS2 version is USB, when you plug it into a PC usb port, it doesn&#039;t report values, even if it&#039;s clearly recognized...</description>
		<content:encoded><![CDATA[<p>Two versions of the Gametrak have been made : one for the Playstation 2 and one for PC. And even if the PS2 version is USB, when you plug it into a PC usb port, it doesn&#8217;t report values, even if it&#8217;s clearly recognized&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Sean</title>
		<link>http://cb.nowan.net/blog/2006/09/25/gametrak-a-first-impression/comment-page-1/#comment-44341</link>
		<dc:creator>Sean</dc:creator>
		<pubDate>Fri, 29 Feb 2008 19:38:47 +0000</pubDate>
		<guid isPermaLink="false">http://cb.nowan.net/wblog/?p=260#comment-44341</guid>
		<description>I got one of these a few days ago, but I can&#039;t get the input to update.

It shows in the list, but the X,Y,Z doesn&#039;t update after you plug-in. Did you have it do something fancy for Windows to read the updates?</description>
		<content:encoded><![CDATA[<p>I got one of these a few days ago, but I can&#8217;t get the input to update.</p>
<p>It shows in the list, but the X,Y,Z doesn&#8217;t update after you plug-in. Did you have it do something fancy for Windows to read the updates?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Sean</title>
		<link>http://cb.nowan.net/blog/2006/09/25/gametrak-a-first-impression/comment-page-1/#comment-44340</link>
		<dc:creator>Sean</dc:creator>
		<pubDate>Fri, 29 Feb 2008 19:32:56 +0000</pubDate>
		<guid isPermaLink="false">http://cb.nowan.net/wblog/?p=260#comment-44340</guid>
		<description>Hello, I got one of these recently, but after I plugged it in, the Joystick page doesn&#039;t update X/Y/Z&#039;s. Did you have to do something fancy to get Windows to take it?
It shows up in the list, but the Axis displays don&#039;t update.

(If you are using Windows, that is)

Thank you.</description>
		<content:encoded><![CDATA[<p>Hello, I got one of these recently, but after I plugged it in, the Joystick page doesn&#8217;t update X/Y/Z&#8217;s. Did you have to do something fancy to get Windows to take it?<br />
It shows up in the list, but the Axis displays don&#8217;t update.</p>
<p>(If you are using Windows, that is)</p>
<p>Thank you.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: cb</title>
		<link>http://cb.nowan.net/blog/2006/09/25/gametrak-a-first-impression/comment-page-1/#comment-43658</link>
		<dc:creator>cb</dc:creator>
		<pubDate>Mon, 04 Feb 2008 20:43:43 +0000</pubDate>
		<guid isPermaLink="false">http://cb.nowan.net/wblog/?p=260#comment-43658</guid>
		<description>PC!</description>
		<content:encoded><![CDATA[<p>PC!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Glen</title>
		<link>http://cb.nowan.net/blog/2006/09/25/gametrak-a-first-impression/comment-page-1/#comment-43656</link>
		<dc:creator>Glen</dc:creator>
		<pubDate>Mon, 04 Feb 2008 20:29:25 +0000</pubDate>
		<guid isPermaLink="false">http://cb.nowan.net/wblog/?p=260#comment-43656</guid>
		<description>This looks interesting. Now that prices for a Gametrak is in the $20 range, I&#039;m thinking this could represent a ultra-low-cost motion capture system. Was this testing done with a PC or PlayStation 2 version of the Gametrak?</description>
		<content:encoded><![CDATA[<p>This looks interesting. Now that prices for a Gametrak is in the $20 range, I&#8217;m thinking this could represent a ultra-low-cost motion capture system. Was this testing done with a PC or PlayStation 2 version of the Gametrak?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: cb</title>
		<link>http://cb.nowan.net/blog/2006/09/25/gametrak-a-first-impression/comment-page-1/#comment-147</link>
		<dc:creator>cb</dc:creator>
		<pubDate>Wed, 18 Oct 2006 21:46:47 +0000</pubDate>
		<guid isPermaLink="false">http://cb.nowan.net/wblog/?p=260#comment-147</guid>
		<description>&lt;p&gt;Indeed it&#039;s working much better, thanks a lot !!&lt;/p&gt;</description>
		<content:encoded><![CDATA[<p>Indeed it&#8217;s working much better, thanks a lot !!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: gilles pinault</title>
		<link>http://cb.nowan.net/blog/2006/09/25/gametrak-a-first-impression/comment-page-1/#comment-167</link>
		<dc:creator>gilles pinault</dc:creator>
		<pubDate>Mon, 09 Oct 2006 17:10:12 +0000</pubDate>
		<guid isPermaLink="false">http://cb.nowan.net/wblog/?p=260#comment-167</guid>
		<description>&lt;p&gt;Hello,&lt;br /&gt; after reading your little preview, we bought one gametrack.&lt;br /&gt; after some test, we figured out that the translation into virtools coordinates is a little bit less direct.&lt;br /&gt; It&#039;s not joystick vector = glove position but joystick X and Y are angles and Z is distance (kind of polar coordinates but not exactly).&lt;br /&gt; Here is the little VSL we made in order to convert the informations:&lt;br /&gt; &lt;br /&gt; pIn:&lt;br /&gt; joystickID  (int)&lt;br /&gt; &lt;br /&gt; pOut:&lt;br /&gt; pos1 (vector)&lt;br /&gt; pos2 (vector)&lt;br /&gt; pedal (bool)&lt;br /&gt; &lt;br /&gt; code:&lt;br /&gt; void main()&lt;br /&gt; {&lt;br /&gt; 	InputManager iM = InputManager.Cast(bc.GetManagerByGuid(GetInputManagerGuid()));&lt;br /&gt; 	//état de la pédale&lt;br /&gt; 	pedal = iM.GetJoystickButtonsState(1);&lt;br /&gt; 	//récupération des deux vecteur (pos = vecteur du premier point et rot = vecteur du second)&lt;br /&gt; 	//x et y sont les angles. Z est la distance&lt;br /&gt; 	Vector pos;&lt;br /&gt; 	Vector rot;&lt;br /&gt; 	iM.GetJoystickPosition(joystickID,pos);&lt;br /&gt; 	iM.GetJoystickRotation(joystickID,rot);&lt;br /&gt; 	//distances&lt;br /&gt; 	float coeffDist = 0.7258;//pour avoir la distance en m&lt;br /&gt;  	float calibDist = 1.56;//pour avoir la recentrer la distance       &lt;br /&gt; 	float d1 = calibDist-(pos.z/coeffDist);&lt;br /&gt; 	float d2 = calibDist-(rot.z/coeffDist);&lt;br /&gt; 	//angles&lt;br /&gt; 	float coeffAngle = 0.50; //pour avoir les angles en radian&lt;br /&gt; 	float angle1x = pos.x * coeffAngle;&lt;br /&gt; 	float angle1y = pos.y * coeffAngle;&lt;br /&gt; 	float angle2x = rot.x * coeffAngle;&lt;br /&gt; 	float angle2y = rot.y * coeffAngle;&lt;br /&gt; 	float tanA1 = tan(angle1x);&lt;br /&gt; 	float tanB1 = tan(angle1y);&lt;br /&gt; 	pos1.y = sqrt((d1*d1)/(1+tanA1*tanA1+tanB1*tanB1));&lt;br /&gt; 	pos1.x = pos1.y*tanA1-0.065;&lt;br /&gt; 	pos1.z = (pos1.y*tanB1); //6.5cm pour l&#039;écart entre les point de départ&lt;br /&gt; 	//bc.OutputToConsole(pos1.z);&lt;br /&gt; 	float tanA2 = tan(angle2x);&lt;br /&gt; 	float tanB2 = tan(angle2y);&lt;br /&gt; 	pos2.y = sqrt((d2*d2)/(1+tanA2*tanA2+tanB2*tanB2));&lt;br /&gt; 	pos2.x = pos2.y*tanA2+0.065;&lt;br /&gt; 	pos2.z = (pos2.y*tanB2); //6.5cm pour l&#039;écart entre les point de départ&lt;br /&gt; }&lt;br /&gt; &lt;br /&gt; &lt;br /&gt; Voilà, there are three coefficients that needs to be fine tuned. If somebody has better values, please let me know.&lt;br /&gt; Hope this will help.&lt;br /&gt; &lt;br /&gt; gilles.&lt;br /&gt; gilles[AT]softkinetic.com&lt;/p&gt;</description>
		<content:encoded><![CDATA[<p>Hello,<br />
 after reading your little preview, we bought one gametrack.<br />
 after some test, we figured out that the translation into virtools coordinates is a little bit less direct.<br />
 It&#8217;s not joystick vector = glove position but joystick X and Y are angles and Z is distance (kind of polar coordinates but not exactly).<br />
 Here is the little VSL we made in order to convert the informations:</p>
<p> pIn:<br />
 joystickID  (int)</p>
<p> pOut:<br />
 pos1 (vector)<br />
 pos2 (vector)<br />
 pedal (bool)</p>
<p> code:<br />
 void main()<br />
 {<br />
 	InputManager iM = InputManager.Cast(bc.GetManagerByGuid(GetInputManagerGuid()));<br />
 	//état de la pédale<br />
 	pedal = iM.GetJoystickButtonsState(1);<br />
 	//récupération des deux vecteur (pos = vecteur du premier point et rot = vecteur du second)<br />
 	//x et y sont les angles. Z est la distance<br />
 	Vector pos;<br />
 	Vector rot;<br />
 	iM.GetJoystickPosition(joystickID,pos);<br />
 	iM.GetJoystickRotation(joystickID,rot);<br />
 	//distances<br />
 	float coeffDist = 0.7258;//pour avoir la distance en m<br />
  	float calibDist = 1.56;//pour avoir la recentrer la distance       <br />
 	float d1 = calibDist-(pos.z/coeffDist);<br />
 	float d2 = calibDist-(rot.z/coeffDist);<br />
 	//angles<br />
 	float coeffAngle = 0.50; //pour avoir les angles en radian<br />
 	float angle1x = pos.x * coeffAngle;<br />
 	float angle1y = pos.y * coeffAngle;<br />
 	float angle2x = rot.x * coeffAngle;<br />
 	float angle2y = rot.y * coeffAngle;<br />
 	float tanA1 = tan(angle1x);<br />
 	float tanB1 = tan(angle1y);<br />
 	pos1.y = sqrt((d1*d1)/(1+tanA1*tanA1+tanB1*tanB1));<br />
 	pos1.x = pos1.y*tanA1-0.065;<br />
 	pos1.z = (pos1.y*tanB1); //6.5cm pour l&#8217;écart entre les point de départ<br />
 	//bc.OutputToConsole(pos1.z);<br />
 	float tanA2 = tan(angle2x);<br />
 	float tanB2 = tan(angle2y);<br />
 	pos2.y = sqrt((d2*d2)/(1+tanA2*tanA2+tanB2*tanB2));<br />
 	pos2.x = pos2.y*tanA2+0.065;<br />
 	pos2.z = (pos2.y*tanB2); //6.5cm pour l&#8217;écart entre les point de départ<br />
 }</p>
<p>
 Voilà, there are three coefficients that needs to be fine tuned. If somebody has better values, please let me know.<br />
 Hope this will help.</p>
<p> gilles.<br />
 gilles[AT]softkinetic.com</p>
]]></content:encoded>
	</item>
</channel>
</rss>

