Patent Description:
In the XR technology, a tracking system that detects positions and orientations of various devices such as a head-mounted display and a controller is used. A tracking system according to one example is configured to include a plurality of cameras and to determine the position and orientation of each device in the XR space on the basis of an image of each device imaged by each camera.

In addition, before starting to use the tracking system, calibration is performed to match the position and orientation of a device displayed in the XR space with the position and orientation of a real device. Patent Documents <CIT> and <CIT> describe examples of the calibration.

<CIT> discloses a calibration platform, which displays, via an optical see-through head-mounted display, a virtual image having at least one feature. The calibration platform determines, based on information relating to a gaze of a user wearing the OST-HMD, that the user performed a voluntary eye blink to indicate that the at least one feature of the virtual image appears to the user to be aligned with at least one point on a three-dimensional real-world object. The calibration platform may record an alignment measurement based on a position of the at least one point on the three-dimensional real-world object in a real-world coordinate system based on a time when the user performed the voluntary eye blink. Accordingly, the alignment measurement may be used to generate a function providing a mapping between three-dimensional points in the real-world coordinate system and corresponding points in a display space of the OST-HMD.

In recent years, incidentally, the types of devices compatible with the XR technology have been diversified, and there has accordingly been a need for simultaneously using a plurality of devices manufactured by different vendors in a single XR space. However, devices that can be used in the XR space constructed using a tracking system of a certain vendor are limited to those compatible with the tracking system, and devices compatible with tracking systems of other vendors cannot easily be used in the XR space constructed using a tracking system of a certain vendor.

Therefore, one of the objects of the present invention is to provide a computer, a method, and a storage device storing a program that enable easy use of a device compatible with a second tracking system in an XR space according to a first tracking system.

A computer according to the present invention is defined in the appended claims.

A method according to the present invention is also defined in the appended claims.

A storage device according to the present invention is also defined in the appended claims.

According to the present invention, it is possible to provide a computer, a method, and a storage device storing a program that enable easy use of a device compatible with a second tracking system in an XR space according to a first tracking system.

Hereinafter, embodiments of the present disclosure will be described in detail with reference to the attached drawings. It is noted that the first embodiment, illustrated by <FIG>, is outside the scope of the claimed invention but is useful for an understanding of the invention and of individual aspects thereof. The claimed invention is instead represented by the second embodiment and its accompanying <FIG>.

<FIG> is a schematic block diagram illustrating functional blocks of a 3D object rendering system <NUM> according to a first embodiment of the present disclosure. In addition, <FIG> is a diagram illustrating an entire configuration of the 3D object rendering system <NUM>.

First, referring to <FIG>, the 3D object rendering system <NUM> is configured to have a computer <NUM>, cameras 11a and 11b, a head-mounted display <NUM>, cameras 13a to 13c, a coupling device <NUM>, and controllers C1 and C2. In addition, the computer <NUM> is functionally configured to have an application unit <NUM>, an XR system unit <NUM>, a tracking processing unit <NUM>, a device information acquisition unit <NUM>, and a coordinate conversion processing unit <NUM>.

The cameras 11a and 11b, the head-mounted display <NUM>, the coupling device <NUM>, and the controller C1 are configured to be capable of directly communicating with the computer <NUM> in a wired or wireless manner. In addition, the cameras 13a to 13c and the controller C2 are configured to be capable of directly communicating with the coupling device <NUM> in a wired or wireless manner and configured to be capable of communicating with the computer <NUM> via the coupling device <NUM>. The cameras 11a and 11b and the XR system unit <NUM> configure a tracking system T1 for tracking the head-mounted display <NUM> and the controller C1 (detecting positions and tilts thereof), and the cameras 13a to 13c, the coupling device <NUM>, and the tracking processing unit <NUM> configure a tracking system T2 for tracking the controller C2 (detecting a position and a tilt thereof).

Next, referring to <FIG>, the 3D object rendering system <NUM> is configured to further have a position detection device <NUM>. The position detection device <NUM> is a device having a touch surface and having a function of detecting a position of an indicator on the touch surface. As an example, the position detection device <NUM> is a digitizer connected to the computer <NUM> in a wired or wireless manner and is configured to supply the detected position of the indicator to the computer <NUM> every time. It should be noted that, although the position detection device <NUM> and the computer <NUM> are depicted as separate devices in <FIG>, the position detection device <NUM> may be a device built in the computer <NUM>. In this case, a display of the computer <NUM> may also serve as the touch surface.

