Carla中的joystick(wheel)方向盘控制

 

init()  —  初始化 ,将会扫描系统上所有的游戏杆设备。
quit()  —  卸载
get_init()  —  如果 joystick 模块已经初始化,返回 True

get_name()  —  获得 Joystick 系统名称

get_id()  —  获得Joystick ID,每个joystick都是一个插入PC的设备
get_count()  —  获取游戏杆的数量

pygame.joystick.init()
joysticks = [pygame.joystick.Joystick(x) for x in range(pygame.joystick.get_count())]

 

axes是表示8个方向的方向杆还是wheel方向盘?带有轴的方向盘、脚踏板等
get_numaxes()  —  获得 Joystick 操纵轴的数量
get_axis()  —  获得操纵轴的当前坐标,一般有两个操纵轴用来表示坐标(rudders 和 throttles ),JOYAXISMOTION 的值是从 -1. 0到 1.0,0.0 表示轴在中间

numAxes = self._joystick.get_numaxes()

jsInputs = [float(self._joystick.get_axis(i)) for i in range(numAxes)]

 

从jsInput上下文可以看出,Axes表示带有轴的输入:

jsInputs[self._steer_idx]

jsInputs[self._throttle_idx]

jsInputs[self._brake_idx]

Custom function to map range of inputs [1, -1] to outputs [0, 1] i.e 1 from inputs means nothing is pressed

方向盘

y = tan(1.1 x)

油门、刹车

y = 1.6 + (2.05 log10(-0.7 * x + 1.4) - 1.2) / 0.92

y = 0 if y <= 0

y = 1 if y > 1


get_numbuttons()  —  获得 Joystick 上按钮的数量
get_button()  —  获得当前按钮状态

jsButtons = [float(self._joystick.get_button(i)) for i in range(self._joystick.get_numbuttons())]


hat(帽键)是指左侧的4向方向按键,还是像帽子一样的8向方向杆?像帽子一样的方向杆

每个帽键有两个轴作为输入,x 对应左右, y 对应上下。


get_numhats()  —  获得 Joystick 上帽键的数量
get_hat()  —  获得 的位置

(0, 0) 代表中间

(-1, 0) 代表左

(1, 0) 代表右

(0, 1) 代表上

(1, 1) 代表右上

 

 

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值