打印

游戏机外设的定位技术

[复制链接]
1957|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
ak74|  楼主 | 2012-11-7 09:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
ak74|  楼主 | 2012-11-12 16:35 | 只看该作者
有人知道么???

使用特权

评论回复
板凳
Tinnal| | 2012-11-13 23:47 | 只看该作者
这是原来的CRT的原理:从别处转过来的。
这里有比较详细的解说,各位可以参考一下这位热心网友写的原理介绍。希望对有兴趣的朋友有帮助。

这是一个八位元时代就有的周边,可是很多人都不清楚它的运作原理。那就是「光线枪」。

自从VR COP上市以来,光线枪又受到大家的重视了。许多人都问一个问题,电视机没有感应器,那如何接受光线枪的讯号呢?

这个问题也曾经困扰著我,不过多亏VR COP发行之赐,我从一本日文杂志看到了枪的原理,才恍然大悟。原来接受讯号的是枪不是电视,所以玩光线枪的GAME时不必在电视上加装感应器。也因此就想写本文,以服务玩家。

以下以三点来说明光线枪的原理:

一、电视机的成像原理。

大家可能会奇怪,前面已经说了感应器不是电视而是枪,那为何要谈电视的成向原理呢?这个原因可大了,因为光线枪能知道要射击的目标的座标,全靠现行的电视(交错式萤幕)的特性而来。

大家都知道的一点,电视讯号是一条条的扫瞄线所组成的。以目前三台为例,三台的讯号是512条扫瞄线。那这512条线是如何来的?那是电台把讯号一条条的送过来(因握微波不可能送整个画面,就算它的频宽很宽那也只能提高资料量而已)而512条就是一个画面由512条线组成的。而每秒钟中电视要送出30张画面,也就是说电视的电子枪的频率是512*30/秒(这是三台的讯号)不过一般的电视都比这个数字大。如下图:

╭——————————————╮
│→→→→→→→→→→→→→→│
│→→→→→                 │
│                        │
│                        │
│                         │     
│                         │
│                         │
╰——————————————╯

是由左向右,由上到下一条条的由电子枪送出来的。黑白电视只要送出亮度资料,而彩色电视还要送出三原色的的资料。而萤幕为何会亮,那是由电子枪送出的讯号打在营幕後的萤光材质上,萤光物质受到辐射线的照射,就会发光了!


由上面可以知道,宽萤幕和大尺寸电视为何比较贵了。因为电子枪振动的振幅比较大的缘故。而高画质电视更贵的原因就是因为振动数远高於一般电视的缘故。而利用这种特性,光线枪就能知道我们射击的目标的座标值。

二、光线枪如何知道我们射击那里?

这下到重点了。在光线枪里有个感应器,这个感应器只接收特定频率的光线(肉眼看不见的)而游乐器送讯号到电视时,就在每个dot後面加上一个dot的光线枪用的讯号。而光线枪里有个计时器,当每个画面第一点的讯号送出时(这个讯号由游乐器提供)计时器就开始计时,当感应器收到讯号时,计时器得到受信的时间,再由这时间就可算出座标了。(有点难吧!)如下图:

╭——————————————╮   
│→→→→→→→→→→→→→→│
│→→→→→→→→→→→→→→│
│→→→→→→→→→→→→→→│
│→→→→→⊙               │
│                          │
│                          │
│                          │
╰——————————————╯

讯号由左到右,由上到下发出时会用掉时间(虽然非常短)当枪对准⊙时,特殊频率的光由左上角出发当它到⊙时,感应器收到讯号计时器就把时间记下来,如此游乐器就能知道座标了。所以只要枪口指著萤幕,电脑就知道座标了。

而有人可能会奇怪,那萤幕的大小没影响吗?程式难道会因萤幕而修正吗?答案是不必,因为程式是根据扫瞄频率来算的。所以大小萤幕只牵涉到 dot和dot间的间距,和频率无关。而以上的动作向VRCOP每秒要计算30次。也因此枪里面的计时器越精确(最小时间单位月小)那枪的准确度越高。所以VR枪的台制品准确度极差(放在萤幕前也会打偏)就是因为计时器的IC不好的缘故。这就是VR枪原版的不便宜的缘故。

而我们扣扳机时枪为何知道打那里?那很简单。枪的扳机本身是个开关,当按下时,游乐器会送出另一个讯号(枪也能收的,我们会发现萤幕会闪一下)座标的算法还是和上面一样(其实对程式而言更简单,因为它只要算这一瞬间的资料就可以了)。

由以上的介绍,各位应该对光线枪有所了解了吧!

三、关於光线枪的问题。

光线枪为何不能再投影电视和液晶电视上使用?
因为投影电视和液晶电视得成像原理,和一般电视不同。它们不是用扫瞄线成像的方式,所以光线枪无法计算座标,因此无法使用。(反正只要不是用映像管的电视都不能用啦!)

为什麼小於20吋的萤幕没办法用?
因为萤幕小於20吋时,由於dot和dot间的距离太近了,小於光线枪的误差值,所以它们虽然能用,但是误差会很大。(反正大家也不会拿14吋电视玩VR COP来折磨自己)

使用特权

评论回复
评分
参与人数 1威望 +1 收起 理由
ak74 + 1 认可
地板
Tinnal| | 2012-11-13 23:58 | 只看该作者
如果在液晶上使用,我想到两个方法。
一、直接基于特定的屏幕标记(可以用形状、图型频率、颜色区别的特征去识别),然后进行坐标计算。精度可以做作得很高,但要进行大量的图像运算。成本高。不过好像现在的光枪都这么做的。因些他们的广告都写得很高科技。

二、笨方法,我们自己通过控制给液晶的图像来模拟扫瞄过程,来模拟传统光枪。

使用特权

评论回复
5
ak74|  楼主 | 2012-11-19 17:16 | 只看该作者
挺好的,目前我们已经有眉目了,你的方法挺详细的,谢谢

使用特权

评论回复
6
colin_shao| | 2012-11-19 18:41 | 只看该作者
用在非CTR屏幕的光枪还是有难度的,有几种方式可以实现:
  1.摄像头装在枪头,发光点在屏幕边缘,通过平面位移来计算坐标。
  2.发光点装在枪头,摄像头装在主机一侧,计算发光点在摄像头中的位置,并做相应的修正可得到光枪所指的坐标。
   3.枪头装上红外感应晶片,发光点等距装在屏幕边缘,通过感应晶片接收到红外光的光强计算出坐标。
其他方法都有点不太实际。第3种方法目前看来性价比是最好的,并且在游戏机台组装时很方便,市面上绝大部分的日本光枪游戏都是用这种方式的光枪,例如SEGA、NAMCO的光枪游戏。
    这三种光枪我都有搞过,有需要的可以联系我,colin_shao*163.com(注:*改为@)

使用特权

评论回复
7
gundamggg| | 2012-11-20 08:45 | 只看该作者
直接上插逼360或Wii的体感技术的说啦~

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

18

帖子

0

粉丝