CN113672308A - VR space positioning system adaptation method and device and computer equipment - Google Patents

VR space positioning system adaptation method and device and computer equipment Download PDF

Info

Publication number
CN113672308A
CN113672308A CN202110934292.6A CN202110934292A CN113672308A CN 113672308 A CN113672308 A CN 113672308A CN 202110934292 A CN202110934292 A CN 202110934292A CN 113672308 A CN113672308 A CN 113672308A
Authority
CN
China
Prior art keywords
interface
positioning system
subclass
locator
function interface
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
Application number
CN202110934292.6A
Other languages
Chinese (zh)
Other versions
CN113672308B (en
Inventor
龚成鹏
许秋子
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Realis Multimedia Technology Co Ltd
Original Assignee
Shenzhen Realis Multimedia Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Realis Multimedia Technology Co Ltd filed Critical Shenzhen Realis Multimedia Technology Co Ltd
Priority to CN202110934292.6A priority Critical patent/CN113672308B/en
Publication of CN113672308A publication Critical patent/CN113672308A/en
Application granted granted Critical
Publication of CN113672308B publication Critical patent/CN113672308B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4488Object-oriented
    • G06F9/449Object-oriented method invocation or resolution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4482Procedural
    • G06F9/4484Executing subprograms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4488Object-oriented
    • G06F9/4492Inheritance
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)

Abstract

The invention relates to a VR space positioning system adaptation method, a VR space positioning system adaptation device, computer equipment and a storage medium, wherein the method comprises the following steps: defining a locator drive control subclass and inheriting a first function interface of an associated parent class of the locator drive control subclass to set information of related equipment drive; generating an operating parameter field of the VR spatial positioning system; defining a locator device management subclass and inheriting a second function interface of an associated parent class thereof to respond to the operating parameter field and manage the interface to a thread of the VR spatial positioning system; calling a data processing interface of a locator device management subclass to receive device attitude data of the VR space positioning system and update data of a first function interface; defining a watchdog service subclass and inheriting a third function interface of an associated parent class of the watchdog service subclass to control the operation of a related device driver; the SteamVR system calls a driver interface to load a locator device management subclass and a watchdog service subclass. The method can realize the adaptation between the VR space positioning system and the SteamVR system.

Description