The cameras 11a and 11b and the cameras 13a to 13c are arranged in such a manner as to be able to photograph a space above a top plate of a desk where a user is seated. More specifically, the cameras 11a and 11b are installed above opposite ends of one side on a back side of the desk when viewed from the user. The camera 13a is installed above a center of the one side on the back side of the desk when viewed from the user. The cameras 13b and 13c are installed above positions closer to the user than a center of each side on both sides of the desk when viewed from the user. The coupling device <NUM> is built in the camera 13a.

The controllers C1 and C2 are devices each configured to be held by a hand of the user to be used. In addition, the head-mounted display <NUM> is a type of display device that is mounted to the head of the user, and is also configured to be capable of displaying a 3D video by projecting different videos to the left and right eyes.

The positions and tilts of the controller C1 and the head-mounted display <NUM> are detected by the tracking system T1 illustrated in <FIG>. Specifically, the XR system unit <NUM> configuring the tracking system T1 detects the position and tilt of each of the controller C1 and the head-mounted display <NUM> on the basis of images photographed by the cameras 11a and 11b. As an example, the position detected by the XR system unit <NUM> is represented by coordinates in a coordinate system (a coordinate system illustrated in <FIG> with coordinate axes X<NUM>, Y<NUM>, and Z<NUM>; hereinafter referred to as a "coordinate system <NUM>") having a predetermined position of the head-mounted display <NUM> as the origin, and the tilt is represented by a quaternion indicating rotation in the coordinate system <NUM>.

On the other hand, the position and tilt of the controller C2 are detected by the tracking system T2 illustrated in <FIG>. Although the details will be described later, a plurality of trackers (a plurality of points as an example) are provided on a surface of the controller C2, and the tracking processing unit <NUM> configuring the tracking system T2 detects the position and tilt of the controller C2 by specifying at least three or more positions of these trackers on the basis of images photographed by the cameras 13a to 13c. As an example, the position detected by the tracking processing unit <NUM> is represented by coordinates in a coordinate system (a coordinate system illustrated in <FIG> with coordinate axes X<NUM>, Y<NUM>, and Z<NUM>; hereinafter referred to as a "coordinate system <NUM>") having a predetermined position of the coupling device <NUM> as the origin, and the tilt is represented by a rotation matrix indicating rotation in the coordinate system <NUM>. However, as with the tilt detected by the XR system unit <NUM>, the tilt of the controller C2 may be represented by a quaternion indicating the rotation in the coordinate system <NUM>.

The computer <NUM> is configured using a notebook-type personal computer arranged in a center of the desk in the example of <FIG>. However, the computer <NUM> need not be arranged in the center of the desk and may be arranged at a position communicable with the cameras 11a and 11b, the head-mounted display <NUM>, the coupling device <NUM>, and the controller C1. In addition, the computer <NUM> can be configured using various types of computers such as a desktop-type personal computer, a tablet-type personal computer, a smartphone, and a server computer, in addition to the notebook-type personal computer.

<FIG> is a diagram illustrating a basic hardware configuration of the computer <NUM>. As illustrated in the drawing, the computer <NUM> is configured to have a configuration in which a processor <NUM>, a storage device <NUM>, a communication device <NUM>, an input device <NUM>, and an output device <NUM> are connected to each other via a bus <NUM>.

The processor <NUM> is a central processing unit that reads and executes programs stored in the storage device <NUM>. Each of the application unit <NUM>, the XR system unit <NUM>, the tracking processing unit <NUM>, the device information acquisition unit <NUM>, and the coordinate conversion processing unit <NUM> illustrated in <FIG> is realized by the processor <NUM> reading and executing programs stored in the storage device <NUM>. The processor <NUM> is configured to be capable of communicating with each unit in the server via the bus <NUM>, and controls each unit and processes data stored in the storage device <NUM> in accordance with the description of the program to be executed.

The storage device <NUM> is a device that temporarily or permanently stores various programs and various kinds of data. The storage device <NUM> is generally configured using a combination of a plurality of storage devices, such as a main storage device configured using a dynamic random access memory (DRAM), a static random access memory (SRAM), or the like and an auxiliary storage device configured using a hard disk, a solid state drive (SSD), or the like.

The communication device <NUM> is a device that executes communication with external communication devices (including the cameras 11a and 11b, the head-mounted display <NUM>, the coupling device <NUM>, and the controller C1 illustrated in <FIG>) under the control of the processor <NUM>. A method of the communication performed by the communication device <NUM> is not particularly limited, and examples include a wired or wireless wide area network (WAN) or local area network (LAN), or short-range wireless communication such as Bluetooth (registered trademark).

