如何实现 手柄链接电脑,电脑运行 Android 模拟器,通过手柄玩游戏 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
lawfun
V2EX    Android

如何实现 手柄链接电脑,电脑运行 Android 模拟器,通过手柄玩游戏

  •  
  •   lawfun 2017-07-13 00:08:14 +08:00 17468 次点击
    这是一个创建于 3014 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近买了个 游戏手柄,在 Windows 上可以连 逍遥夜神等模拟器玩王者荣耀。

    但是 Linux 上的 Android 模拟器都不支持手柄,比如 Gogole 的 Android 模拟器。Genymotion 官网说是可以连手柄,是我打开 remote control 检测不到我的手柄,steam 和 PPSSPP 等模拟器是可以检测到并且操控的,说明我的驱动没有问题。

    想问下 Linux 上有没有能支持手柄的 Android 模拟器。

    如果没有,
    也想请教下大神,怎么开发个 Linux 上的 Android 模拟器,能够支持手柄 玩游戏的。人家的模拟器咋做的,咋能支持手柄的。

    谢谢大家

    第 1 条附言    2017-07-13 13:05:38 +08:00
    有没有大牛指导下怎么开发个 Android 模拟器,能在 linux 上连手柄,玩游戏的
    27 条回复    2017-07-20 22:14:36 +08:00
    gongjianwei
        1
    gongjianwei  
       2017-07-13 01:08:52 +08:00 via Android
    重点是,Android 模拟器怎么识别你的 Windows 接入了一个设备
    建议:装一个 Android x86
    Dukec
        2
    Dukec  
       2017-07-13 01:57:38 +08:00
    @gongjianwei 一些 Windows 上的 Android 模拟器是可以识别并且使用手柄的,而且题主问的是 Linux 上的 Android 模拟器。
    cctrv
        3
    cctrv  
       2017-07-13 02:12:52 +08:00 via iPhone
    把手柄按映射成按。
    例如上就是 W。方向有解方案。
    20150517
        4
    20150517  
       2017-07-13 06:54:00 +08:00 via Android
    我保证你这游戏卡的像狗一样
    linhua
        5
    linhua  
       2017-07-13 08:20:01 +08:00
    Genymotion 是基于 VirtualBox 虚拟机的,你打开 VirtualBox 可以查看到 Genymotion 的虚拟机系统。
    所以 先思考一下相关的问题:你是如何让 VirtualBox 中的 Windows/Linux 系统 支持游戏手柄的?
    v2orz
        6
    v2orz  
       2017-07-13 08:27:14 +08:00
    常见的安卓游戏模拟器都可以啊。比如王者荣耀,我用 xbox360 的手柄就可以,就是技能方向不好搞
    v2orz
        7
    v2orz  
       2017-07-13 08:27:41 +08:00
    啊,我 2 了,你说的 Linux,忽略我吧
    artisan
        8
    artisan  
       2017-07-13 09:37:50 +08:00
    模拟器有模拟键盘按键,然后键盘映射手柄.
    我就是这么干的
    rb6221
        9
    rb6221  
       2017-07-13 09:57:44 +08:00
    Linux 上好像没看到为游戏定制的 android 模拟器
    gongjianwei
        10
    gongjianwei  
       2017-07-13 10:17:46 +08:00 via Android
    @Dukec 没看清楚,抱歉
    lawfun
        11
    lawfun  
    OP
       2017-07-13 13:02:10 +08:00
    @gongjianwei 一般的游戏,比如 王者荣耀 只支持 arm,都不支持 X86
    lawfun
        12
    lawfun  
    OP
       2017-07-13 13:03:15 +08:00
    @cctrv 用键盘只能 45 度角斜着走了,不能万向走
    lawfun
        13
    lawfun  
    OP
       2017-07-13 13:04:08 +08:00
    @20150517 在 win10 上 用 逍遥模拟器等 玩王者荣耀顺畅的很
    happyzed
        14
    happyzed  
       2017-07-13 13:58:22 +08:00
    itools 安卓模拟器,支持手柄,不谢
    maemolee
        15
    maemolee  
       2017-07-13 14:47:27 +08:00 via iPad
    linux ……没头绪。装个 windows 双系统如何 www
    JackyBao
        16
    JackyBao  
       2017-07-13 14:54:16 +08:00
    remixos?
    lawfun
        17
    lawfun  
    OP
       2017-07-13 20:13:42 +08:00
    @happyzed itools 安卓模拟器 不支持 Linux 吧
    happyzed
        18
    happyzed  
       2017-07-14 10:20:24 +08:00
    @lawfun linux 玩什么游戏
    XuweiatTuSDK
        19
    XuweiatTuSDK  
       2017-07-14 10:52:35 +08:00
    @gongjianwei Android x86 比如 Remix OS,不知道能不能识别手柄
    woyaojizhu8
        20
    woyaojizhu8  
       2017-07-15 14:18:54 +08:00
    @lawfun 难道你在 linux 下用谷歌 android 模拟器开一个 arm 的 android 玩王者荣耀?不会很卡吗?
    我开个微信都卡得不能自理
    lawfun
        21
    lawfun  
    OP
       2017-07-15 22:20:01 +08:00
    @woyaojizhu8 用的 genymotion 开的 x86 的模拟器,然后加上 arm translation,一点都不卡,机器是 i5-3210 16g 内存。google 的 arm 模拟器直接就一直卡在开机画面
    Siril
        22
    Siril  
       2017-07-18 14:21:48 +08:00   1
    我用过 windows 下的 夜神 网易 mumu 海马玩 腾讯手游助手 等模拟器 ,
    玩王者荣耀基本不卡,也纠结于这个手柄的问题。 各模拟器的摇杆控制都是残废。

    我有个思路:
    做一个 windows 软件,不停地取手柄状态, 监听一个端口,把手柄操作发给客户端;
    做一个安卓程序装模拟器里面,要用 root 权限的, 连接到主机上的。
    直接读写 /dev/input/ 下面对应的设备文件模拟触摸操作。

    做了一半, 后来。。。 我意识到我的需求只不过是在大屏幕上玩游戏而已, 就用了 miracast 投屏。。。
    lawfun
        23
    lawfun  
    OP
       2017-07-19 08:18:02 +08:00
    @Siril 哈哈,大神。
    我现在也是两个思路:
    一个是做个 app 和服务端,服务端读取电脑设备上的手柄输入,现在 Linux 是能读取到手柄信息的,steam 上能玩游戏。然后通过 socket 把数据发给 客户端,客户端通过 辅助模式 模拟 点击滑动 来玩游戏。
    二也是通过 miracast,我的手机如果不支持 MHL,如果支持 MHL 就能直接连 HDMI 显示器了。我的手机 支持
    miracast,接收端的 是怎么弄的,需要特殊的设备么
    lawfun
        24
    lawfun  
    OP
       2017-07-19 08:21:19 +08:00
    @Siril 用 miracast 在显示器上清晰么。我用 vysor 来进行投影,显示的不如手机上清晰,我对比了手机截图和 vysor 的截图,延迟倒是很低,10 到 40ms 吧。
    Siril
        25
    Siril  
       2017-07-19 14:06:03 +08:00   1
    @lawfun 我用的手机小米 max, 和小米盒子。
    分辨率 1080p 放显示器上正好, 似乎显示器分辨率不同会按照手机画面缩放。
    手机性能问题,本来游戏画面就不能调高。

    适合摇杆,不适合触屏操作。

    小米盒子上开一个系统自带 app 就行, 然后手机上就能搜到显示设备。
    这个过程不需要路由器,似乎建立连接之后 2 个设备之间是 5GHz 频段的 wifi 直连。


    用起来有 4 个问题:
    大概有几十毫秒延迟, 游戏基本还是能玩的;
    偶尔花屏几秒;
    投屏同时手机可以连 wifi,但是会增加花屏频率;
    在 ADUI 使用很成功, lineageOS 下没连上过。

    另外试过 win10 自带的 miracast 功能作为服务端或客户端, 使用体验是。。。 仅限于 ppt 流畅。
    Siril
        26
    Siril  
       2017-07-19 14:16:11 +08:00   1
    @lawfun 似乎 miracast 标准挺乱的, 各家的设备多少有些不兼容,是否顺利使用,可能得看运气

    我用着顺利可能是恰好用的同一厂商的设备。

    原理记得是发送者把画面+音频编码成视频流,用 wifi 发给接收者。
    音频也发给电视 /显示器了,我的显示器有耳机口输出。
    lawfun
        27
    lawfun  
    OP
       2017-07-20 22:14:36 +08:00
    感谢 @Siril 的回复, 开拓的我的思路
    我搜了一些 miracast 的接受器,大多是杂牌子的。听您一说,原来 小米盒子就有这么一个功能。

    也想到了以后可以装个 win 的客厅电脑,然后可以用飞鼠控制。这样玩起来很爽了。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1378 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 16:40 PVG 00:40 LAX 09:40 JFK 12:40
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86