VR space positioning system adaptation method and device and computer equipment
Technical Field
The present invention relates to the field of system adaptation technologies, and in particular, to an adaptation method and apparatus for a VR spatial positioning system, a computer device, and a storage medium.
Background
At present, control handles, head displays and used hardware trackers of HTC software, Oculus software and IndexController software can be adapted to a SteamVR system, and due to the fact that the tracking range of the hardware trackers is small and the use process is complicated, a company with a VR space positioning system provides a scheme for replacing the hardware trackers so that the tracking capability of the game application handles and the head displays under the SteamVR system is stronger and easier to regulate.
Disclosure of Invention
The invention aims to overcome the defects of the prior art, provides an adaptation method and device of a VR space positioning system, computer equipment and a storage medium, can realize the adaptation between the VR space positioning system and a SteamVR system, and has good practical value.
In order to solve at least one of the above technical problems, an embodiment of the present invention provides a VR spatial positioning system adaptation method, where the method includes:
defining a locator drive control subclass and inheriting a first function interface under a locator drive control parent class, and then setting information of a related device drive by utilizing the first function interface;
generating an operation parameter field of the VR space positioning system and recording the operation parameter field into a configuration file of the SteamVR system;
defining a locator device management subclass and inheriting a second function interface under a locator device management parent class, and responding to the operation parameter field through the second function interface and managing thread connection between the locator device management subclass and the VR space positioning system;
creating a data processing interface in the locator device management subclass, calling the data processing interface through a connected thread to receive device attitude data in the VR space positioning system, and further executing data updating on the first function interface;
defining a watchdog service subclass and inheriting a third function interface under a watchdog service parent class, and then utilizing the third function interface to perform operation control on the related equipment driver;
and loading the locator equipment management subclass and the watchdog service subclass by operating the SteamVR system and calling a driving interface so as to complete the adaptation with the VR space positioning system.
Preferably, the inheriting positioner driver controls a first function interface under a parent class, and the setting information of the relevant device driver by using the first function interface includes:
creating a plurality of public enumeration members in the locator drive control subclass, and determining a plurality of corresponding device instances according to the public enumeration members;
the first function interface inheriting the locator drive control parent class comprises an Activate interface, a SetPose interface, a RunFrame interface and a GetSerialNumber interface, wherein the Activate interface is used for setting relevant attribute parameters of the device instances, the SetPose interface is used for setting posture information associated with the device instances, the RunFrame interface is used for sending out the posture information associated with the device instances, and the GetSerialNumber interface is used for returning serial numbers associated with the device instances currently in a data updating state.
Preferably, the plurality of public enumerated members includes a head display tracker, a left handle tracker, and a right handle tracker, and the plurality of device instances includes a head device instance corresponding to the head display tracker, a left hand device instance corresponding to the left handle tracker, and a right hand device instance corresponding to the right handle tracker.
Preferably, the generating the operating parameter field of the VR spatial location system comprises:
generating data coverage configuration information: correspondingly replacing the positioning data fed back by the plurality of trackers with a plurality of rigid body posture information in the VR space positioning system;
generating driver application configuration information: determining an access address of a VR space positioning system and a final output state of the plurality of rigid body posture information, and simultaneously recording a rigid body name associated with each rigid body posture information;
generating role binding configuration information: and binding a plurality of rigid body correspondences in the VR space positioning system with the tracker role provided by the SteamVR system.
Preferably, the responding the operating parameter field through the second function interface and managing the thread connection between the VR spatial positioning system and the self comprises:
based on that the second function interface comprises an Init interface and a clearup interface, creating a corresponding equipment instance according to the rigid body name associated with each rigid body posture information through the Init interface, and then starting a thread between the Init interface and the VR space positioning system according to the access address to track the posture information of each equipment instance;
and deleting and managing the created equipment instance in the Init interface according to user requirements through the Cleanup interface, and stopping the operation of the started thread in the Init interface according to user requirements.
Preferably, the performing of the data update to the first function interface comprises:
filtering and classifying the received equipment attitude data in the data processing interface so as to distribute corresponding rigid body attitude data to each equipment instance created by the Init interface;
based on that the first function interface comprises a SetPose interface and a RunFrame interface, calling the SetPose interface through the data processing interface and replacing the attitude information of the equipment instance matched with the internal name of the SetPose interface, and calling the RunFrame interface and sending out the attitude information after replacing the equipment instance matched with the internal name of the RunFrame interface.
Preferably, the performing operation control on the relevant device driver by using the third function interface includes:
initializing the log file of the relevant device driver through the Init interface and starting a watchdog thread to manage the running state of the relevant device driver based on the fact that the third function interface comprises an Init interface and a clearup interface;
and closing the log file driven by the relevant equipment through the Cleanup interface according to user requirements, and stopping the operation of the watchdog thread started in the Init interface according to the user requirements.
In addition, an embodiment of the present invention further provides an adaptation apparatus for a VR spatial positioning system, where the apparatus includes:
the system comprises a setting module, a positioning device driving control sub-class and a positioning device driving control parent class, wherein the setting module is used for defining a positioning device driving control sub-class, inheriting a first function interface under the positioning device driving control parent class, and then setting information of a related device driver by utilizing the first function interface;
the generation module is used for generating an operation parameter field of the VR space positioning system and recording the operation parameter field into a configuration file of the SteamVR system;
the management module is used for defining a locator device management subclass, inheriting a second function interface under a locator device management parent class, responding to the operation parameter field through the second function interface and managing thread connection between the management module and the VR space positioning system;
the updating module is used for creating a data processing interface in the locator device management subclass, calling the data processing interface through a connected thread to receive device attitude data in the VR space positioning system, and further executing data updating on the first function interface;
the control module is used for defining a watchdog service subclass, inheriting a third function interface under a watchdog service parent class, and then utilizing the third function interface to perform operation control on the related equipment driver;
and the loading module is used for loading the locator device management subclass and the watchdog service subclass through the operation of the SteamVR system and calling a driving interface so as to complete the adaptation with the VR space positioning system.
In addition, an embodiment of the present invention further provides a computer device, including: the system comprises a memory, a processor and an application program stored on the memory and capable of running on the processor, wherein the processor realizes the steps of the method of any embodiment when executing the application program.
In addition, an embodiment of the present invention further provides a computer-readable storage medium, on which an application program is stored, and when the application program is executed by a processor, the steps of any one of the above-mentioned embodiments of the method are implemented.
In the embodiment of the invention, the process of writing the operation parameter field of the VR space positioning system into the configuration file of the SteamVR system is used as a basic construction, convenience is provided for the adaptation process and the data docking process of the VR space positioning system by creating the locator drive control subclass and the locator equipment management subclass and inheriting a plurality of relevant interfaces for associated calling, and finally the adaptation between the VR space positioning system and the SteamVR system can be realized by calling the drive interfaces during the operation of the SteamVR system, so that the SteamVR space positioning system has good practical value.
Drawings
Fig. 1 is a schematic flow chart of an adaptation method of a VR spatial positioning system in an embodiment of the invention;
FIG. 2 is a schematic structural diagram of an adaptation apparatus of a VR spatial positioning system in an embodiment of the invention;
fig. 3 is a schematic structural composition diagram of a computer device in the embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
An embodiment of the present invention provides an adaptation method for a VR spatial positioning system, as shown in fig. 1, the method includes the following steps:
s101, defining a locator drive control subclass, inheriting a first function interface under a locator drive control parent class, and then utilizing the first function interface to carry out information setting on a related device driver;
specifically, a locator drive control subclass is defined as a vrtracker device driver class, and in the process of inheriting a locator drive control parent class (i.e. an itrackedddeviceservicedriver class), a plurality of public enumeration members inside the locator drive control subclass are firstly created, and a plurality of corresponding device instances are determined according to the public enumeration members; secondly, inheriting a first function interface under the locator drive control parent class, wherein the first function interface comprises an Activate interface, a SetPose interface, a RunFrame interface and a GetSerialNumber interface, the Activate interface is used for setting relevant attribute parameters of the plurality of device instances, the parameters comprise device types, control types, rendering models and corresponding serial numbers, the SetPose interface is used for setting posture information associated with the plurality of device instances, the RunFrame interface is used for issuing the posture information associated with the plurality of device instances and is realized by calling an existing TraceddDevicePoseUpdated interface, and the GetSerialNumber interface is used for returning the serial numbers associated with the device instances currently in a data updating state.
Wherein the plurality of public enumeration members comprise a head display tracker, a left handle tracker, and a right handle tracker, and the plurality of device instances comprise a head device instance corresponding to the head display tracker, a left hand device instance corresponding to the left handle tracker, and a right hand device instance corresponding to the right handle tracker.
S102, generating an operation parameter field of the VR space positioning system and recording the operation parameter field into a configuration file of the SteamVR system;
in one embodiment, the generation process of the VR spatial positioning system operation parameter field comprises:
(1) generating data coverage configuration information (i.e., TrackingOverries configuration information): correspondingly replacing the positioning data fed back by the plurality of trackers with a plurality of rigid body posture information in a VR space positioning system, wherein any one rigid body posture information comprises position information and rotation information;
specifically, Head rigid body posture information in the VR spatial positioning system is used for replacing positioning data of the turn-around display tracker, LeftHand rigid body posture information in the VR spatial positioning system is used for replacing positioning data of the left handle tracker, and RightHand rigid body posture information in the VR spatial positioning system is used for replacing positioning data of the right handle tracker.
(2) Generating drive application configuration information (i.e., Driver _ VRTracker configuration information): determining an access address of a VR space positioning system and a final output state of the plurality of rigid body posture information, and simultaneously recording a rigid body name associated with each rigid body posture information;
specifically, when the OnlyUseRigibody HeadPosition parameter in the driver application configuration information is set to true, the positioning data of the U-turn display tracker can be determined to be replaced by the position information of the Head rigid body only, otherwise, the positioning data of the U-turn display tracker can be determined to be replaced by the position information and the rotation information of the Head rigid body if the parameter is set to false; determining that the relevant posture information of any rigid body is in an output-allowed state when the outputrevRigiddiddDataInfo parameter in the drive application configuration information is set to true, and otherwise determining that the relevant posture information of any rigid body is in an output-disallowed state when the parameter is set to false; setting a Tracker RigidBydyHeadName parameter in the drive application configuration information as the name of the Head rigid body, similarly setting a Tracker RigidBydyLHandName parameter therein as the name of the LeftHandd rigid body and setting a Tracker RigidByddRhandName parameter therein as the name of the RightHandd rigid body; and setting a Tracker ServerAddress parameter in the drive application configuration information as an IP address of a host where the VR space positioning system operates.
(3) Generating role binding configuration information (i.e. tracker configuration information): and binding a plurality of rigid body correspondences in the VR space positioning system with the tracker role provided by the SteamVR system.
Specifically, based on the tracker roles provided by the SteamVR system including the handheld role, and the handheld role is further subdivided into a left-handed role and a right-handed role, the LeftHand rigid body in the VR spatial positioning system is bound with the left-handed role (i.e., trackctrontroller role _ LeftHand), and similarly, the RightHand rigid body in the VR spatial positioning system is bound with the right-handed role (i.e., trackctrontroller role _ RightHand).
S103, defining a locator device management subclass, inheriting a second function interface under a locator device management parent class, responding to the operation parameter field through the second function interface, and managing thread connection between the locator device management subclass and the VR space positioning system;
specifically, a locator device management subclass is defined as a ServerDriver _ VRTracker class, a second function interface under a legacy locator device management parent class (i.e., an iservertrackdddeviceprovider class) comprises an Init interface and a clearup interface, and at this time, a corresponding device instance can be created through the Init interface according to a rigid body name associated with posture information of each rigid body, namely, a Head device instance is created according to the name of the Head rigid body, a left-hand device instance is created according to the name of the LeftHand rigid body, a right-hand device instance is created according to the name of the RightHand rigid body, and then a thread between the locator device management subclass and a VR spatial positioning system is opened according to the access address to track posture information of each device instance; on the contrary, the device instance created in the Init interface is deleted and managed through the clearup interface according to the user requirement, and the thread started in the Init interface is stopped according to the user requirement.
S104, creating a data processing interface in the locator device management subclass, calling the data processing interface through a connected thread to receive device attitude data in the VR space positioning system, and further executing data updating of the first function interface;
specifically, after receiving device posture data by calling a data processing interface (namely, a recvtickerdata interface) created in the locator device management subclass, preferentially executing filtering and classifying work so as to allocate corresponding rigid body posture data to each device instance created by the Init interface; secondly, based on that the first function interface comprises a SetPose interface and a RunFrame interface, calling the SetPose interface through the data processing interface and replacing the attitude information of the equipment instance matched with the internal name of the SetPose interface, executing according to the set OnlyUseRigiddHeadposition parameter if the information replacement of the head equipment instance is related in the process, calling the RunFrame interface through the data processing interface and issuing the attitude information after replacing the equipment instance matched with the internal name of the RunFrame interface, wherein the feasibility of the process depends on the set OutPuputRevRidgedDataInfo parameter.
S105, defining a watchdog service subclass, inheriting a third function interface under a watchdog service parent class, and then utilizing the third function interface to perform operation control on the related equipment driver;
specifically, a watchdog service subclass is defined as a watchdog driver _ VRTracker class, a third function interface under the watchdog service parent class (namely, IVRWatchdogProvider class) is inherited by the watchdog service subclass and comprises an Init interface and a clearup interface, at this time, a log file of the related device driver can be initialized through the Init interface, and a watchdog thread is opened to manage the running state of the related device driver; and conversely, closing the log file driven by the related equipment through the Cleanup interface according to the user requirement, and stopping the operation of the watchdog thread started in the Init interface according to the user requirement.
S106, loading the locator device management subclass and the watchdog service subclass through the operation of the SteamVR system and calling a driving interface so as to complete the adaptation with the VR space positioning system.
Specifically, when the SteamVR system runs, preferentially creating a global static variable in the locator device management sub-class as g _ serverDriveNull and a global static variable in the watchdog service sub-class as g _ watchdog DriveNull; secondly, after the rationality of the locator device management parent class and the watchdog service parent class is ensured, a driving interface (namely an HmdDriveFactory interface) is called to load g _ serverNull and g _ watchdog DriveNull for operation.
Further, the process of ensuring the reasonableness of the locator device to manage the parent and the watchdog service parent is embodied as follows: and determining that the version number of the locator device management parent class is consistent with the corresponding interface parameter, and determining that the version number of the watchdog service parent class is consistent with the corresponding interface parameter, wherein the two mentioned version numbers are both directly defined by a software development kit of the SteamVR system, and the two mentioned interface parameters are both automatically transmitted by the SteamVR system during operation.
In the embodiment of the invention, the process of writing the operation parameter field of the VR space positioning system into the configuration file of the SteamVR system is used as a basic construction, convenience is provided for the adaptation process and the data docking process of the VR space positioning system by creating the locator drive control subclass and the locator equipment management subclass and inheriting a plurality of relevant interfaces for associated calling, and finally the adaptation between the VR space positioning system and the SteamVR system can be realized by calling the drive interfaces during the operation of the SteamVR system, so that the SteamVR space positioning system has good practical value.
In an embodiment, the present invention further provides an apparatus for adapting a VR spatial positioning system, as shown in fig. 2, the apparatus including:
the setting module 201 is configured to define a locator drive control subclass, inherit a first function interface under a locator drive control parent class, and perform information setting on a related device driver by using the first function interface;
the generation module 202 is used for generating an operation parameter field of the VR space positioning system and recording the operation parameter field into a configuration file of the SteamVR system;
the management module 203 is used for defining a locator device management subclass, inheriting a second function interface under a locator device management parent class, responding to the operation parameter field through the second function interface and managing thread connection between the management module and the VR space positioning system;
an update module 204, configured to create a data processing interface in the locator device management subclass, call the data processing interface through a connected thread to receive device attitude data in the VR spatial positioning system, and further perform data update on the first function interface;
the control module 205 is configured to define a watchdog service subclass, inherit a third function interface under a watchdog service parent class, and perform operation control on the relevant device driver by using the third function interface;
a loading module 206, configured to load the locator device management sub-class and the watchdog service sub-class through a steadvr system operation and call a driving interface, so as to complete adaptation with the VR spatial positioning system.
For a specific definition of the VR spatial positioning system adaptation apparatus, reference may be made to the above definition of a VR spatial positioning system adaptation method, which is not described herein again. The modules in the adaptation device of the VR spatial positioning system can be wholly or partially implemented by software, hardware and a combination thereof. The modules can be embedded in a hardware form or independent from a processor in the computer device, and can also be stored in a memory in the computer device in a software form, so that the processor can call and execute operations corresponding to the modules.
In an embodiment of the present invention, an application program is stored on a computer-readable storage medium, and when the application program is executed by a processor, the application program implements a VR spatial positioning system adapting method in any one of the above embodiments. The computer-readable storage medium includes, but is not limited to, any type of disk including floppy disks, hard disks, optical disks, CD-ROMs, and magneto-optical disks, ROMs (Read-Only memories), RAMs (Random AcceSS memories), EPROMs (EraSable Programmable Read-Only memories), EEPROMs (Electrically EraSable Programmable Read-Only memories), flash memories, magnetic cards, or optical cards. That is, a storage device includes any medium that stores or transmits information in a form readable by a device (e.g., a computer, a cellular phone), and may be a read-only memory, a magnetic or optical disk, or the like.
Fig. 3 is a schematic structural diagram of a computer device in the embodiment of the present invention.
An embodiment of the present invention further provides a computer device, as shown in fig. 3. The computer apparatus includes a processor 302, a memory 303, an input unit 304, a display unit 305, and the like. Those skilled in the art will appreciate that the device configuration means shown in fig. 3 do not constitute a limitation of all devices and may include more or less components than those shown, or some components in combination. The memory 303 may be used to store the application 301 and various functional modules, and the processor 302 executes the application 301 stored in the memory 303, thereby performing various functional applications of the device and data processing. The memory may be internal or external memory, or include both internal and external memory. The memory may comprise read-only memory (ROM), Programmable ROM (PROM), Electrically Programmable ROM (EPROM), Electrically Erasable Programmable ROM (EEPROM), flash memory, or random access memory. The external memory may include a hard disk, a floppy disk, a ZIP disk, a usb-disk, a magnetic tape, etc. The disclosed memory includes, but is not limited to, these types of memory. The disclosed memory is by way of example only and not by way of limitation.
The input unit 304 is used for receiving input of signals and receiving keywords input by a user. The input unit 304 may include a touch panel and other input devices. The touch panel can collect touch operations of a user on or near the touch panel (for example, operations of the user on or near the touch panel by using any suitable object or accessory such as a finger, a stylus and the like) and drive the corresponding connecting device according to a preset program; other input devices may include, but are not limited to, one or more of a physical keyboard, function keys (e.g., play control keys, switch keys, etc.), a trackball, a mouse, a joystick, and the like. The display unit 305 may be used to display information input by a user or information provided to the user and various menus of the terminal device. The display unit 305 may take the form of a liquid crystal display, an organic light emitting diode, or the like. The processor 302 is a control center of the terminal device, connects various parts of the entire device using various interfaces and lines, and performs various functions and processes data by running or executing software programs and/or modules stored in the memory 303 and calling data stored in the memory.
As one embodiment, the computer device includes: one or more processors 302, a memory 303, one or more applications 301, wherein the one or more applications 301 are stored in the memory 303 and configured to be executed by the one or more processors 302, the one or more applications 301 configured to perform a VR spatial positioning system adaptation method in any of the above embodiments.
In addition, the above detailed description is provided for an adaptation method, an apparatus, a computer device and a storage medium of a VR spatial positioning system according to an embodiment of the present invention, and a specific example is used herein to explain the principle and the implementation of the present invention, and the description of the above embodiment is only used to help understanding the method and the core idea of the present invention; meanwhile, for a person skilled in the art, according to the idea of the present invention, there may be variations in the specific embodiments and the application scope, and in summary, the content of the present specification should not be construed as a limitation to the present invention.

Claims (10)

1. A VR spatial positioning system adaptation method, the method comprising:
defining a locator drive control subclass and inheriting a first function interface under a locator drive control parent class, and then setting information of a related device drive by utilizing the first function interface;
generating an operation parameter field of the VR space positioning system and recording the operation parameter field into a configuration file of the SteamVR system;
defining a locator device management subclass and inheriting a second function interface under a locator device management parent class, and responding to the operation parameter field through the second function interface and managing thread connection between the locator device management subclass and the VR space positioning system;
creating a data processing interface in the locator device management subclass, calling the data processing interface through a connected thread to receive device attitude data in the VR space positioning system, and further executing data updating on the first function interface;
defining a watchdog service subclass and inheriting a third function interface under a watchdog service parent class, and then utilizing the third function interface to perform operation control on the related equipment driver;
and loading the locator equipment management subclass and the watchdog service subclass by operating the SteamVR system and calling a driving interface so as to complete the adaptation with the VR space positioning system.
2. The VR spatial positioning system adaptation method of claim 1, wherein the legacy positioner driver controls a first function interface under a parent class, and the re-using the first function interface to perform information setting on the relevant device driver comprises:
creating a plurality of public enumeration members in the locator drive control subclass, and determining a plurality of corresponding device instances according to the public enumeration members;
the first function interface inheriting the locator drive control parent class comprises an Activate interface, a SetPose interface, a RunFrame interface and a GetSerialNumber interface, wherein the Activate interface is used for setting relevant attribute parameters of the device instances, the SetPose interface is used for setting posture information associated with the device instances, the RunFrame interface is used for sending out the posture information associated with the device instances, and the GetSerialNumber interface is used for returning serial numbers associated with the device instances currently in a data updating state.
3. The VR spatial positioning system adaptation method of claim 2, wherein the number of publicly enumerated members includes a head-display tracker, a left-handle tracker, and a right-handle tracker, and the number of device instances includes a head device instance corresponding to the head-display tracker, a left-hand device instance corresponding to the left-handle tracker, and a right-hand device instance corresponding to the right-handle tracker.
4. The VR spatial positioning system adaptation method of claim 1, wherein generating the operational parameter fields for the VR spatial positioning system comprises:
generating data coverage configuration information: correspondingly replacing the positioning data fed back by the plurality of trackers with a plurality of rigid body posture information in the VR space positioning system;
generating driver application configuration information: determining an access address of a VR space positioning system and a final output state of the plurality of rigid body posture information, and simultaneously recording a rigid body name associated with each rigid body posture information;
generating role binding configuration information: and binding a plurality of rigid body correspondences in the VR space positioning system with the tracker role provided by the SteamVR system.
5. The VR spatial positioning system adaptation method of claim 4, wherein the responding to the operating parameter fields via the second functional interface while managing the threaded connection between itself and the VR spatial positioning system comprises:
based on that the second function interface comprises an Init interface and a clearup interface, creating a corresponding equipment instance according to the rigid body name associated with each rigid body posture information through the Init interface, and then starting a thread between the Init interface and the VR space positioning system according to the access address to track the posture information of each equipment instance;
and deleting and managing the created equipment instance in the Init interface according to user requirements through the Cleanup interface, and stopping the operation of the started thread in the Init interface according to user requirements.
6. The VR spatial positioning system adaptation method of claim 5, wherein the performing the data update to the first functional interface comprises:
filtering and classifying the received equipment attitude data in the data processing interface so as to distribute corresponding rigid body attitude data to each equipment instance created by the Init interface;
based on that the first function interface comprises a SetPose interface and a RunFrame interface, calling the SetPose interface through the data processing interface and replacing the attitude information of the equipment instance matched with the internal name of the SetPose interface, and calling the RunFrame interface and sending out the attitude information after replacing the equipment instance matched with the internal name of the RunFrame interface.
7. The VR spatial positioning system adaptation method of claim 1, wherein the using the third function interface to operatively regulate the associated device driver comprises:
initializing the log file of the relevant device driver through the Init interface and starting a watchdog thread to manage the running state of the relevant device driver based on the fact that the third function interface comprises an Init interface and a clearup interface;
and closing the log file driven by the relevant equipment through the Cleanup interface according to user requirements, and stopping the operation of the watchdog thread started in the Init interface according to the user requirements.
8. An apparatus for adapting a VR spatial positioning system, the apparatus comprising:
the system comprises a setting module, a positioning device driving control sub-class and a positioning device driving control parent class, wherein the setting module is used for defining a positioning device driving control sub-class, inheriting a first function interface under the positioning device driving control parent class, and then setting information of a related device driver by utilizing the first function interface;
the generation module is used for generating an operation parameter field of the VR space positioning system and recording the operation parameter field into a configuration file of the SteamVR system;
the management module is used for defining a locator device management subclass, inheriting a second function interface under a locator device management parent class, responding to the operation parameter field through the second function interface and managing thread connection between the management module and the VR space positioning system;
the updating module is used for creating a data processing interface in the locator device management subclass, calling the data processing interface through a connected thread to receive device attitude data in the VR space positioning system, and further executing data updating on the first function interface;
the control module is used for defining a watchdog service subclass, inheriting a third function interface under a watchdog service parent class, and then utilizing the third function interface to perform operation control on the related equipment driver;
and the loading module is used for loading the locator device management subclass and the watchdog service subclass through the operation of the SteamVR system and calling a driving interface so as to complete the adaptation with the VR space positioning system.
9. A computer device comprising a memory, a processor and an application program stored on the memory and executable on the processor, wherein the steps of the method of any one of claims 1 to 7 are implemented when the application program is executed by the processor.
10. A computer-readable storage medium, on which an application program is stored, which when executed by a processor implements the steps of the method of any one of claims 1 to 7.
CN202110934292.6A 2021-08-13 2021-08-13 VR space positioning system adaptation method, device and computer equipment Active CN113672308B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110934292.6A CN113672308B (en) 2021-08-13 2021-08-13 VR space positioning system adaptation method, device and computer equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110934292.6A CN113672308B (en) 2021-08-13 2021-08-13 VR space positioning system adaptation method, device and computer equipment