The input device <NUM> is a device that accepts input from the user and includes various input means such as a mouse, a keyboard, and a touch panel. Contents of the user input accepted by the input device <NUM> are transmitted to the processor <NUM> via the bus <NUM>. The output device <NUM> is a device that performs output to the user under the control of the processor <NUM> and includes various output means such as a display and a speaker.

Referring to <FIG> again, the XR system unit <NUM> is software for realizing an XR space in cooperation with the cameras 11a and 11b, the head-mounted display <NUM>, and the controller C1 and is configured to have, in addition to the function of detecting the position and tilt of each of the head-mounted display <NUM> and the controller C1 as described above, a function of acquiring an operating state of an operation switch provided on a surface of the controller C1 or the like and a function of rendering the XR space on a display surface of the head-mounted display <NUM> on the basis of an instruction of the application unit <NUM>.

The application unit <NUM> is, for example, an application compatible with the XR and has a function of providing the user with various experiences in the XR space through the XR system unit <NUM>. As an example, the application unit <NUM> is sold in one set together with the XR system unit <NUM>, the cameras 11a and 11b, the head-mounted display <NUM>, and the controller C1. The application unit <NUM> constructs an XR space on the basis of a program preliminarily stored in the storage device <NUM> and renders a 3D object representing the controller C1 in the XR space on the basis of the position and tilt of the controller C1 detected by the XR system unit <NUM>. In addition, the XR space is controlled according to the operating state of the operation switch acquired by the XR system unit <NUM>.

The application unit <NUM> supplies information of the controlled XR space to the XR system unit <NUM>. The XR system unit <NUM> sets a viewpoint of the user in the XR space on the basis of the detected position and tilt of the head-mounted display <NUM> and supplies a video viewed from this viewpoint to the head-mounted display <NUM>. The head-mounted display <NUM> displays the video thus supplied, so that the user can have various experiences in the XR space.

The tracking processing unit <NUM> is configured to have the function of detecting the position and tilt of the controller C2 as described above and a function of acquiring an operating state of an operation switch provided on the surface of the controller C2 or the like. These pieces of data detected or acquired by the tracking processing unit <NUM> are supplied to the application unit <NUM> via the device information acquisition unit <NUM> and the coordinate conversion processing unit <NUM>.

The device information acquisition unit <NUM> is software created by a software development kit supplied by a vendor of the application unit <NUM> and serves to supply the application unit <NUM> with the data detected or acquired by the tracking processing unit <NUM>. The coordinate conversion processing unit <NUM> is plug-in software for the application unit <NUM> and serves to convert the position and tilt (the position and tilt in the coordinate system <NUM>) supplied from the tracking processing unit <NUM> into a position and a tilt (a position and a tilt in the coordinate system <NUM>) in the XR space. A specific method of the conversion (coordinate conversion equation) is determined by a calibration process performed by the application unit <NUM> and the device information acquisition unit <NUM>. Details of the calibration process will be described in more detail later.

<FIG> is a diagram illustrating an appearance of the controller C2, and <FIG> is a diagram illustrating an internal configuration of the controller C2. First, referring to <FIG>, the controller C2 is a device having a shape in which a handle C2b is mounted to a center portion of a pen C2a. As illustrated in <FIG>, the user uses the controller C2 in a state where the user grips a portion of the handle C2b.

As illustrated in <FIG>, the controller C2 is configured to have a control unit <NUM>, a core body <NUM>, a pen tip electrode <NUM>, pressure sensors <NUM> and <NUM>, a battery <NUM>, a wireless communication unit <NUM>, an operation switch <NUM>, and a plurality of light emitting units <NUM>.

The control unit <NUM> is a microprocessor that controls the entire controller C2. The core body <NUM> is a rod-like object arranged along a pen axis of the pen C2a, and a tip end thereof configures a pen tip of the pen C2a. A terminal end of the core body <NUM> is in contact with the pressure sensor <NUM>. Through this contact, the pressure sensor <NUM> serves to acquire a pressure applied to the pen tip. The control unit <NUM> is configured to acquire the pressure acquired by the pressure sensor <NUM> as a pen pressure. The pressure sensor <NUM> is provided on the surface of the controller C2 and is a sensor for acquiring a force with which the user grips the controller C2. The control unit <NUM> is configured to acquire the force acquired by the pressure sensor <NUM> as a pen pressure. Accordingly, the control unit <NUM> can acquire the pen pressure even when using the controller C2 in a state where the pen tip is not in contact with a hard surface such as the touch surface.

The pen tip electrode <NUM> is a conductor arranged near the tip end of the core body <NUM> and is electrically connected to the control unit <NUM>. The control unit <NUM> is configured to be capable of transmitting and receiving signals to and from the position detection device <NUM> in both directions or transmitting signals to the position detection device <NUM>, via the pen tip electrode <NUM>. The position detection device <NUM> is configured to acquire the position of the controller C2 on the touch surface by using the signal thus received from the controller C2 and to sequentially transmit information indicating the acquired position to the computer <NUM>. The signal transmitted by the controller C2 to the position detection device <NUM> may include a value indicating the pen pressure acquired by the control unit <NUM> from the pressure sensor <NUM>.

The control unit <NUM> is also configured to transmit, separately from the transmission of the signal to the position detection device <NUM>, a value indicating the pen pressure acquired from the pressure sensor <NUM> to the coupling device <NUM> via the wireless communication unit <NUM>. The coupling device <NUM> transmits the value indicating the pen pressure acquired from the pressure sensor <NUM> to the computer <NUM>. In this way, the pen pressure can be generated even when the controller C2 is used in the air.

The battery <NUM> serves to supply an operating power of the controller C2 (including a power needed to make the light emitting units <NUM> to emit light). The wireless communication unit <NUM> is a communication unit for communicating with the coupling device <NUM> illustrated in <FIG> by, for example, short-range wireless communication such as Bluetooth (registered trademark). The control unit <NUM> communicates with the coupling device <NUM> via the wireless communication unit <NUM>.

The operation switch <NUM> is a switch configured to be capable of being turned on and off by the user and is arranged on, for example, a surface of the handle C2b as exemplified in <FIG>. However, an arrangement position of the operation switch <NUM> is not particularly limited as long as the user can operate. The tracking processing unit <NUM> is configured to acquire the operating state of the operation switch <NUM>.

The light emitting units <NUM> are, for example, light emitting diodes (LEDs) that emit light in an infrared region, and are arranged at various places on the surface of the controller C2 as exemplified in <FIG>. The light emitting units <NUM> configure the trackers described above, and the tracking processing unit <NUM> detects the position and tilt of the controller C2 by specifying positions of at least three or more of the light emitting units <NUM> on the basis of the images photographed by the cameras 13a to 13c. The controller C2 may be provided with at least eight light emitting units <NUM> so that the tracking processing unit <NUM> can specify the positions of at least three or more of the light emitting units <NUM> even in a case where a part of the controller C2 is hidden in the hand of the user and regardless of an angle of the controller C2.

Hereinafter, the calibration process performed by the application unit <NUM> and the device information acquisition unit <NUM> will be described in detail.

<FIG> is a flow chart illustrating a processing flow of the calibration process performed by the application unit <NUM> and the device information acquisition unit <NUM>. In this process, first, a calibration execution instruction is accepted by the application unit <NUM> (Step S1). In one example, this instruction is made in the XR space by the user using the controller C1. Next, the application unit <NUM> renders a virtual device <NUM> representing the controller C2 in the XR space defined by the coordinate system <NUM> (Step S2). A position of the virtual device <NUM> in the coordinate system <NUM> in this rendering may preliminarily be set.

<FIG> is a diagram illustrating an example of the display of the virtual device <NUM> rendered in Step S2. As an example, the virtual device <NUM> is displayed on the head-mounted display <NUM>. As illustrated in the drawing, the virtual device <NUM> has the same external shape as the controller C2. In a case where the XR space is a VR space, the controller C2 illustrated in the drawing is not visible to the user wearing the head-mounted display <NUM>. The user moves the hand holding the controller C2 and uses the feeling of the hand to align the controller C2 with the position of the virtual device <NUM> being rendered in the XR space. Then, the operation switch <NUM> is pressed down in this state.

Here, an orientation of the virtual device <NUM> rendered in Step S2 is preferably set in such a manner that a portion corresponding to the pen C2a is horizontal or vertical. An error of a rotation matrix A to be described later can thus be reduced because the position alignment by the user is easier than a case where the portion corresponding to the pen C2a is inclined.

