CN108803872A - 在虚幻引擎中调用力反馈硬件的插件系统 - Google Patents
在虚幻引擎中调用力反馈硬件的插件系统 Download PDFInfo
- Publication number
- CN108803872A CN108803872A CN201810432297.7A CN201810432297A CN108803872A CN 108803872 A CN108803872 A CN 108803872A CN 201810432297 A CN201810432297 A CN 201810432297A CN 108803872 A CN108803872 A CN 108803872A
- Authority
- CN
- China
- Prior art keywords
- force feedback
- coordinate
- engine
- plug
- hardware
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/016—Input arrangements with force or tactile feedback as computer generated output to the user
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
Abstract
本发明提供了一种在虚幻引擎中调用力反馈硬件的插件系统,包括:设备控制器、力反馈设备、虚拟控制器以及力反馈对象;所述设备控制器采集所述力反馈对象的三角面引擎空间坐标与角度,通过所述虚拟控制器获取引擎空间的坐标与角度,通过监听力反馈对象的穿刺开始事件,当穿刺开始后计算力反馈数据,并通过控制所述力反馈设备传导给使用者。本发明插件稳定,完成度高;可用于VR项目,坐标系不变形,提供硬件在VR坐标系中的标定接口;契合虚幻引擎的工作流程,可完美的为虚幻引擎提供力反馈设备的解决方案;实现穿刺模式下的多层效果模拟。
Description
技术领域
本发明涉及计算机系统技术领域,具体地,涉及在虚幻引擎中调用力反馈硬件的插件系统。
背景技术
由于没有成熟的力反馈设备插件,目前世面上并没有基于3D引擎的力反馈项目,而力反馈设备的插件仅仅只有一款非开源的unity插件。并且由于是免费非开源,现在也处于没有人维护的状态。
该插件有如下问题:
1、在运行时会经常意外崩溃;
2、该插件设计初衷并非用于VR项目,导致其坐标系是变形的,并且无法在VR坐标系中标定力反馈硬件设备;
3、该插件的底层硬件SDK是基于unity项目设计的,不适用虚幻引擎的工作流程,无法在虚幻引擎中调用;
4、穿刺模式下有明显的滑针BUG。
发明内容
针对现有技术中的缺陷,本发明的目的是提供一种在虚幻引擎中调用力反馈硬件的插件系统。
根据本发明提供的一种在虚幻引擎中调用力反馈硬件的插件系统,包括:设备控制器、力反馈设备、虚拟控制器以及力反馈对象;
所述设备控制器采集所述力反馈对象的三角面引擎空间坐标与角度,通过所述虚拟控制器获取引擎空间的坐标与角度,通过监听力反馈对象的穿刺开始事件,当穿刺开始后计算力反馈数据,并通过控制所述力反馈设备传导给使用者。
较佳的,所述设备控制器在穿刺开始后通过工具函数库的阻力模拟算法计算力反馈数据;所述设备控制器通过工具函数库的穿刺姿态模拟算法,计算所述虚拟控制器的最终姿态。
较佳的,所述设备控制器在穿刺模式下由穿刺开始时的坐标、当前虚拟控制器的坐标、最大深度和所述力反馈对象的所有三角面模型,计算应产生的洞的坐标、角度和深度,并传递给所述力反馈对象。
较佳的,所述虚拟控制器使用力反馈设备的原生接口得到力反馈设备在物理空间中的坐标,通过坐标系转换辅助类将其转换为引擎空间的坐标;将预设好的模型渲染到场景,使所述设备控制器实时更新其坐标与角度;通过坐标系转换辅助类将虚拟控制器的引擎空间和设备空间的坐标和角度实时更新。
较佳的,所述坐标系转换辅助类提供设备空间到引擎空间的位置、角度转换,以及引擎空间到设备空间的位置、角度转换至所述设备控制器、所述虚拟控制器和所述力反馈对象。
较佳的,所述力反馈对象拾取力反馈对象下的首个模型信息并渲染到引擎,拾取力反馈对象下的首个模型三角面数据并以约定的数据格式保留以供设备控制器查询;通过原生接口的触碰和离开事件配合虚拟控制器当前的坐标,计算并发出穿刺开始和穿刺结束事件。
较佳的,所述力反馈对象包括力反馈对象材质子模块,所述力反馈对象材质子模块提供所述力反馈对象的表面力反馈材质查询、配置穿刺模式下的层数据以及提供每一层的信息查询。
较佳的,还包括蓝图数据库,所述蓝图数据库提供错误日志打印的全局函数,提供硬件与VR空间位置的标定全局功能函数,和提供获取当前全局唯一设备控制器对象,如没有则创建。
与现有技术相比,本发明具有如下的有益效果:
1、插件稳定,完成度高;
2、可用于VR项目,坐标系不变形,提供硬件在VR坐标系中的标定接口;
3、契合虚幻引擎的工作流程,可完美的为虚幻引擎提供力反馈设备的解决方案;
4、实现穿刺模式下的多层效果模拟。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明的模块示意图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
如图1所示,本发明提供的一种在虚幻引擎中调用力反馈硬件的插件系统,包括:设备控制器、力反馈设备、虚拟控制器以及力反馈对象;
设备控制器的功能如下:
生成摩擦力和阻力:采集力反馈对象的三角面引擎空间坐标与角度,通过虚拟控制器获取引擎空间的坐标与角度,通过监听力反馈对象的穿刺开始事件,当穿刺开始后计算力反馈数据,并通过控制力反馈设备传导给使用者。
计算虚拟控制器的正确姿态:通过工具函数库的穿刺姿态模拟算法,计算虚拟控制器的最终姿态使虚拟控制器的姿态在穿刺状态下正确显示。
模拟穿刺模式下的约束力:通过工具函数库的穿刺姿态模拟算法,使得当实际的力反馈设备在穿刺模式下偏离穿刺方向时,控制力反馈设备产生一个约束力,以此模拟力反馈设备在洞穴中的效果。
计算传递洞的信息:在穿刺模式下由穿刺开始时的坐标,当前虚拟控制器的坐标,最大深度,力反馈对象的所有三角面模型,计算应该产生的洞的坐标、角度和深度等信息,并将这一信息传递给力反馈对象。
初始化和清理:通过设备的原生接口初始化和清理力反馈设备。
场景唯一:通过初始化时的检测保证场景唯一,有单例模式特征。
信息查询:通过代理得方式提供一系列的其他组件信息快捷查询(虚拟控制器,力反馈对象,洞的属性等)。
生成各类组件的事件:通过特殊事件的触发将穿刺开始,穿刺结束,穿刺深度更新,触碰开始,触碰结束,表面滑动等事件暴露给项目提供了相应的逻辑实现。
虚拟控制器的功能如下:
转换力反馈设备物理空间的坐标与角度:使用力反馈设备的原生接口得到力反馈设备在物理空间中的坐标,通过坐标系转换辅助类将其转换为引擎空间的坐标。
渲染虚拟控制器到场景:将预设好的模型渲染到场景,使设备控制器实时更新其坐标与角度。
提供虚拟控制器引擎空间和设备空间的姿态查询:通过坐标系转换辅助类将虚拟控制器的引擎空间和设备空间的坐标和角度实时更新以供查询。
力反馈对象的功能如下:
渲染模型到引擎:通过拾取该组件下的首个模型信息,将其渲染到引擎。
为设备控制器提供力反馈数字模型数据:通过拾取该组件下首个模型三角面数据并以约定的数据格式保留以供设备控制器查询。
产生穿刺事件:通过原生接口的触碰和离开事件配合虚拟控制器当前的坐标,计算并发出穿刺开始和穿刺结束事件。
提供近点模拟:将一个坐标与其所有三角面信息做计算,得到一个近点并返回。
提供射线检测模拟:将起点和终点与所有三角面做射线检测计算,将结果返回。
力反馈对象包括力反馈对象材质子模块,其功能如下:
提供力反馈对象的表面力反馈材质查询(硬度,摩擦力,突破所需力,阻尼系数等信息)。
配置穿刺模式下的层数据。
提供每一层的信息查询(深度,摩擦力,硬度,力跃进幅度等)。
坐标系转换辅助类的功能如下:
提供设备空间到引擎空间的位置转换。
提供设备空间到引擎空间的角度转换。
提供引擎空间到设备空间的位置转换。
提供引擎空间到设备空间的角度转换。
蓝图函数库的功能如下:
为虚幻引擎的蓝图模块提供错误日志打印的全局函数。
为虚幻引擎的蓝图模块提供硬件与VR空间位置的标定全局功能函数。
为虚幻引擎的蓝图模块提供获取当前全局唯一设备控制器对象,如没有则创建。
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统及其各个装置、模块、单元以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统及其各个装置、模块、单元以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同功能。所以,本发明提供的系统及其各项装置、模块、单元可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置、模块、单元也可以视为硬件部件内的结构;也可以将用于实现各种功能的装置、模块、单元视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。
Claims (8)
1.一种在虚幻引擎中调用力反馈硬件的插件系统,其特征在于,包括:设备控制器、力反馈设备、虚拟控制器以及力反馈对象;
所述设备控制器采集所述力反馈对象的三角面引擎空间坐标与角度,通过所述虚拟控制器获取引擎空间的坐标与角度,通过监听力反馈对象的穿刺开始事件,当穿刺开始后计算力反馈数据,并通过控制所述力反馈设备传导给使用者。
2.根据权利要求1所述的在虚幻引擎中调用力反馈硬件的插件系统,其特征在于,所述设备控制器在穿刺开始后通过工具函数库的阻力模拟算法计算力反馈数据;所述设备控制器通过工具函数库的穿刺姿态模拟算法,计算所述虚拟控制器的最终姿态。
3.根据权利要求1所述的在虚幻引擎中调用力反馈硬件的插件系统,其特征在于,所述设备控制器在穿刺模式下由穿刺开始时的坐标、当前虚拟控制器的坐标、最大深度和所述力反馈对象的所有三角面模型,计算应产生的洞的坐标、角度和深度,并传递给所述力反馈对象。
4.根据权利要求1所述的在虚幻引擎中调用力反馈硬件的插件系统,其特征在于,所述虚拟控制器使用力反馈设备的原生接口得到力反馈设备在物理空间中的坐标,通过坐标系转换辅助类将其转换为引擎空间的坐标;将预设好的模型渲染到场景,使所述设备控制器实时更新其坐标与角度;通过坐标系转换辅助类将虚拟控制器的引擎空间和设备空间的坐标和角度实时更新。
5.根据权利要求4所述的在虚幻引擎中调用力反馈硬件的插件系统,其特征在于,所述坐标系转换辅助类提供设备空间到引擎空间的位置、角度转换,以及引擎空间到设备空间的位置、角度转换至所述设备控制器、所述虚拟控制器和所述力反馈对象。
6.根据权利要求1所述的在虚幻引擎中调用力反馈硬件的插件系统,其特征在于,所述力反馈对象拾取力反馈对象下的首个模型信息并渲染到引擎,拾取力反馈对象下的首个模型三角面数据并以约定的数据格式保留以供设备控制器查询;通过原生接口的触碰和离开事件配合虚拟控制器当前的坐标,计算并发出穿刺开始和穿刺结束事件。
7.根据权利要求1所述的在虚幻引擎中调用力反馈硬件的插件系统,其特征在于,所述力反馈对象包括力反馈对象材质子模块,所述力反馈对象材质子模块提供所述力反馈对象的表面力反馈材质查询、配置穿刺模式下的层数据以及提供每一层的信息查询。
8.根据权利要求1所述的在虚幻引擎中调用力反馈硬件的插件系统,其特征在于,还包括蓝图数据库,所述蓝图数据库提供错误日志打印的全局函数,提供硬件与VR空间位置的标定全局功能函数,和提供获取当前全局唯一设备控制器对象,如没有则创建。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810432297.7A CN108803872B (zh) | 2018-05-08 | 2018-05-08 | 在虚幻引擎中调用力反馈硬件的插件系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810432297.7A CN108803872B (zh) | 2018-05-08 | 2018-05-08 | 在虚幻引擎中调用力反馈硬件的插件系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108803872A true CN108803872A (zh) | 2018-11-13 |
CN108803872B CN108803872B (zh) | 2021-07-27 |
Family
ID=64091932
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810432297.7A Active CN108803872B (zh) | 2018-05-08 | 2018-05-08 | 在虚幻引擎中调用力反馈硬件的插件系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108803872B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109753276A (zh) * | 2018-12-29 | 2019-05-14 | 北京天际启游科技有限公司 | 一种基于虚幻引擎的控制方法及相关装置 |
CN111080802A (zh) * | 2019-12-31 | 2020-04-28 | 氧乐互动(天津)科技有限公司 | 使用Unity引擎实时控制力反馈装置参数的方法和系统 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6111577A (en) * | 1996-04-04 | 2000-08-29 | Massachusetts Institute Of Technology | Method and apparatus for determining forces to be applied to a user through a haptic interface |
US6366272B1 (en) * | 1995-12-01 | 2002-04-02 | Immersion Corporation | Providing interactions between simulated objects using force feedback |
CN101404039A (zh) * | 2008-03-28 | 2009-04-08 | 华南师范大学 | 一种虚拟手术的方法及其装置 |
CN103310072A (zh) * | 2013-06-28 | 2013-09-18 | 哈尔滨理工大学 | 基于力反馈的股骨生物力学有限元分析系统 |
CN104658394A (zh) * | 2015-02-13 | 2015-05-27 | 苏州敏行医学信息技术有限公司 | 一种穿刺虚拟教学训练系统 |
CN104794949A (zh) * | 2014-01-22 | 2015-07-22 | 东南大学 | 一种用于实现骨髓穿刺虚拟手术的二维力觉交互装置 |
CN105069301A (zh) * | 2015-08-14 | 2015-11-18 | 南通大学 | 支持力觉交互的腰椎穿刺虚拟仿真与训练系统 |
CN105302972A (zh) * | 2015-11-05 | 2016-02-03 | 北京航空航天大学 | 一种基于元球模型的软组织形变方法 |
CN105825752A (zh) * | 2016-04-22 | 2016-08-03 | 吉林大学 | 基于力反馈设备的虚拟眼角膜手术培训系统 |
CN106781941A (zh) * | 2016-11-24 | 2017-05-31 | 北京理工大学 | 一种用于模拟微创穿刺手术的方法及其系统 |
CN206523841U (zh) * | 2017-01-03 | 2017-09-26 | 北京紫熙科技发展有限公司 | 一种力反馈功能的背包电脑 |
CN107209582A (zh) * | 2014-12-16 | 2017-09-26 | 肖泉 | 高直观性人机界面的方法和装置 |
CN107928791A (zh) * | 2017-12-07 | 2018-04-20 | 上海钛米机器人科技有限公司 | 一种机器人辅助穿刺方法、系统及装置 |
-
2018
- 2018-05-08 CN CN201810432297.7A patent/CN108803872B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6366272B1 (en) * | 1995-12-01 | 2002-04-02 | Immersion Corporation | Providing interactions between simulated objects using force feedback |
US6111577A (en) * | 1996-04-04 | 2000-08-29 | Massachusetts Institute Of Technology | Method and apparatus for determining forces to be applied to a user through a haptic interface |
CN101404039A (zh) * | 2008-03-28 | 2009-04-08 | 华南师范大学 | 一种虚拟手术的方法及其装置 |
CN103310072A (zh) * | 2013-06-28 | 2013-09-18 | 哈尔滨理工大学 | 基于力反馈的股骨生物力学有限元分析系统 |
CN104794949A (zh) * | 2014-01-22 | 2015-07-22 | 东南大学 | 一种用于实现骨髓穿刺虚拟手术的二维力觉交互装置 |
CN107209582A (zh) * | 2014-12-16 | 2017-09-26 | 肖泉 | 高直观性人机界面的方法和装置 |
CN104658394A (zh) * | 2015-02-13 | 2015-05-27 | 苏州敏行医学信息技术有限公司 | 一种穿刺虚拟教学训练系统 |
CN105069301A (zh) * | 2015-08-14 | 2015-11-18 | 南通大学 | 支持力觉交互的腰椎穿刺虚拟仿真与训练系统 |
CN105302972A (zh) * | 2015-11-05 | 2016-02-03 | 北京航空航天大学 | 一种基于元球模型的软组织形变方法 |
CN105825752A (zh) * | 2016-04-22 | 2016-08-03 | 吉林大学 | 基于力反馈设备的虚拟眼角膜手术培训系统 |
CN106781941A (zh) * | 2016-11-24 | 2017-05-31 | 北京理工大学 | 一种用于模拟微创穿刺手术的方法及其系统 |
CN206523841U (zh) * | 2017-01-03 | 2017-09-26 | 北京紫熙科技发展有限公司 | 一种力反馈功能的背包电脑 |
CN107928791A (zh) * | 2017-12-07 | 2018-04-20 | 上海钛米机器人科技有限公司 | 一种机器人辅助穿刺方法、系统及装置 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109753276A (zh) * | 2018-12-29 | 2019-05-14 | 北京天际启游科技有限公司 | 一种基于虚幻引擎的控制方法及相关装置 |
CN109753276B (zh) * | 2018-12-29 | 2020-12-22 | 北京天际启游科技有限公司 | 一种基于虚幻引擎的控制方法及相关装置 |
CN111080802A (zh) * | 2019-12-31 | 2020-04-28 | 氧乐互动(天津)科技有限公司 | 使用Unity引擎实时控制力反馈装置参数的方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN108803872B (zh) | 2021-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111176224B (zh) | 使用数字孪生的工业安全监视配置 | |
US20180264646A1 (en) | Information processing method and information processing apparatus | |
JP6249936B2 (ja) | 軌道を生成する方法およびシステム | |
Klinker et al. | Confluence of computer vision and interactive graphies for augmented reality | |
JP6225538B2 (ja) | 情報処理装置、システム、情報提供方法および情報提供プログラム | |
US6963338B1 (en) | Method for refining geometric description models using images | |
WO2017113732A1 (zh) | 用户界面控件的布局方法及系统、控制方法及系统 | |
KR101774878B1 (ko) | 수치지도 오류 검출 방법 | |
US20080062170A1 (en) | Part identification image processor, program for generating part identification image, and recording medium storing the same | |
CN108803872A (zh) | 在虚幻引擎中调用力反馈硬件的插件系统 | |
US11231262B2 (en) | Dynamically adapting operation of a coordinate measuring machine | |
Yigitbas et al. | Using augmented reality for enhancing planning and measurements in the scaffolding business | |
US11062523B2 (en) | Creation authoring point tool utility to recreate equipment | |
CN114860084A (zh) | 模板化编辑的虚拟内容在mr/ar头戴设备中交互呈现方法 | |
Tormoen et al. | The Composing Hand: Musical Creation with Leap Motion and the BigBang Rubette. | |
CN117152399A (zh) | 基于变电站的模型制作方法、装置、设备和存储介质 | |
CN109325276B (zh) | 一种基于bim模型对象的校审处理方法 | |
US9639992B2 (en) | Methods and systems for multilevel editing of subdivided polygonal data | |
US20160167311A1 (en) | Design tool for a hybrid electro-mechanical 3d printer | |
CN111047716B (zh) | 三维场景的态势标绘方法、计算机存储介质及电子设备 | |
CN109613553B (zh) | 基于激光雷达确定场景中物体数量的方法、装置及系统 | |
JP6753282B2 (ja) | 組立作業ロボットの動作生成方法、動作生成プログラム、及び動作生成装置 | |
CN112100779B (zh) | 一种电气图纸的生成方法、系统、装置及介质 | |
CN115761114B (zh) | 视频生成方法、装置及计算机可读存储介质 | |
CN108921505A (zh) | 费率确定方法、电子设备及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |