Unity触屏项目踩坑

项目场景:

展馆触屏项目,实现体块识别+画画涂色,通过场景跳转切换。


问题描述

两个场景单独运行没有问题,体块识别场景跳转到画画涂色场景后就无法正确实现画画功能了。

原因分析:

因为分别使用了不同的插件实现功能,两个场景的触摸功能发生了冲突,检查代码发现是这行代码造成的问题:

 Input.simulateMouseWithTouches = false;

这是一个布尔属性,用于控制是否将触摸事件模拟为鼠标事件。当其设置为false意味着触摸事件不会被模拟为鼠标事件,这意味着需要设计专门处理触摸事件的代码,而不能依赖于鼠标事件处理代码。当其设置为true时,触摸事件会被转换为等效的鼠标事件,这样就可以使用鼠标事件处理代码来处理触摸事件。

我的体块识别场景使用了专门处理触摸事件的代码,而画画涂色场景只有鼠标事件。体块识别场景的TouchManager组件修改了 Input.simulateMouseWithTouches = false,并且该组件设置了不可销毁,就跟随场景跳转来到了画画涂色场景,此时画画功能就出现了错误,错误表现为鼠标可以正常画画,触摸屏上画画没有反应。


解决方案:

当跳转到画画涂色场景时,运行:

Input.simulateMouseWithTouches = true;

当跳转到体块识别场景时,运行:

Input.simulateMouseWithTouches = false;

测试检验成功解决问题。

  • 9
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值