Referring back to <FIG>, the device information acquisition unit <NUM> waits for a predetermined operation by the user while the virtual device <NUM> is displayed (Step S3). The predetermined operation is, as an example, a pressing operation of the operation switch <NUM>. The device information acquisition unit <NUM> having detected the predetermined operation performs a series of processes in cooperation with the application unit <NUM> to calculate a coordinate conversion equation (Steps S4 to S6) and set the calculated coordinate conversion equation to the coordinate conversion processing unit <NUM> (Step S7).

Specifically, the device information acquisition unit <NUM> first specifies coordinates VHP in the coordinate system <NUM> for at least three of the plurality of trackers (light emitting units <NUM>) provided on the controller C2 (Step S4). In addition, the device information acquisition unit <NUM> causes the application unit <NUM> to specify coordinates VUP in the coordinate system <NUM> for the same position on the virtual device <NUM> as each of the at least three trackers (Step S5), and acquires the specified coordinates VUP.

Thereafter, the device information acquisition unit <NUM> derives the rotation matrix A and a parallel movement vector B by substituting the acquired three respective coordinates VUP and VHP into the following equation (<NUM>) (Step S6). Then, a coordinate conversion equation including the derived rotation matrix A and parallel movement vector B is set to the coordinate conversion processing unit <NUM> (Step S7), and the process is terminated. Thereafter, the coordinate conversion processing unit <NUM> uses the set rotation matrix A and parallel movement vector B to perform a process of converting the position and tilt supplied from the tracking processing unit <NUM> into a position and a tilt in the XR space.

As described above, according to the computer <NUM> of the present embodiment, it is possible for the user wearing the head-mounted display <NUM> to move the hand holding the controller C2, align the position of the controller C2 with the virtual device <NUM> displayed in the XR space, then calculate, in response to the user operation of pressing the operation switch <NUM>, the coordinate conversion equation (specifically, the rotation matrix A and the parallel movement vector B) for converting the coordinates in the coordinate system <NUM> into the coordinates in the coordinate system <NUM>, and set the same to the coordinate conversion processing unit <NUM>. Therefore, in the XR space constructed using the tracking system T1, it is possible to use the controller C2 compatible only with the tracking system T2.

Next, a 3D object rendering system <NUM> according to a second embodiment of the present disclosure will be described. The present embodiment is different from the first embodiment in that the controller C2 has an inertial measurement unit (IMU) and the tracking system T2 detects the tilt of the controller C2 from a measurement result of the IMU. The following is a detailed explanation focusing on the difference.

<FIG> is a diagram illustrating an internal configuration of the controller C2 according to the present embodiment. As can be understood by comparing the diagram with <FIG>, the controller C2 according to the present embodiment is different from the controller C2 according to the first embodiment in that an IMU <NUM> is provided. The IMU <NUM> is a unit incorporating a <NUM>-axis gyroscope and a <NUM>-direction accelerometer and serves to detect an angle and an acceleration of the controller C2 with three axes. The tracking processing unit <NUM> according to the present embodiment is configured to detect a tilt of the controller C2 in the coordinate system <NUM> on the basis of the angle and acceleration measured by the IMU <NUM>. Specifically, this tilt is detected in the form of a <NUM> by <NUM> posture matrix.

<FIG> is a flow chart illustrating a processing flow of the calibration process performed by the application unit <NUM> and the device information acquisition unit <NUM> according to the present embodiment. The acceptance of a calibration execution instruction by the application unit <NUM> first (Step S10) is the same as the first embodiment. The application unit <NUM> having accepted the calibration execution instruction renders, in the XR space, tilt display information <NUM> indicating the tilt of the virtual device <NUM> in the coordinate system <NUM>, in addition to rendering the virtual device <NUM> representing the controller C2 as with the first embodiment (Step S11).

<FIG> is a diagram illustrating the virtual device <NUM> and the tilt display information <NUM> rendered in Step S11. The tilt display information <NUM> is rendered in the XR space in the shape of a cube arranged in such a manner as to surround the virtual device <NUM>. It is preferable that a size of the tilt display information <NUM> is sufficiently larger than the virtual device <NUM> in a range where the tilt display information <NUM> sufficiently falls within the eyesight of the user.

Referring back to <FIG>, the device information acquisition unit <NUM> next acquires the posture matrix of the controller C2 on the basis of the measurement result of the IMU <NUM> (Step S12). Then, the application unit <NUM> renders tilt display information <NUM> in the XR space on the basis of the posture matrix acquired by the device information acquisition unit <NUM> (Step S13).