Publications (2)

Publication Number Publication Date
CN113672308A true CN113672308A (en) 2021-11-19
CN113672308B CN113672308B (en) 2023-10-20

Family

ID=78542908

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110934292.6A Active CN113672308B (en) 2021-08-13 2021-08-13 VR space positioning system adaptation method, device and computer equipment

Country Status (1)

Country Link
CN (1) CN113672308B (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108446149A (en) * 2018-02-28 2018-08-24 北京凌宇智控科技有限公司 A kind of third party's dynamic bank interface hold-up interception method and system
US20190066389A1 (en) * 2017-08-29 2019-02-28 Target Brands, Inc. Photorealistic scene generation system and method
US20190179509A1 (en) * 2017-12-13 2019-06-13 Aurelius, Inc. Systems, devices, and methods for augmented reality
CN110489184A (en) * 2018-05-14 2019-11-22 北京凌宇智控科技有限公司 A kind of virtual reality scenario implementation method and its system based on UE4 engine

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190066389A1 (en) * 2017-08-29 2019-02-28 Target Brands, Inc. Photorealistic scene generation system and method
US20190179509A1 (en) * 2017-12-13 2019-06-13 Aurelius, Inc. Systems, devices, and methods for augmented reality
CN108446149A (en) * 2018-02-28 2018-08-24 北京凌宇智控科技有限公司 A kind of third party's dynamic bank interface hold-up interception method and system
CN110489184A (en) * 2018-05-14 2019-11-22 北京凌宇智控科技有限公司 A kind of virtual reality scenario implementation method and its system based on UE4 engine

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
S. BOVET 等: "Using Traditional Keyboards in VR: SteamVR Developer Kit and Pilot Game User Study", 《2018 IEEE GAMES, ENTERTAINMENT, MEDIA CONFERENCE (GEM)》, pages 1 - 9 *
VRUNSOFTYANLZ: "SteamVR简介(Yanlz+Steam+VR+Unity+AR+MR+XR+立钻哥哥+==)", pages 1 - 19, Retrieved from the Internet <URL:https://blog.csdn.net/VRunSoftYanlz/article/details/86484254> *
王澍田: "面向小麦可视化的沉浸式虚拟场景的研究与实现", 《中国优秀硕士学位论文全文数据库 农业科技辑》, pages 043 - 18 *

Also Published As

Publication number Publication date
CN113672308B (en) 2023-10-20

Similar Documents

Publication Publication Date Title
CN104471557B (en) The optimization of dynamic language performs
KR102193404B1 (en) Incrementally compiling software artifacts from an interactive development environment
CN111400244B (en) Method and device for batch processing of resources, electronic equipment and storage medium
CN112114832B (en) Vehicle upgrade control method, terminal device, vehicle, and computer storage medium
CN110520844A (en) Cloud management platform, virtual machine management method and its system
CN109213517B (en) Multi-version application program online management and switching system based on VxWorks operating system
CN108388623B (en) ER relationship generation method and device, computer equipment and storage medium
CN108958873B (en) Configuration method, device, medium and computer equipment for status bar immersive effect
CN111989656A (en) Configurable recovery state
US10325574B2 (en) Simultaneous display method, system, equipment based on QT embedded
JP2023070148A (en) Systems and methods for dynamically binding robotic process automation (RPA) robots to resources
CN104137074B (en) The optimization that resource uses in multi-environment computing system
CN116301596A (en) Software RAID construction method, device, equipment and storage medium
US11030006B2 (en) Apparatus and method of securely and efficiently interfacing with a cloud computing service
CN115455329A (en) B/S architecture cross-platform cross-multi-terminal RPA designer system and implementation method
CN114153477B (en) PCIE driving card firmware upgrading method, device, system, equipment and medium
US9086940B2 (en) Inclusion of customer-specific transport requests in software architecture update procedures
CN113672308A (en) VR space positioning system adaptation method and device and computer equipment
US7739690B2 (en) Meta-container for model-based distributed applications
CN110248023B (en) Intelligent terminal control method, device, equipment and medium
CN113900729B (en) Tracking equipment parameter configuration method and device of SteamVR system
US20150112591A1 (en) Apparatus and method for partially updating a navigation data while driving
CN113821219B (en) Method and system for realizing application program containerization
US20140157250A1 (en) Downtime reduction for integration of customer transport requests into a software architecture update procedure
CN112398933B (en) Cloud native application release method, system, equipment and storage medium

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