如何在 Unity 中获取笔压值(在 Android 上使用 S Pen)?
Posted
技术标签:
【中文标题】如何在 Unity 中获取笔压值(在 Android 上使用 S Pen)?【英文标题】:How do I get pen pressure values in Unity (using S Pen on Android)? 【发布时间】:2020-12-28 07:26:50 【问题描述】:我到处查看,但没有关于在 Unity 中使用平板笔的实际示例或教程。
我尝试使用我在论坛上找到的 GetTouch 功能,看看是否可行:
float pressure = Input.GetTouch(0).pressure;
然后将值显示为字符串以查看它的值,但出现“索引超出范围”错误。
【问题讨论】:
【参考方案1】:首先你必须安装包输入系统
之后,您必须将命名空间 UnityEngine.InputSystem 添加到您的脚本(第 2 行)。
可以使用Pointer.current.pressure.clampConstant
读取值
更多信息可以在这里找到
ControlsAxisControl / Class Pointer ControlsAxisControl / Class AxisControl Pen, tablet, and stylus support【讨论】:
非常感谢您的详尽回答!我唯一的问题是,在我的 Galaxy Note 20 上运行应用程序时,它似乎无法识别“手写笔支持”。这个语句总是返回错误:if (Input.stylusTouchSupported)。不过,这支笔显然可以工作,因为我可以用它在我的应用程序中“绘图”。但如果我开始用手指画画,笔就会完全停止工作。 我很高兴。如果你把if Input.stylusTouchSupported
的那部分留出来呢?以上是关于如何在 Unity 中获取笔压值(在 Android 上使用 S Pen)?的主要内容,如果未能解决你的问题,请参考以下文章
对于 iOS healthkit,如何保存收缩压和舒张压值?
Unity中AndroidJavaObject和AndroidJavaClass有啥区别