Referring to <FIG> again, the tilt display information <NUM> is also illustrated in the drawing. Although the tilt display information <NUM> is depicted by a dashed line in the drawing for the sake of convenience, the actual tilt display information <NUM> is displayed in such a manner as to be visible to the user in the XR space. The application unit <NUM> renders the tilt display information <NUM> on the basis of the position of the virtual device <NUM> in the XR space. Accordingly, the user can align the tilt of the controller C2 with the tilt of the virtual device <NUM> by matching the tilt display information <NUM> with the tilt display information <NUM>, and hence, the positions of the controller C2 and the virtual device <NUM> can be aligned with each other with higher accuracy than a case where the position alignment is performed only with the virtual device <NUM>.

Referring back to <FIG>, the device information acquisition unit <NUM> waits for a predetermined operation by the user while the virtual device <NUM> is displayed (Step S14). The predetermined operation may be a pressing operation of the operation switch <NUM> as with the first embodiment. The device information acquisition unit <NUM> having detected the predetermined operation performs a series of processes in cooperation with the application unit <NUM> to calculate a coordinate conversion equation (Steps S15 to S20) and set the calculated coordinate conversion equation to the coordinate conversion processing unit <NUM> (Step S21).

Specifically, the device information acquisition unit <NUM> first acquires a posture matrix VHR of the controller C2 on the basis of the measurement result of the IMU <NUM> (Step S15) and acquires a posture matrix VUR of the virtual device <NUM> from the application unit <NUM> (Step S16). Then, the rotation matrix A is derived by substituting the two acquired posture matrixes into the following equation (<NUM>) (Step S17).

Next, the device information acquisition unit <NUM> specifies the coordinates VHP in the coordinate system <NUM> for at least one of a plurality of points (light emitting units <NUM>) provided on the controller C2 (Step S18). In addition, the device information acquisition unit <NUM> causes the application unit <NUM> to specify the coordinates VUP in the coordinate system <NUM> for the same point of the virtual device <NUM> (Step S19) and acquires the specified coordinates VUP. Then, the parallel movement vector B is derived by substituting the acquired coordinates VHP and VUP and the rotation matrix A derived in Step S17 into the above equation (<NUM>) (Step S20).

Thereafter, the device information acquisition unit <NUM> sets the derived rotation matrix A and parallel movement vector B to the coordinate conversion processing unit <NUM> as the coordinate conversion equation (Step S21) and terminates the process. Thereafter, the coordinate conversion processing unit <NUM> uses the set rotation matrix A and parallel movement vector B to perform a process of converting the position and tilt supplied from the tracking processing unit <NUM> into a position and a tilt in the XR space.

As described above, according to the computer <NUM> of the present embodiment, since the tilt display information <NUM> and the tilt display information <NUM> are rendered in the XR space, the user can align the positions of the controller C2 and the virtual device <NUM> with each other with higher accuracy than in the first embodiment. Therefore, it is possible to calculate the coordinate conversion equation (specifically, the rotation matrix A and the parallel movement vector B) for converting the coordinates in the coordinate system <NUM> into the coordinates in the coordinate system <NUM> with higher accuracy and to set the same to the coordinate conversion processing unit <NUM>.

Although the preferred embodiments of the present invention have been described above, it is obvious that the present invention is not limited to such embodiments at all, and the present invention can be carried out in various forms without departing from the scope of the invention, which is defined by the appended claims.

Claim 1:
A computer (<NUM>) comprising:
a processor (<NUM>),
wherein the processor is configured to:
calculate (S16, S19) first coordinates in a first coordinate system of a three-dimensional object (<NUM>) rendered in an extended reality space defined by the first coordinate system;
calculate (S12, S15, S18) second coordinates in a second coordinate system different from the first coordinate system of a device (C2), wherein the device is tracked by a tracking system (T2) related to a setting of the second coordinate system; and
calculate (S17, S20) a coordinate conversion equation that converts coordinates of the second coordinate system into coordinates of the first coordinate system based on the first coordinates and the second coordinates, in response to a predetermined operation (S14) by a user,
wherein the computer is characterized in that the processor is further configured to: control (S11, S13) a display (<NUM>) such that first information (<NUM>) indicating a tilt of the three-dimensional object in the first coordinate system and second information (<NUM>) indicating a tilt of the device in the second coordinate system indicated by a measurement result of an inertial measurement unit (<NUM>) included in the device are displayed in the extended reality space together with the three-dimensional object.