WO2023074875A1 - 仮想コンテンツ提供装置 - Google Patents
仮想コンテンツ提供装置 Download PDFInfo
- Publication number
- WO2023074875A1 WO2023074875A1 PCT/JP2022/040515 JP2022040515W WO2023074875A1 WO 2023074875 A1 WO2023074875 A1 WO 2023074875A1 JP 2022040515 W JP2022040515 W JP 2022040515W WO 2023074875 A1 WO2023074875 A1 WO 2023074875A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- virtual content
- area
- deceleration
- state
- change speed
- 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.)
- Ceased
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/04815—Interaction with a metaphor-based environment or interaction object displayed as three-dimensional [3D], e.g. changing the user viewpoint with respect to the environment or object
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/0485—Scrolling or panning
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—Three-dimensional [3D] animation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating three-dimensional [3D] models or images for computer graphics
Definitions
- One aspect of the present invention relates to a virtual content providing device.
- Patent Document 1 discloses an information processing apparatus that provides a virtual space to a user wearing a head-mounted device (HMD).
- the virtual content virtual object
- the moving speed of the virtual content becomes the first moving speed
- the virtual content does not exist within the visual field image
- the virtual content is controlled so that the moving speed of the content becomes a second moving speed slower than the first moving speed.
- an enemy object which is virtual content
- Patent Literature 1 makes the moving speed of virtual content that exists in the user's field of view faster than the moving speed of virtual content that does not exist in the user's field of view. does not consider gender.
- one aspect of the present invention aims to provide a virtual content providing device capable of improving the visibility of virtual content.
- a virtual content providing device is a virtual content providing device that provides virtual content to be displayed on a display unit of a user terminal used by a user.
- the virtual content providing device includes a content acquisition unit that acquires virtual content whose state changes over time, an area setting unit that sets a deceleration area that is part of the area displayed on the display unit, and a virtual content that exists within the deceleration area.
- the virtual content is displayed so that the first change speed of the state of the virtual content applied to the virtual content that is not in the deceleration region is slower than the second change speed of the state of the virtual content applied to the virtual content that does not exist within the deceleration region.
- a display control unit for controlling.
- the state change speed (first change speed) of the virtual content when the virtual content exists in the deceleration region that is part of the region displayed on the display unit is slower than the state change speed (second change speed) of the virtual content when the virtual content does not exist within the deceleration region (that is, when the virtual content exists outside the deceleration region). display is controlled. According to the above configuration, it is possible to make it easier to grasp the content of the virtual content within the deceleration area, so it is possible to improve the visibility of the virtual content.
- FIG. 4 is a diagram schematically showing an example of a deceleration region;
- FIG. 4 is a diagram schematically showing an example of a deceleration region;
- FIG. 10 is a diagram illustrating an example of display control of virtual content;
- FIG. 10 is a diagram illustrating an example of display control of virtual content;
- It is a figure which shows an example of a virtual content.
- 4 is a flow chart showing an example of the operation of the virtual content providing system;
- FIG. 8 is a flowchart showing an example of processing in step S4 of FIG. 7;
- FIG. It is a figure which shows an example of the hardware constitutions of a server.
- FIG. 1 is a diagram showing an example of a virtual content providing system 1 according to one embodiment.
- the virtual content providing system 1 is a computer system that provides virtual content to be displayed on the display unit of the user terminal used by the user. That is, the virtual content providing system 1 is a system that provides users with VR, AR, MR, or other XR experiences by displaying virtual content on the display unit of the user terminal.
- the virtual content providing system 1 includes a server 10 (virtual content providing device), a content DB 20, and an HMD (Head Mounted Display) 30, which is a user terminal.
- the server 10 is communicably connected to the content DB 20 and HMD 30 via any wired or wireless communication network.
- the server 10 distributes the virtual content stored in the content DB 20 to the HMD 30 worn on the user's head, and controls the display of the virtual content on the HMD 30 .
- the user can view virtual content distributed and display-controlled by the server 10 through the HMD 30 .
- FIG. 1 only one HMD 30 is illustrated as a target for which the server 10 performs display control of virtual content, but the server 10 may be configured to perform display control for a plurality of HMDs 30. good.
- the server 10 may be configured by a single computer device, or may be configured by a plurality of computer devices that can communicate with each other.
- the content DB 20 is a database device (database server) that stores virtual content data to be displayed on the HMD 30 .
- a virtual content is a virtual object displayed on the display unit 31 of the HMD 30 .
- virtual content is display information indicating an object that does not exist in the real space.
- the type of virtual content is not limited to a specific type.
- Examples of virtual content include images (still images or moving images), text information, graphic information, 3D models, and the like.
- Such virtual content may include objects that change state over time. Examples of changes in state over time include movement based on a predetermined movement direction and movement speed, changes in the size or shape of an object, and the like. That is, the state of virtual content includes the position, size, shape, and the like of virtual content.
- the server 10 executes processing for improving the visibility of virtual content that accompanies such state changes over time.
- attention will be paid only to virtual content whose state changes over time. That is, hereinafter, "virtual content whose state changes over time" is simply referred to as "virtual content.”
- the content DB 20 stores data for drawing (rendering) virtual content on the display unit 31 of the HMD 30, for example.
- the content DB 20 stores standard specifications of virtual content (for example, size, operation, display position (for example, information indicating which coordinate position in the real space the virtual content is to be displayed in relation to), etc.). Prescribing setting information may be stored in association with the virtual content.
- the HMD 30 is a device worn on the user's head.
- the form of HMD30 is not limited to a specific form.
- the HMD 30 can take various forms such as goggle type, glasses type (glasses type), and hat type.
- the HMD 30 is, for example, smart glasses such as XR glasses.
- the HMD 30 is AR glasses that have the function of providing augmented reality (AR) to the user.
- the HMD 30 is a see-through glass that allows the user to view the real space (outside world) and virtual content superimposed on the real space.
- the HMD 30 is not limited to the above, and may be an MR device such as MR glasses having a function of providing mixed reality (MR) to the user, or a VR having a function of providing virtual reality (VR) to the user. It may be a VR device such as glasses.
- MR mixed reality
- VR virtual reality
- the HMD 30 has a display section 31 and a sensor 32 .
- the display unit 31 is a display placed in front of the user's eyes.
- the display unit 31 is configured by, for example, a liquid crystal display element, an organic EL (Electro Luminescence) element, or the like.
- the display unit 31 may separately have a right-eye display panel arranged in front of the user's right eye and a left-eye display panel arranged in front of the user's left eye.
- the display unit 31 may be configured by an optical see-through type (transmissive type) display, or may be configured by a video see-through type display. In the former case, the display unit 31 displays a transmitted image of the optically transmitted real space (that is, the real space in front of the display unit 31).
- the display unit 31 displays a video image (picture) acquired (captured) in real time by a camera (a type of sensor 32 ) provided in the HMD 30 .
- the display unit 31 also displays virtual content (that is, virtual content distributed from the server 10) that is superimposed on the image of the physical space (transmission image or video image).
- the sensor 32 is a sensor group consisting of one or more sensors included in the HMD 30 .
- the sensor 32 has, for example, a position sensor that detects the posture (orientation) and position of the HMD 30 .
- a position sensor is configured by, for example, an acceleration sensor, a gyro sensor, a GPS sensor, or the like.
- the sensor 32 has a line-of-sight sensor that detects the user's line of sight.
- the line-of-sight sensor is configured to detect the user's line of sight, for example, by a known eye-tracking technique.
- the sensor 32 has an external sensor such as a camera for acquiring a video image of the real space in front of the HMD 30 .
- Information periodically acquired by various sensors included in the sensor 32 as described above is periodically transmitted to the server 10 at predetermined time intervals, for example.
- the server 10 has a content acquisition unit 11, a line-of-sight information acquisition unit 12, an area setting unit 13, and a display control unit 14.
- the processing contents of the server 10 will be described below, focusing on the case where the server 10 performs display control on the HMD 30 of a specific user U (see FIG. 2).
- the content acquisition unit 11 acquires virtual content to be displayed on the display unit 31 of the HMD 30 of the user U. That is, the content acquisition unit 11 acquires virtual content to be distributed to the user U from among the virtual content stored in the content DB 20 .
- the virtual content is received by a predetermined server (which may be the server 10 or may be a server different from the server 10) and stored in the content DB 20.
- a predetermined server which may be the server 10 or may be a server different from the server 10.
- the content acquisition unit 11 acquires the above virtual content addressed to the user U from the content DB 20 by periodically accessing the content DB 20 (or by a push notification from the content DB 20).
- the content acquisition unit 11 may acquire position information for specifying the physical space displayed on the display unit 31 of the HMD 30 (for example, information indicating the orientation and position of the HMD 30 detected by the position sensor of the HMD 30). . Then, when the content DB 20 stores virtual content whose display location is set to the location specified by the position information acquired as described above, the content acquisition unit 11 acquires the virtual content from the content DB 20.
- the mode in which the content acquisition unit 11 acquires virtual content is not limited to the mode illustrated above.
- the content acquisition unit 11 may acquire the virtual content by newly generating virtual content to be displayed on the display unit 31 of the HMD 30 of the user U.
- the line-of-sight information acquisition unit 12 acquires line-of-sight information indicating the user's U line of sight.
- the line-of-sight information acquisition unit 12 may acquire information indicating the line of sight of the user U detected by the sensor 32 (line-of-sight sensor) of the HMD 30 of the user U as the line-of-sight information.
- the line-of-sight information is information for specifying the gaze point P (see FIG. 3) of the user U in the display area 31a (see FIG. 3) of the display unit 31.
- the area setting unit 13 sets a deceleration area that is part of the area displayed on the display unit 31 .
- An example of the deceleration region will be described with reference to FIGS. 2 and 3.
- FIG. 2 and 3 are diagrams schematically showing an example of the deceleration region.
- FIG. 2 schematically shows the positional relationship among the HMD 30, the deceleration area A, and the virtual content 50 when viewed from the right side of the user U.
- FIG. 3 is a diagram showing an example of the positional relationship between the deceleration area A and the virtual content 50 in the display area 31a of the display unit 31 of the HMD 30 of the user U.
- FIG. 1 schematically shows the positional relationship among the HMD 30, the deceleration area A, and the virtual content 50 when viewed from the right side of the user U.
- FIG. 3 is a diagram showing an example of the positional relationship between the deceleration area A and the virtual content 50 in the display area 31a of the display unit 31 of the HMD 30
- the Z-axis direction corresponds to the vertical direction seen from the user U (that is, the vertical direction of the HMD 30), the X-axis direction corresponds to the front direction seen from the user U, and the Y-axis direction corresponds to the user U. It corresponds to the lateral direction (horizontal direction) viewed from U.
- the area setting unit 13 sets an area including the user's gaze point P specified based on the line-of-sight information acquired by the line-of-sight information acquiring unit 12 as the deceleration area A. That is, the line-of-sight information acquisition unit 12 sets a partial area included in the field of view of the user U as the deceleration area A.
- the area setting unit 13 may set, as the deceleration area A, an area corresponding to the effective visual field of the user U specified based on the line-of-sight information.
- the effective field of view is the visual field known as the area within which instantaneous information reception is possible.
- the effective field of view is an area within about 30 degrees in the horizontal direction and within about 20 degrees in the vertical direction with respect to the line-of-sight axis (the line connecting the viewpoint (position of the eyes) of the user U and the gaze point P).
- the line-of-sight information acquired by the line-of-sight information acquiring unit 12 (that is, information indicating the actual line of sight of the user U) is not essential for setting the deceleration area A.
- the region setting unit 13 sets the front direction of the user U (that is, the line-of-sight direction when it is assumed that the user U is looking straight ahead) to the user U's line-of-sight direction.
- the deceleration area A may be set.
- the deceleration area A for slowing down the speed of state change of the virtual content 50 and allowing the user U to grasp the content of the virtual content 50 can be set more appropriately. can be set to
- the region setting unit 13 may divide the deceleration region A described above into a plurality of further subdivided regions based on the degree of visibility (easiness of visually grasping information).
- the area setting unit 13 may include a first area A1 having a first visibility and a second area outside the first area A1 having a second visibility lower than the first visibility.
- a deceleration area A having an area A2 may be set.
- the area setting unit 13 may set the area corresponding to the user U's discriminative visual field as the first area A1.
- the discriminative visual field is the visual field known as the range in which visual performance such as visual acuity is excellent.
- the discriminative field of view is the area within about 5 degrees horizontally and vertically to the line-of-sight axis. Further, as an example, the area setting unit 13 may set an annular area of the effective visual field that does not include the discriminative visual field (that is, the first area A1) as the second area A2.
- the change speed v2 is a standard speed preset for the virtual content 50 (standard speed).
- the change speed v2 is a speed equivalent to the rain falling speed (or the virtual content 50 simulates rain falling from the sky). The speed is set so that the user U can perceive that the object is a moving object.
- the change speed v1 is a speed that is slower than the change speed v2, which is the standard speed, in order to improve the visibility of the virtual content 50 .
- the display control unit 14 may variably set the changing speed v1 so that the closer the distance from the center of the deceleration area A is, the slower the changing speed v1 is. For example, the display control unit 14 starts decelerating the virtual content 50 when the virtual content 50 enters the deceleration area A, and increases the degree of deceleration as the virtual content 50 moves toward the center of the deceleration area A ( That is, the change speed v1 may be changed so that the change speed v1 becomes smaller (slower) as the virtual content 50 moves toward the center of the deceleration area A).
- the display control unit 14 may control the change speed v1 so that the change speed v1 is minimized when the virtual content 50 is positioned at the center of the deceleration area A.
- the display control unit 14 controls the degree of deceleration to decrease as the virtual content 50 moves away from the center of the deceleration area A (that is, the change speed increases as the virtual content 50 moves away from the center of the deceleration area A).
- the change speed v1 may be changed so that v1 becomes larger (faster). According to the above configuration, the change speed of the virtual content 50 that has entered the deceleration area A can be changed smoothly.
- the virtual content 50 can be presented to the user U in a small manner.
- the virtual content 50 is an object that vertically falls from above to below at a position slightly in front of the user U. That is, in this example, the virtual content 50 moves downward in the vertical direction as time elapses. That is, as shown in FIGS. 2 and 3, the virtual content 50 changes its position (state) in the order of "position P1 ⁇ position P2 ⁇ position P3 ⁇ position P4 ⁇ position P5" over time. .
- the change speed of the position (state) of the virtual content 50 means the moving speed of the virtual content 50 .
- the speed of change in the state of the virtual content 50 means the speed of change in size or shape of the virtual content 50.
- a specific method of determining whether or not the virtual content 50 exists within the deceleration area A can be determined arbitrarily. For example, when the entire virtual content 50 is included in the deceleration area A, it may be determined that the virtual content 50 exists within the deceleration area A, or at least part of the virtual content 50 is included in the deceleration area A. It may be determined that the virtual content 50 exists within the deceleration area A when the Alternatively, it may be determined that the virtual content 50 exists within the deceleration area A when a threshold % or more (for example, 50% or more) of the virtual content 50 is included in the deceleration area A.
- a threshold % or more for example, 50% or more
- the display control unit 14 sets the change speed v2 when the virtual content 50 does not exist within the deceleration area A (that is, when the virtual content 50 is positioned at the position P1 or the position P5). ”>“Change speed v4 when the virtual content 50 is present in the second area A2 (that is, when the virtual content 50 is positioned at the position P2 or the position P4)”>“The virtual content 50 is in the first area A1
- the movement speed (change speed) of the virtual content 50 displayed in the display area 31a is controlled so as to become the change speed v3 when the virtual content 50 exists (that is, when the virtual content 50 is positioned at the position P3).
- the virtual content 50 when the virtual content 50 enters the first area A1, the speed of the state change of the virtual content 50 starts decelerating, and when the virtual content 50 enters the second area A2, the virtual content 50 slows down.
- the speed of state changes can be further reduced.
- the state change speed of the virtual content 50 since the state change speed of the virtual content 50 is controlled to be the slowest in the region (first region A1) with better visibility, the content of the virtual content 50 can be more effectively transmitted to the user U. It is possible to grasp
- the moving speed (change speed v1) of the virtual content 50 when the virtual content 50 exists within the deceleration region A is the moving speed (change speed v1) of the virtual content 50 when the virtual content 50 does not exist within the deceleration region A (change speed v1). v2).
- states s1, s2, s3, s4, and s5 are displayed in the display area 31a in successive frames f1, f2, f3, f4, and f5, assuming that the virtual content 50 moves at the change speed v2.
- the virtual content 50 enters the deceleration area A when transitioning from frame f1 to frame f2, and when transitioning from frame f4 to frame f5 Exit deceleration area A.
- the movement speed (change speed v1) applied to the virtual content 50 when the virtual content 50 exists within the deceleration region A is applied to the virtual content 50 when the virtual content 50 does not exist within the deceleration region A.
- change speed v2 As a method of controlling the display of the virtual content 50 so as to make the user U feel that the moving speed (change speed v2) has become half, the following methods are conceivable.
- FIG. 5A shows the correspondence between frames f1 to f5 and states s1 to s5 of virtual content 50 assuming that virtual content 50 continues to move at changing speed v2.
- the frame interval at this time is represented as d.
- (B) of FIG. 5 changes the frame interval applied to the virtual content 50 existing within the deceleration area A to the frame interval applied to the virtual content 50 not located within the deceleration area A (that is, , and the corresponding relationship between each frame f1 to f5 and each state s1 to s5 of the virtual content 50 when "2 ⁇ d", which is twice "d" shown in FIG. ing.
- the changing speed v1 of the virtual content 50 existing in the deceleration area A can be changed by relatively easy processing such as switching the frame rate applied to the virtual content 50 depending on whether the virtual content 50 exists in the deceleration area A. can be made slower than the change speed v2 of the virtual content 50 that does not exist within the deceleration area A. That is, as shown in (A) and (B) of FIG. 5, the frame interval applied to the virtual content 50 existing within the deceleration area A is changed to the normal time (when the virtual content 50 does not exist within the deceleration area A). ), the speed of the state change of the virtual content 50 existing in the deceleration area A can be apparently slowed down.
- the virtual content 50 continues to be displayed in the same state (position) in the deceleration area A for a long time. put away.
- the state change (movement) of the virtual content 50 displayed in the display area 31a is not smooth, and the user U may feel that the virtual content 50 is instantaneously moving at constant intervals.
- the display control unit 14 may perform the following display control so that the state change (movement in the example of FIG. 4) of the virtual content 50 is smooth on the display area 31a. That is, the display control unit 14 controls the first state of the virtual content 50 corresponding to the first frame when it is assumed that the state of the virtual content 50 changes at the change speed v2 in the deceleration area A and One or more intermediate third states of the virtual content 50 may be complemented between the second state of the virtual content 50 corresponding to the second frame.
- the frame f n and the state s n are displayed without changing the frame rate (frame interval) applied to the virtual content 50 depending on whether the virtual content 50 exists within the deceleration area A.
- the state change of the virtual content 50 displayed in the display area 31a can be made smoother.
- FIG. 6 is a diagram showing another example of virtual content.
- the virtual content 50 may include text information consisting of multiple characters.
- the virtual content 50 is an object that moves along a predetermined moving direction (vertical falling direction in the example of FIG. 6).
- the virtual content 50 can be configured, for example, as an object that vertically falls from the sky in front of the user U (HMD 30).
- the virtual content 50 falls and moves as if a plurality of characters were raining down from the sky.
- the virtual content 50 moves at a relatively high falling speed (change speed v2).
- the display control unit 14 described above causes the virtual content 50 to fall on the display area 31a at a falling speed (change speed v1) slower than the change speed v2. You will have to move slowly. As a result, the user U can easily visually recognize the text information included in the virtual content 50 while the virtual content 50 is being decelerated within the deceleration area A.
- the display control unit 14 may perform the following display control in order to ensure the visibility of the text information of the virtual content 50. That is, the display control unit 14 controls the moving direction of the virtual content 50, the change speed v1 applied when the virtual content 50 exists within the deceleration region A, the deceleration region A (for example, the position and size of the deceleration region A). , shape, etc.), and a deceleration period during which the virtual content 50 moves at a changing speed v1 slower than the changing speed v2 is calculated.
- the display control unit 14 determines the time T1 when the virtual content 50 enters the deceleration region A (that is, when the virtual content 50 enters the deceleration region A) based on the moving direction, the change speed v1, and the deceleration region A of the virtual content 50. and the time T2 when the virtual content 50 exits the deceleration area A (that is, after the virtual content 50 enters the deceleration area A, the virtual content 50 does not exist in the deceleration area A).
- the time point determined first is specified, and the period "T2-T1" from time point T1 to time point T2 is calculated as the deceleration period.
- the display control unit 14 limits the number of characters included in the text information of the virtual content 50 to a predetermined number or less based on the calculated deceleration period. For example, in movies with foreign language audio subtitles, the number of subtitle characters displayed at one time is generally limited to four characters per second.
- the display control unit 14 may limit the number of characters included in the text information of the virtual content 50 based on the same rule as that for limiting the number of characters in movie subtitles. For example, when the deceleration period is calculated to be 5 seconds, the display control unit 14 reduces the number of characters included in the text information of the virtual content 50 to 20 characters or less by applying the above rule (4 characters/second). may be restricted. According to the above configuration, when the virtual content 50 is an object including text information, it is possible to appropriately ensure the visibility of the virtual content 50 (that is, the ease of grasping the text information).
- step S1 the content acquisition unit 11 acquires the virtual content 50 to be displayed on the display unit 31 of the HMD 30 of the user U.
- step S2 the line-of-sight information acquisition unit 12 acquires line-of-sight information indicating the user's U line of sight.
- the region setting unit 13 sets the deceleration region A.
- the region setting unit 13 sets, as the deceleration region A, a region including the gaze point P of the user U specified based on the line-of-sight information acquired in step S2.
- the area setting unit 13 sets an area corresponding to the effective visual field of the user U as the deceleration area A.
- the area setting unit 13 sets the area corresponding to the discriminative visual field of the user U in the deceleration area A as the first area A1, and the area excluding the first area A1 in the deceleration area A (that is, the area included in the effective visual field). is not included in the discrimination visual field) is defined as a second area A2.
- step S4 the display control unit 14 performs display control of the virtual content 50 displayed in the display area 31a of the display unit 31.
- An example of display control (processing of step S4) by the display control unit 14 will be described with reference to the flowchart shown in FIG. Note that the processing of the flowchart of FIG. 8 is executed for each virtual content 50 . That is, when a plurality of independent virtual contents 50 exist on the display area 31a, the display control unit 14 may perform the processing of the flowchart of FIG.
- step S41 the display control unit 14 determines whether or not the virtual content 50 exists within the deceleration area A.
- step S41 determines whether the virtual content 50 exists at the position P1 or P5 shown in FIG. 3, it is determined in step S41 that the virtual content 50 does not exist within the deceleration area A (step S41: NO).
- step S ⁇ b>42 the display control unit 14 applies the change speed v ⁇ b>2 described above as the state change speed set for the virtual content 50 .
- step S41 determines whether or not the virtual content 50 exists in the first area A1.
- step S43 it is determined in step S43 that the virtual content 50 exists within the first area A1 (step S43: YES).
- step S ⁇ b>44 the display control unit 14 applies the change speed v ⁇ b>3 described above as the state change speed set for the virtual content 50 .
- step S43 NO if the virtual content 50 exists at the position P2 or P4 shown in FIG. exists in) (step S43: NO).
- step S ⁇ b>45 the display control unit 14 applies the change speed v ⁇ b>4 described above as the state change speed set for the virtual content 50 .
- the state change speed (change speed v1) of the virtual content 50 when the virtual content 50 is present in the deceleration region A, which is a part of the region displayed on the display unit 31, is decelerated.
- the virtual content 50 is changed so as to be slower than the state change speed (change speed v2) of the virtual content 50 when the virtual content 50 does not exist within the area A (that is, when the virtual content 50 exists outside the deceleration area A).
- 50 display is controlled. According to the above configuration, it is possible to easily grasp the content of the virtual content 50 in the deceleration area A, so that the visibility of the virtual content 50 can be improved.
- a deceleration area A in which the speed of the state change of the virtual content 50 is decelerated, is set in a part of the display area 31a.
- the state is changed at speed v2 (that is, the speed of change without deceleration). Therefore, the user U can grasp the original motion of the virtual content 50 in the corners of the field of view (regions off the center of the field of view), and the decelerated virtual content 50 in the center of the field of view (that is, the deceleration region A). Content can be easily recognized. More specifically, in the example of FIG. 6, the virtual content 50 performs its original action (for example, the action of falling from the sky like rain) outside the deceleration area A in the display area 31a at the changing speed v2.
- the user U can see the characters falling like rain from the corner of his vision. In other words, the user U can be made to experience the effect of the virtual content 50 of "making letters fall like rain.” In this way, according to the above-described display control of the virtual content 50 by the server 10, it is possible to allow the user U to experience the original dynamic operation of the virtual content 50 and to easily understand the contents of the virtual content 50. Become.
- the server 10 functions as a virtual content providing device in the above embodiment, the functions of the server 10 may be implemented in the HMD 30.
- the HMD 30 functions as a virtual content providing device.
- some of the functions of the server 10 described above may be executed by the HMD 30 .
- the computer system including the server 10 and HMD 30 functions as a virtual content providing device.
- each functional block may be implemented using one device that is physically or logically coupled, or directly or indirectly using two or more devices that are physically or logically separated (e.g. , wired, wireless, etc.) and may be implemented using these multiple devices.
- a functional block may be implemented by combining software in the one device or the plurality of devices.
- Functions include judging, determining, determining, calculating, calculating, processing, deriving, investigating, searching, checking, receiving, transmitting, outputting, accessing, resolving, selecting, choosing, establishing, comparing, assuming, expecting, assuming, Broadcasting, notifying, communicating, forwarding, configuring, reconfiguring, allocating, mapping, assigning, etc. can't
- the server 10 in one embodiment of the present disclosure may function as a computer that performs the virtual content providing method of the present disclosure.
- FIG. 9 is a diagram illustrating an example of a hardware configuration of server 10 according to an embodiment of the present disclosure.
- the server 10 may be physically configured as a computer device including a processor 1001, a memory 1002, a storage 1003, a communication device 1004, an input device 1005, an output device 1006, a bus 1007 and the like.
- the hardware configuration of the server 10 may be configured to include one or more of the devices shown in FIG. 9, or may be configured without some of the devices.
- the HMD 30 may also have the same hardware configuration as the hardware configuration of the server 10 shown in FIG.
- Each function in the server 10 is performed by causing the processor 1001 to perform calculations, controlling communication by the communication device 1004, controlling communication by the communication device 1004, and controlling the communication by the memory 1002 and It is realized by controlling at least one of data reading and writing in the storage 1003 .
- the processor 1001 for example, operates an operating system and controls the entire computer.
- the processor 1001 may be configured by a central processing unit (CPU) including an interface with peripheral devices, a control device, an arithmetic device, registers, and the like.
- CPU central processing unit
- the processor 1001 reads programs (program codes), software modules, data, etc. from at least one of the storage 1003 and the communication device 1004 to the memory 1002, and executes various processes according to them.
- programs program codes
- software modules software modules
- data etc.
- the program a program that causes a computer to execute at least part of the operations described in the above embodiments is used.
- each functional unit for example, the display control unit 14, etc.
- each functional unit for example, the display control unit 14, etc.
- the server 10 may be stored in the memory 1002 and implemented by a control program operating in the processor 1001, and other functional blocks may be similarly implemented. good too.
- FIG. Processor 1001 may be implemented by one or more chips.
- the program may be transmitted from a network via an electric communication line.
- the memory 1002 is a computer-readable recording medium, and is composed of at least one of, for example, ROM (Read Only Memory), EPROM (Erasable Programmable ROM), EEPROM (Electrically Erasable Programmable ROM), RAM (Random Access Memory), etc. may be
- ROM Read Only Memory
- EPROM Erasable Programmable ROM
- EEPROM Electrical Erasable Programmable ROM
- RAM Random Access Memory
- the memory 1002 may also be called a register, cache, main memory (main storage device), or the like.
- the memory 1002 can store executable programs (program codes), software modules, etc. for implementing the content providing method according to an embodiment of the present disclosure.
- the storage 1003 is a computer-readable recording medium, for example, an optical disc such as a CD-ROM (Compact Disc ROM), a hard disk drive, a flexible disc, a magneto-optical disc (for example, a compact disc, a digital versatile disc, a Blu-ray disk), smart card, flash memory (eg, card, stick, key drive), floppy disk, magnetic strip, and/or the like.
- Storage 1003 may also be called an auxiliary storage device.
- the storage medium described above may be, for example, a database, server, or other suitable medium including at least one of memory 1002 and storage 1003 .
- the communication device 1004 is hardware (transmitting/receiving device) for communicating between computers via at least one of a wired network and a wireless network, and is also called a network device, a network controller, a network card, a communication module, or the like.
- the input device 1005 is an input device (for example, keyboard, mouse, microphone, switch, button, sensor, etc.) that receives input from the outside.
- the output device 1006 is an output device (eg, display, speaker, LED lamp, etc.) that outputs to the outside. Note that the input device 1005 and the output device 1006 may be integrated (for example, a touch panel).
- Each device such as the processor 1001 and the memory 1002 is connected by a bus 1007 for communicating information.
- the bus 1007 may be configured using a single bus, or may be configured using different buses between devices.
- the server 10 includes hardware such as a microprocessor, a digital signal processor (DSP), an ASIC (Application Specific Integrated Circuit), a PLD (Programmable Logic Device), and an FPGA (Field Programmable Gate Array).
- DSP digital signal processor
- ASIC Application Specific Integrated Circuit
- PLD Physical Location Deposition
- FPGA Field Programmable Gate Array
- a part or all of each functional block may be implemented by the hardware.
- processor 1001 may be implemented using at least one of these pieces of hardware.
- Input/output information may be stored in a specific location (for example, memory) or managed using a management table. Input/output information and the like can be overwritten, updated, or appended. The output information and the like may be deleted. The entered information and the like may be transmitted to another device.
- the determination may be made by a value represented by one bit (0 or 1), by a true/false value (Boolean: true or false), or by numerical comparison (for example, a predetermined value).
- notification of predetermined information is not limited to being performed explicitly, but may be performed implicitly (for example, not notifying the predetermined information). good too.
- Software whether referred to as software, firmware, middleware, microcode, hardware description language or otherwise, includes instructions, instruction sets, code, code segments, program code, programs, subprograms, and software modules. , applications, software applications, software packages, routines, subroutines, objects, executables, threads of execution, procedures, functions, and the like.
- software, instructions, information, etc. may be transmitted and received via a transmission medium.
- the software uses at least one of wired technology (coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), etc.) and wireless technology (infrared, microwave, etc.) to website, Wired and/or wireless technologies are included within the definition of transmission medium when sent from a server or other remote source.
- wired technology coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), etc.
- wireless technology infrared, microwave, etc.
- data, instructions, commands, information, signals, bits, symbols, chips, etc. may refer to voltages, currents, electromagnetic waves, magnetic fields or magnetic particles, light fields or photons, or any of these. may be represented by a combination of
- information, parameters, etc. described in the present disclosure may be expressed using absolute values, may be expressed using relative values from a predetermined value, or may be expressed using other corresponding information. may be represented.
- any reference to elements using the "first,” “second,” etc. designations used in this disclosure does not generally limit the quantity or order of those elements. These designations may be used in this disclosure as a convenient method of distinguishing between two or more elements. Thus, reference to a first and second element does not imply that only two elements can be employed or that the first element must precede the second element in any way.
- a and B are different may mean “A and B are different from each other.”
- the term may also mean that "A and B are different from C”.
- Terms such as “separate,” “coupled,” etc. may also be interpreted in the same manner as “different.”
- 1... Virtual content providing system 10... Server (virtual content providing device), 11... Content acquisition unit, 12... Line-of-sight information acquisition unit, 13... Area setting unit, 14... Display control unit, 30... HMD (user terminal), 31... display part, 31a... display area, 32... sensor, 50... virtual content, A... deceleration area, A1... first area, A2... second area.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
一実施形態のサーバ10は、ユーザに使用されるHMD30の表示部31に表示するための仮想コンテンツ50を提供する。サーバ10は、経時的に状態を変化させる仮想コンテンツ50を取得するコンテンツ取得部11と、表示部31に表示される領域の一部である減速領域Aを設定する領域設定部13と、減速領域A内に存在する仮想コンテンツ50に適用される仮想コンテンツ50の状態の変化速度v1が減速領域A内に存在しない仮想コンテンツ50に適用される仮想コンテンツ50の状態の変化速度v2よりも遅くなるように、仮想コンテンツ50の表示を制御する表示制御部14と、を備える。
Description
本発明の一側面は、仮想コンテンツ提供装置に関する。
特許文献1には、ヘッドマウントデバイス(HMD)を装着したユーザに仮想空間を提供する情報処理装置が開示されている。この情報処理装置は、HMDに表示される視界画像内に仮想コンテンツ(仮想オブジェクト)が存在するときには当該仮想コンテンツの移動速度が第1移動速度となり、視界画像内に仮想コンテンツが存在しないときには当該仮想コンテンツの移動速度が第1移動速度よりも遅い第2移動速度になるように、仮想コンテンツを制御する。特許文献1に開示された制御方法によれば、仮想空間を用いたゲーム等において、ユーザの目の前に仮想コンテンツである敵オブジェクトが突然現れたり、ユーザの視界外で突然敵オブジェクトから攻撃を受けたりする現象の発生を低減できる。
ところで、VR(Virtual Reality)、AR(Augmented Reality)、MR(Mixed Reality)等のXR空間の仮想コンテンツに関して、仮想コンテンツの視認性を確保する仕組みが求められている。特許文献1に開示された仕組みは、ユーザの視界内に存在する仮想コンテンツの移動速度を、ユーザの視界内に存在しないときの仮想コンテンツの移動速度よりも速くするものであり、仮想コンテンツの視認性について考慮していない。
そこで、本発明の一側面は、仮想コンテンツの視認性の向上を図ることができる仮想コンテンツ提供装置を提供することを目的とする。
本発明の一側面に係る仮想コンテンツ提供装置は、ユーザに使用されるユーザ端末の表示部に表示するための仮想コンテンツを提供する仮想コンテンツ提供装置である。仮想コンテンツ提供装置は、経時的に状態を変化させる仮想コンテンツを取得するコンテンツ取得部と、表示部に表示される領域の一部である減速領域を設定する領域設定部と、減速領域内に存在する仮想コンテンツに適用される仮想コンテンツの状態の第1変化速度が減速領域内に存在しない仮想コンテンツに適用される仮想コンテンツの状態の第2変化速度よりも遅くなるように、仮想コンテンツの表示を制御する表示制御部と、を備える。
本発明の一側面に係る仮想コンテンツ提供装置においては、表示部に表示される領域の一部である減速領域内に仮想コンテンツが存在するときの仮想コンテンツの状態変化の速度(第1変化速度)が、減速領域内に仮想コンテンツが存在しないとき(すなわち、減速領域外に仮想コンテンツが存在するとき)の仮想コンテンツの状態変化の速度(第2変化速度)よりも遅くなるように、仮想コンテンツの表示が制御される。上記構成によれば、減速領域内において、仮想コンテンツの内容を把握し易くすることができるため、仮想コンテンツの視認性を向上させることができる。
本発明の一側面によれば、仮想コンテンツの視認性の向上を図ることができる仮想コンテンツ提供装置を提供することができる。
以下、添付図面を参照して、本発明の一実施形態について詳細に説明する。なお、図面の説明において同一又は相当要素には同一符号を付し、重複する説明を省略する。
図1は、一実施形態に係る仮想コンテンツ提供システム1の一例を示す図である。仮想コンテンツ提供システム1は、ユーザに使用されるユーザ端末の表示部に表示するための仮想コンテンツを提供するコンピュータシステムである。すなわち、仮想コンテンツ提供システム1は、ユーザ端末の表示部に仮想コンテンツを表示させることにより、ユーザにVR、AR、MR等のXR体験を提供するシステムである。
一例として、仮想コンテンツ提供システム1は、サーバ10(仮想コンテンツ提供装置)と、コンテンツDB20と、ユーザ端末であるHMD(ヘッドマウントディスプレイ:Head Mounted Display)30と、を含んで構成される。サーバ10は、任意の有線又は無線の通信ネットワークを介して、コンテンツDB20及びHMD30と通信可能に接続されている。
サーバ10は、コンテンツDB20に記憶された仮想コンテンツをユーザの頭部に装着されたHMD30に配信すると共に、HMD30上における仮想コンテンツの表示を制御する。ユーザは、HMD30を通して、サーバ10により配信及び表示制御された仮想コンテンツを視認することができる。なお、図1においては、サーバ10が仮想コンテンツの表示制御を行う対象として、1台のHMD30のみを図示しているが、サーバ10は、複数のHMD30に対する表示制御を行うように構成されてもよい。また、サーバ10は、単一のコンピュータ装置によって構成されてもよいし、互いに通信可能な複数のコンピュータ装置によって構成されてもよい。
コンテンツDB20は、HMD30に表示するための仮想コンテンツのデータを記憶するデータベース装置(データベースサーバ)である。仮想コンテンツは、HMD30の表示部31に表示される仮想的なオブジェクトである。すなわち、仮想コンテンツは、現実空間には存在しないオブジェクトを示す表示情報である。仮想コンテンツの種類は特定の種類に限定されない。
仮想コンテンツの例としては、画像(静止画像又は動画像)、テキスト情報、図形情報、3Dモデル等が挙げられる。このような仮想コンテンツの中には、経時的に状態を変化させるオブジェクトが含まれ得る。経時的な状態変化の例としては、予め定められた移動方向及び移動速度に基づく移動、オブジェクトのサイズ又は形状の変化等が挙げられる。すなわち、仮想コンテンツの状態とは、仮想コンテンツの位置、サイズ、形状等を含む。本実施形態では、サーバ10は、このような経時的な状態変化を伴う仮想コンテンツの視認性を向上させるための処理を実行する。以下では、このようなサーバ10の処理を説明するために、経時的に状態を変化させる仮想コンテンツのみに着目する。すなわち、以下では、「経時的に状態を変化させる仮想コンテンツ」のことを単に「仮想コンテンツ」という。
コンテンツDB20には、例えば、HMD30の表示部31に仮想コンテンツを描画(レンダリング)するためのデータが記憶される。また、コンテンツDB20には、仮想コンテンツの標準的な仕様(例えば、サイズ、動作、及び表示位置(例えば、現実空間のどの座標位置に対応させて仮想コンテンツを表示するかを示す情報)等)を規定する設定情報が、仮想コンテンツに関連付けて記憶されてもよい。
HMD30は、ユーザの頭部に装着されるデバイスである。HMD30の形態は特定の形態に限定されない。HMD30は、例えば、ゴーグル型、グラス型(眼鏡型)、帽子型等の種々の形態を取り得る。HMD30は、例えば、XRグラス等のスマートグラスである。本実施形態では、HMD30は、ユーザに拡張現実(AR)を提供する機能を有するARグラスである。例えば、HMD30は、ユーザが現実空間(外界)と現実空間上に重畳表示された仮想コンテンツとを視認できるように構成されたシースルー型のグラスである。ただし、HMD30は上記に限定されず、ユーザに複合現実(MR)を提供する機能を有するMRグラス等のMRデバイスであってもよいし、ユーザに仮想現実(VR)を提供する機能を有するVRグラス等のVRデバイスであってもよい。
HMD30は、表示部31と、センサ32と、を有する。
表示部31は、ユーザの両目の前方に配置されるディスプレイである。表示部31は、例えば、液晶表示素子、有機EL(Electro Luminescence)素子等によって構成される。表示部31は、ユーザの右目の前方に配置される右目用の表示パネルと、ユーザの左目の前方に配置される左目用の表示パネルと、を別々に有してもよい。表示部31は、光学シースルー型(透過型)のディスプレイによって構成されてもよいし、ビデオシースルー型のディスプレイによって構成されてもよい。前者の場合、表示部31には、光学的に透過した現実空間(すなわち、表示部31の前方の現実空間)の透過像が表示される。後者の場合、表示部31には、HMD30が備えるカメラ(センサ32の一種)によりリアルタイムに取得(撮像)されたビデオ画像(映像)が表示される。また、表示部31には、現実空間の画像(透過像又はビデオ画像)に重畳して配置される仮想コンテンツ(すなわち、サーバ10から配信される仮想コンテンツ)が表示される。
センサ32は、HMD30が備える一以上のセンサからなるセンサ群である。センサ32は、例えば、HMD30の姿勢(向き)及び位置を検出する位置センサを有する。位置センサは、例えば、加速度センサ、ジャイロセンサ、GPSセンサ等によって構成される。また、本実施形態では、センサ32は、ユーザの視線を検出する視線センサを有する。視線センサは、例えば、公知のアイトラッキング技術によってユーザの視線を検出するように構成されている。また、表示部31がビデオシースルー型のディスプレイである場合には、センサ32は、HMD30の前方の現実空間のビデオ画像を取得するためのカメラ等の外界センサを有する。上述したようなセンサ32が備える各種センサにより定期的に取得される情報は、例えば、所定の時間間隔で、定期的にサーバ10に送信される。
サーバ10は、コンテンツ取得部11と、視線情報取得部12と、領域設定部13と、表示制御部14と、を有する。以下では、サーバ10が特定のユーザU(図2参照)のHMD30に対する表示制御を行う場合に着目して、サーバ10の処理内容について説明する。
コンテンツ取得部11は、ユーザUのHMD30の表示部31に表示させるための仮想コンテンツを取得する。すなわち、コンテンツ取得部11は、コンテンツDB20に記憶された仮想コンテンツのうちユーザUに配信すべき仮想コンテンツを取得する。
例えば、ユーザUとは異なるユーザXが、ユーザUに対して所定のメッセージを仮想コンテンツとして送信するケースについて考える。この場合、所定のサーバ(サーバ10であってもよいし、サーバ10とは異なるサーバであってもよい)によって当該仮想コンテンツが受信されて、コンテンツDB20に記憶される。すなわち、ユーザU宛てのメッセージに対応する仮想コンテンツがコンテンツDB20に記憶される。コンテンツ取得部11は、コンテンツDB20に定期的にアクセスすることにより(或いは、コンテンツDB20からのプッシュ通知により)、上記のようなユーザU宛ての仮想コンテンツをコンテンツDB20から取得する。
また、コンテンツDB20に記憶される仮想コンテンツの中には、特定の場所に関連付けられる仮想コンテンツも存在し得る。例えば、特定の場所(スポット)が表示場所として設定された仮想コンテンツが存在し得る。コンテンツ取得部11は、HMD30の表示部31に表示される現実空間を特定するための位置情報(例えば、HMD30の位置センサにより検出されたHMD30の姿勢及び位置を示す情報)を取得してもよい。そして、コンテンツ取得部11は、上記のように取得された位置情報により特定される場所が表示場所として設定された仮想コンテンツがコンテンツDB20に記憶されている場合、当該仮想コンテンツをコンテンツDB20から取得してもよい。
ただし、コンテンツ取得部11が仮想コンテンツを取得する態様は、上記例示した態様に限定されない。例えば、コンテンツ取得部11は、ユーザUのHMD30の表示部31に表示させるための仮想コンテンツを新たに生成することにより、上記仮想コンテンツを取得してもよい。
視線情報取得部12は、ユーザUの視線を示す視線情報を取得する。例えば、視線情報取得部12は、ユーザUのHMD30のセンサ32(視線センサ)により検出されたユーザUの視線を示す情報を、上記視線情報として取得してもよい。視線情報は、表示部31の表示領域31a(図3参照)におけるユーザUの注視点P(図3参照)を特定するための情報である。すなわち、視線情報は、ユーザUが表示領域31a上のどの位置を見ているかを示す情報である。
領域設定部13は、表示部31に表示される領域の一部である減速領域を設定する。図2及び図3を参照して、減速領域の一例について説明する。図2及び図3は、減速領域の一例を模式的に示す図である。図2は、ユーザUの右側から見た場合のHMD30、減速領域A、及び仮想コンテンツ50の位置関係を模式的に示している。図3は、ユーザUのHMD30の表示部31の表示領域31aにおける減速領域A及び仮想コンテンツ50の位置関係の一例を示す図である。図2及び図3において、Z軸方向はユーザUから見た垂直方向(すなわち、HMD30の上下方向)に対応し、X軸方向はユーザUから見た正面方向に対応し、Y軸方向はユーザUから見た横方向(左右方向)に対応する。
図3に示されるように、例えば、領域設定部13は、視線情報取得部12により取得された視線情報に基づいて特定されるユーザの注視点Pを含む領域を減速領域Aとして設定する。すなわち、視線情報取得部12は、ユーザUの視界に含まれる一部の領域を減速領域Aとして設定する。一例として、領域設定部13は、上記視線情報に基づいて特定されるユーザUの有効視野に対応する領域を減速領域Aとして設定してもよい。有効視野とは、瞬時に情報受容が可能な範囲として知られる視野領域である。有効視野は、視線軸(ユーザUの視点(目の位置)と注視点Pとを結ぶ線)に対して水平方向に約30度以内であると共に垂直方向に約20度以内の領域である。
なお、減速領域Aを設定するために、視線情報取得部12により取得される視線情報(すなわち、実際のユーザUの視線を示す情報)は、必須ではない。例えば、領域設定部13は、ユーザUの視線情報が取得できない場合には、ユーザUの正面方向(すなわち、ユーザUが真正面を見ていると仮定した場合の視線方向)をユーザUの視線方向とみなして、減速領域Aを設定してもよい。ただし、上述のように、ユーザUの実際の視線情報を用いることにより、仮想コンテンツ50の状態変化のスピードを遅らせて仮想コンテンツ50の内容をユーザUに把握させるための減速領域Aを、より適切に設定することができる。
領域設定部13は、上述した減速領域Aを視認性(視覚的な情報把握の容易さ)の程度に基づいて、更に細分化された複数の領域に分けてもよい。例えば、領域設定部13は、第1の視認性を有する第1領域A1と、第1領域A1よりも外側の領域であって第1の視認性よりも低い第2の視認性を有する第2領域A2と、を有する減速領域Aを設定してもよい。図2及び図3に示されるように、一例として、領域設定部13は、ユーザUの弁別視野に対応する領域を第1領域A1として設定してもよい。弁別視野とは、視力等の視機能が優れている範囲として知られる視野領域である。弁別視野は、視線軸に対して水平方向及び垂直方向に約5度以内の領域である。また、一例として、領域設定部13は、有効視野のうち弁別視野(すなわち、第1領域A1)を含まない環状の領域を第2領域A2として設定してもよい。
表示制御部14は、表示部31の表示領域31aに表示される仮想コンテンツ50の表示制御を行う。具体的には、図2及び図3に示されるように、表示制御部14は、減速領域A内に存在する仮想コンテンツ50に適用される仮想コンテンツ50の状態の変化速度v1(第1変化速度)が減速領域A内に存在しない仮想コンテンツ50に適用される仮想コンテンツ50の状態の変化速度v2(第2変化速度)よりも遅くなるように、仮想コンテンツ50の表示を制御する。変化速度v1と変化速度v2との間には「v1=s×v2(0<s<1)」の関係が成立する。
例えば、変化速度v2は、仮想コンテンツ50に対して予め設定された標準的な速度(標準速度)である。例えば、仮想コンテンツ50が上空から落下する雨を模したオブジェクトとして構成される場合には、変化速度v2は、雨の落下速度と同等の速度(或いは、仮想コンテンツ50が上空から落下する雨を模したオブジェクトであることをユーザUが感得できる程度の速度)に設定される。一方、変化速度v1は、仮想コンテンツ50の視認性を高めるために、標準速度である変化速度v2よりも減速させた速度である。
表示制御部14は、減速領域Aの中心からの距離が近いほど変化速度v1が遅くなるように、変化速度v1を可変に設定してもよい。例えば、表示制御部14は、仮想コンテンツ50が減速領域Aに進入した際に仮想コンテンツ50の減速を開始し、仮想コンテンツ50が減速領域Aの中心に向かうにつれて減速の度合いが大きくなるように(すなわち、仮想コンテンツ50が減速領域Aの中心に向かうにつれて変化速度v1が小さく(遅く)なるように)、変化速度v1を変化させてもよい。つまり、表示制御部14は、仮想コンテンツ50が減速領域Aの中心に位置するときに変化速度v1が最小となるように、変化速度v1を制御してもよい。同様に、表示制御部14は、仮想コンテンツ50が減速領域Aの中心から離れていくにつれて減速の度合いが小さくなるように(すなわち、仮想コンテンツ50が減速領域Aの中心から離れていくにつれて変化速度v1が大きく(速く)なるように)、変化速度v1を変化させてもよい。上記構成によれば、減速領域Aに進入した仮想コンテンツ50の変化速度を滑らかに変化させることができるため、仮想コンテンツ50の変化速度を急激に変化させる場合と比較して、視覚的に違和感の少ない態様で、仮想コンテンツ50をユーザUに提示することができる。
図2及び図3の例では、仮想コンテンツ50は、ユーザUのやや前方の位置において、上方から下方へと垂直落下するオブジェクトである。すなわち、この例では、仮想コンテンツ50は、時間の経過に伴って、垂直方向下方に向かって移動する。すなわち、仮想コンテンツ50は、図2及び図3に示されるように、時間の経過に伴って、「位置P1→位置P2→位置P3→位置P4→位置P5」へと位置(状態)を変化させる。この例では、仮想コンテンツ50の位置(状態)の変化速度は、仮想コンテンツ50の移動速度を意味する。なお、仮想コンテンツ50が時間の経過に伴って移動することなくサイズ又は形状を変化させる場合には、仮想コンテンツ50の状態の変化速度は、仮想コンテンツ50のサイズ又は形状の変化のスピードを意味する。
また、仮想コンテンツ50が減速領域A内に存在するか否かについての具体的な判定方法は、任意に定められ得る。例えば、仮想コンテンツ50の全体が減速領域Aに含まれている場合に、仮想コンテンツ50が減速領域A内に存在すると判定されてもよいし、仮想コンテンツ50の少なくとも一部が減速領域Aに含まれている場合に、仮想コンテンツ50が減速領域A内に存在すると判定されてもよい。或いは、仮想コンテンツ50の閾値%以上(例えば、50%以上)が減速領域Aに含まれている場合に、仮想コンテンツ50が減速領域A内に存在すると判定されてもよい。
本実施形態では、表示制御部14は、仮想コンテンツ50が減速領域A内に存在する場合に、さらに仮想コンテンツ50が第1領域A1及び第2領域A2のいずれに存在するかによって、仮想コンテンツ50の状態変化の速度を制御する。より具体的には、表示制御部14は、第1領域A1内に存在する仮想コンテンツ50に適用される仮想コンテンツ50の状態の変化速度v3(第3変化速度)が第2領域A2内に存在する仮想コンテンツ50に適用される仮想コンテンツ50の状態の変化速度v4(第4変化速度)よりも遅くなるように、仮想コンテンツ50の表示を制御する。変化速度v3と変化速度v4との間には「v3=s×v4(0<s<1)」の関係が成立する。
すなわち、図3に示されるように、表示制御部14は、「仮想コンテンツ50が減速領域A内に存在しないとき(すなわち、仮想コンテンツ50が位置P1又は位置P5に位置するとき)の変化速度v2」>「仮想コンテンツ50が第2領域A2内に存在するとき(すなわち、仮想コンテンツ50が位置P2又は位置P4に位置するとき)の変化速度v4」>「仮想コンテンツ50が第1領域A1内に存在するとき(すなわち、仮想コンテンツ50が位置P3に位置するとき)の変化速度v3」となるように、表示領域31aに表示される仮想コンテンツ50の移動速度(変化速度)を制御する。上記構成によれば、仮想コンテンツ50が第1領域A1に進入した際に仮想コンテンツ50の状態変化のスピードの減速を開始し、仮想コンテンツ50が第2領域A2に進入した際に仮想コンテンツ50の状態変化のスピードを更に減速させることができる。このように段階的に仮想コンテンツ50の状態変化のスピードを減速させることにより、仮想コンテンツ50の状態変化のスピードが急激に変化することを抑制できる。すなわち、仮想コンテンツ50をスムーズに減速させることができる。また、視認性がより優れた領域(第1領域A1)において、仮想コンテンツ50の状態変化のスピードが最も遅くなるように制御されるため、より一層効果的に、仮想コンテンツ50の内容をユーザUに把握させることが可能となる。
図4を参照して、表示制御部14の処理の一例を説明する。ここでは説明を簡単にするために、領域設定部13によって減速領域Aのみが設定され、減速領域Aは第1領域A1及び第2領域A2に分割されないものとする。また、仮想コンテンツ50が減速領域A内に存在するときの仮想コンテンツ50の移動速度(変化速度v1)は、仮想コンテンツ50が減速領域A内に存在しないときの仮想コンテンツ50の移動速度(変化速度v2)の1/2であるものとする。
図4において、状態s1,s2,s3,s4,s5は、仮想コンテンツ50が変化速度v2で移動すると仮定した場合に、連続する各フレームf1,f2,f3,f4,f5において表示領域31aに表示される仮想コンテンツ50の状態(位置)を示している。すなわち、仮想コンテンツ50の状態(位置)は、フレームfnからフレームfn+1に切り替わる際に、状態snから状態sn+1に切り替わる(n=1,2,3,4)。この例では、仮想コンテンツ50が変化速度v2で移動すると仮定した場合において、仮想コンテンツ50は、フレームf1からフレームf2に遷移する際に減速領域Aに入り、フレームf4からフレームf5に遷移する際に減速領域Aから出る。
減速領域A内に仮想コンテンツ50が存在するときに当該仮想コンテンツ50に適用される移動速度(変化速度v1)が減速領域A内に仮想コンテンツ50が存在しないときに当該仮想コンテンツ50に適用される移動速度(変化速度v2)の半分となったとユーザUに感じさせるように仮想コンテンツ50の表示を制御する方法としては、以下の方法が考えられる。
例えば、表示制御部14は、減速領域A内に存在する仮想コンテンツ50に適用されるフレームレートFR1を減速領域A内に存在しない仮想コンテンツ50に適用されるフレームレートFR2よりも小さくしてもよい。より具体的には、表示制御部14は、「FR1=FR2×v1/v2」となるように、フレームレートFR1を設定すればよい。上記のように、変化速度v1が変化速度v2の1/2である場合には、表示制御部14は、フレームレートFR1をフレームレートFR2の半分にすればよい。言い換えれば、表示制御部14は、減速領域A内に存在する仮想コンテンツ50に適用されるフレーム間隔を減速領域A内に存在しない仮想コンテンツ50に適用されるフレーム間隔の2倍にすればよい。
図5を参照して、上記処理について具体的に説明する。図5の(A)は、仮想コンテンツ50が変化速度v2で移動し続けると仮定した場合の、各フレームf1~f5と仮想コンテンツ50の各状態s1~s5との対応関係を示している。このときのフレーム間隔をdと表す。一方、図5の(B)は、上記のように、減速領域A内に存在する仮想コンテンツ50に適用されるフレーム間隔を減速領域A内に存在しない仮想コンテンツ50に適用されるフレーム間隔(すなわち、図5の(A)に示される「d」)の2倍である「2×d」にした場合の、各フレームf1~f5と仮想コンテンツ50の各状態s1~s5との対応関係を示している。
上記制御によれば、仮想コンテンツ50に適用されるフレームレートを減速領域A内に存在するか否かによって切り替えるといった比較的容易な処理によって、減速領域A内に存在する仮想コンテンツ50の変化速度v1を、減速領域A内に存在しない仮想コンテンツ50の変化速度v2よりも遅くすることができる。すなわち、図5の(A)及び(B)に示したように、減速領域A内に存在する仮想コンテンツ50に適用されるフレーム間隔を通常時(減速領域A内に仮想コンテンツ50が存在しないとき)よりも引き延ばすことにより、減速領域A内に存在する仮想コンテンツ50の状態変化のスピードを見かけ上遅くすることができる。
一方、上記のようにフレームレートFR1をフレームレートFR2よりも小さくする(フレーム間隔を引き延ばす)方法では、減速領域A内において、仮想コンテンツ50が同じ状態(位置)で表示され続ける時間が長くなってしまう。すなわち、表示領域31aに表示される仮想コンテンツ50の状態変化(移動)がスムーズではなくなり、ユーザUが、仮想コンテンツ50が一定の刻み幅で瞬間移動を行っているように感じるおそれがある。
そこで、表示制御部14は、表示領域31a上において、仮想コンテンツ50の状態変化(図4の例では移動)がスムーズとなるように、以下のような表示制御を行ってもよい。すなわち、表示制御部14は、減速領域A内において、仮想コンテンツ50の状態が変化速度v2で変化すると仮定した場合の第1フレームに対応する仮想コンテンツ50の第1状態と第1フレームの次の第2フレームに対応する仮想コンテンツ50の第2状態との間に、仮想コンテンツ50の一以上の中間的な第3状態を補完してもよい。
図4の例において、状態s1と状態s2との間の表示制御に着目すると、表示制御部14は、仮想コンテンツ50の状態が変化速度v2で変化すると仮定した場合のフレームf1(第1フレーム)に対応する仮想コンテンツ50の状態s1(第1状態)とフレームf2(第2フレーム)に対応する仮想コンテンツ50の状態s2(第2状態)との間に、仮想コンテンツ50の一以上の第3状態(図4の例では、1つの状態s12)を補完してもよい。すなわち、図5の(C)に示されるように、表示制御部14は、フレームf1とフレームf2との間に、状態s1と状態s2との中間の状態(位置)である第3状態(状態s12)に対応するフレームf12を補完(挿入)してもよい。同様に、表示制御部14は、フレームfnとフレームfn+1との間に、状態sn n+1に対応するフレームfn n+1を補完(挿入)してもよい(n=2,3,4)。
上記処理によれば、仮想コンテンツ50が減速領域A内に存在するか否かによって仮想コンテンツ50に適用されるフレームレート(フレーム間隔)を変えることなく、状態snが表示されるフレームfnと状態sn+1が表示されるフレームfn+1との間に中間的な状態sn n+1が表示されるフレームfn n+1を挟み込むことにより、表示領域31aに表示される仮想コンテンツ50の状態変化をより滑らかに表現することができる。すなわち、フレーム間隔を引き延ばす方法(図5の(B)参照)では、同一の状態がフレーム間隔「2×d」だけ継続されると共に、フレーム間における仮想コンテンツ50の状態の変化幅(移動幅)が比較的大きい。これに対して、中間的な状態に対応するフレームを補完する上記処理(図5の(C)参照)によれば、同一の状態が継続される期間を元のフレーム間隔「d」に維持することができると共に、フレーム間における仮想コンテンツ50の状態の変化幅(移動幅)を小さくすることができる。従って、フレーム間隔を引き延ばす方法を採用する場合と比較して、ユーザUに与える違和感を低減することができる。なお、変化速度v1を変化速度v2のN分の1にする場合には、表示制御部14は、「N-1」個の中間状態(第3状態)を補完すればよい。
図6は、仮想コンテンツの他の例を示す図である。図6に示されるように、仮想コンテンツ50は、複数の文字からなるテキスト情報を含んでもよい。この例では、仮想コンテンツ50は、所定の移動方向(図6の例では、鉛直落下方向)に沿って移動するオブジェクトである。仮想コンテンツ50は、例えば、ユーザU(HMD30)の前方の上空から垂直に落下移動するオブジェクトとして構成され得る。例えば、仮想コンテンツ50は、あたかも複数の文字が雨のように上空から降り注ぐような態様で、落下移動する。この場合、仮想コンテンツ50が上空から減速領域A内に入るまでは、仮想コンテンツ50は、比較的早い落下速度(変化速度v2)で移動する。一方、仮想コンテンツ50が減速領域A内に入ると、上述した表示制御部14による表示制御により、仮想コンテンツ50は、表示領域31a上において、変化速度v2よりも遅い落下速度(変化速度v1)で減速移動することになる。その結果、ユーザUは、仮想コンテンツ50が減速領域A内で減速されている期間において、仮想コンテンツ50に含まれるテキスト情報を容易に視認することができる。
ここで、表示制御部14は、仮想コンテンツ50のテキスト情報の視認性を確保するために、以下の表示制御を行ってもよい。すなわち、表示制御部14は、仮想コンテンツ50の移動方向と、仮想コンテンツ50が減速領域A内に存在するときに適用される変化速度v1と、減速領域A(例えば、減速領域Aの位置、サイズ、形状等)と、に基づいて、仮想コンテンツ50が変化速度v2よりも遅い変化速度v1で移動する減速期間を算出する。すなわち、表示制御部14は、仮想コンテンツ50の移動方向、変化速度v1、及び減速領域Aに基づいて、仮想コンテンツ50が減速領域A内に入る時点T1(すなわち、仮想コンテンツ50が減速領域A内に存在すると最初に判定される時点)と仮想コンテンツ50が減速領域Aから出る時点T2(すなわち、仮想コンテンツ50が減速領域A内に入った後に、仮想コンテンツ50が減速領域A内に存在しないと最初に判定される時点)とを特定し、時点T1から時点T2までの期間「T2-T1」を、減速期間として算出する。
そして、表示制御部14は、算出された減速期間に基づいて、仮想コンテンツ50のテキスト情報に含まれる文字数を所定数以下に制限する。例えば、外国語音声の字幕付き映画において、一度に表示される字幕の文字数は、一般的に、1秒あたり4文字以内に制限されている。表示制御部14は、このような映画字幕の字数制限と同様のルールに基づいて、仮想コンテンツ50のテキスト情報に含まれる文字数を制限してもよい。例えば、表示制御部14は、減速期間が5秒と算出された場合には、上記ルール(4文字/秒)を適用することにより、仮想コンテンツ50のテキスト情報に含まれる文字数を20文字以内に制限してもよい。上記構成によれば、仮想コンテンツ50がテキスト情報を含むオブジェクトである場合において、仮想コンテンツ50の視認性(すなわち、テキスト情報の把握容易性)を適切に確保することができる。
次に、図7を参照して、仮想コンテンツ提供システム1の動作の一例(実施形態に係る仮想コンテンツ提供方法を含む)について説明する。ここでは、ある特定のユーザUのHMD30とサーバ10との間で実行される処理に着目して説明を行う。
ステップS1において、コンテンツ取得部11は、ユーザUのHMD30の表示部31に表示するための仮想コンテンツ50を取得する。
ステップS2において、視線情報取得部12は、ユーザUの視線を示す視線情報を取得する。
ステップS3において、領域設定部13は、減速領域Aを設定する。例えば、領域設定部13は、ステップS2において取得された視線情報に基づいて特定されるユーザUの注視点Pを含む領域を減速領域Aとして設定する。本実施形態では、領域設定部13は、ユーザUの有効視野に対応する領域を減速領域Aとして設定する。また、領域設定部13は、減速領域AのうちユーザUの弁別視野に対応する領域を第1領域A1とし、減速領域Aのうち第1領域A1を除いた領域(すなわち、有効視野に含まれるが弁別視野に含まれない領域)を第2領域A2とする。
ステップS4において、表示制御部14は、表示部31の表示領域31aに表示される仮想コンテンツ50の表示制御を行う。図8に示されるフローチャートを参照して、表示制御部14による表示制御(ステップS4の処理)の一例について説明する。なお、図8のフローチャートの処理は、仮想コンテンツ50毎に実行される。すなわち、表示領域31a上に複数の独立した仮想コンテンツ50が存在する場合には、表示制御部14は、各仮想コンテンツ50に対して、図8のフローチャートの処理を実行すればよい。
ステップS41において、表示制御部14は、仮想コンテンツ50が減速領域A内に存在するか否かを判定する。
例えば仮想コンテンツ50が図3に示される位置P1又はP5に存在する場合には、ステップS41において、仮想コンテンツ50が減速領域A内に存在しないと判定される(ステップS41:NO)。この場合、ステップS42において、表示制御部14は、仮想コンテンツ50に設定される状態変化速度として、上述した変化速度v2を適用する。
一方、例えば仮想コンテンツ50が図3に示される位置P2~P4のいずれかに存在する場合には、ステップS41において、仮想コンテンツ50が減速領域A内に存在すると判定される(ステップS41:YES)。この場合、ステップS43において、表示制御部14は、仮想コンテンツ50が第1領域A1に存在するか否かを判定する。
例えば仮想コンテンツ50が図3に示される位置P3に存在する場合には、ステップS43において、仮想コンテンツ50が第1領域A1内に存在すると判定される(ステップS43:YES)。この場合、ステップS44において、表示制御部14は、仮想コンテンツ50に設定される状態変化速度として、上述した変化速度v3を適用する。
一方、例えば仮想コンテンツ50が図3に示される位置P2又はP4に存在する場合には、ステップS43において、仮想コンテンツ50が第1領域A1内に存在しない(すなわち、仮想コンテンツ50が第2領域A2に存在する)と判定される(ステップS43:NO)。この場合、ステップS45において、表示制御部14は、仮想コンテンツ50に設定される状態変化速度として、上述した変化速度v4を適用する。
以上説明したサーバ10においては、表示部31に表示される領域の一部である減速領域A内に仮想コンテンツ50が存在するときの仮想コンテンツ50の状態変化の速度(変化速度v1)が、減速領域A内に仮想コンテンツ50が存在しないとき(すなわち、減速領域A外に仮想コンテンツ50が存在するとき)の仮想コンテンツ50の状態変化の速度(変化速度v2)よりも遅くなるように、仮想コンテンツ50の表示が制御される。上記構成によれば、減速領域A内において、仮想コンテンツ50の内容を把握し易くすることができるため、仮想コンテンツ50の視認性を向上させることができる。
また、仮想コンテンツ50の状態変化のスピードが減速される減速領域Aは、表示領域31aの一部に設定され、表示領域31aのうち減速領域A以外の領域においては、仮想コンテンツ50は本来の変化速度v2(すなわち、減速されない変化速度)で状態を変化させる。従って、ユーザUは、視界の隅(視界の中心から外れた領域)において仮想コンテンツ50の本来の動作を把握しつつ、視界の中央部(すなわち、減速領域A)において減速された仮想コンテンツ50の内容を容易に認識することができる。より具体的には、図6の例では、仮想コンテンツ50は、表示領域31aのうち減速領域Aの外側においては、変化速度v2で本来の動作(例えば、雨のように上空から落下する動作)を実行するため、ユーザUは、文字が雨のように落下する様子を視界の隅で把握することができる。つまり、「文字を雨のように降らせる」という仮想コンテンツ50の演出をユーザUに体感させることができる。このように、上述したサーバ10による仮想コンテンツ50の表示制御によれば、仮想コンテンツ50の本来のダイナミックな動作をユーザUに体感させつつ、仮想コンテンツ50の内容を容易に把握させることが可能となる。
なお、上記実施形態では、サーバ10が仮想コンテンツ提供装置として機能したが、サーバ10の機能は、HMD30に実装されてもよい。この場合、HMD30が仮想コンテンツ提供装置として機能する。また、上述したサーバ10の機能の一部は、HMD30によって実行されてもよい。この場合、サーバ10及びHMD30を含むコンピュータシステムが、仮想コンテンツ提供装置として機能する。
また、上記実施形態の説明に用いたブロック図は、機能単位のブロックを示している。これらの機能ブロック(構成部)は、ハードウェア及びソフトウェアの少なくとも一方の任意の組み合わせによって実現される。また、各機能ブロックの実現方法は特に限定されない。すなわち、各機能ブロックは、物理的又は論理的に結合した1つの装置を用いて実現されてもよいし、物理的又は論理的に分離した2つ以上の装置を直接的又は間接的に(例えば、有線、無線などを用いて)接続し、これら複数の装置を用いて実現されてもよい。機能ブロックは、上記1つの装置又は上記複数の装置にソフトウェアを組み合わせて実現されてもよい。
機能には、判断、決定、判定、計算、算出、処理、導出、調査、探索、確認、受信、送信、出力、アクセス、解決、選択、選定、確立、比較、想定、期待、見做し、報知(broadcasting)、通知(notifying)、通信(communicating)、転送(forwarding)、構成(configuring)、再構成(reconfiguring)、割り当て(allocating、mapping)、割り振り(assigning)などがあるが、これらに限られない。
例えば、本開示の一実施の形態におけるサーバ10は、本開示の仮想コンテンツ提供方法を行うコンピュータとして機能してもよい。図9は、本開示の一実施の形態に係るサーバ10のハードウェア構成の一例を示す図である。サーバ10は、物理的には、プロセッサ1001、メモリ1002、ストレージ1003、通信装置1004、入力装置1005、出力装置1006、バス1007などを含むコンピュータ装置として構成されてもよい。
なお、以下の説明では、「装置」という文言は、回路、デバイス、ユニットなどに読み替えることができる。サーバ10のハードウェア構成は、図9に示した各装置を1つ又は複数含むように構成されてもよいし、一部の装置を含まずに構成されてもよい。なお、HMD30も、図9に示すサーバ10のハードウェア構成と同様のハードウェア構成を有してもよい。
サーバ10における各機能は、プロセッサ1001、メモリ1002などのハードウェア上に所定のソフトウェア(プログラム)を読み込ませることによって、プロセッサ1001が演算を行い、通信装置1004による通信を制御したり、メモリ1002及びストレージ1003におけるデータの読み出し及び書き込みの少なくとも一方を制御したりすることによって実現される。
プロセッサ1001は、例えば、オペレーティングシステムを動作させてコンピュータ全体を制御する。プロセッサ1001は、周辺装置とのインターフェース、制御装置、演算装置、レジスタなどを含む中央処理装置(CPU:Central Processing Unit)によって構成されてもよい。
また、プロセッサ1001は、プログラム(プログラムコード)、ソフトウェアモジュール、データなどを、ストレージ1003及び通信装置1004の少なくとも一方からメモリ1002に読み出し、これらに従って各種の処理を実行する。プログラムとしては、上述の実施の形態において説明した動作の少なくとも一部をコンピュータに実行させるプログラムが用いられる。例えば、サーバ10の各機能部(例えば、表示制御部14等)は、メモリ1002に格納され、プロセッサ1001において動作する制御プログラムによって実現されてもよく、他の機能ブロックについても同様に実現されてもよい。上述の各種処理は、1つのプロセッサ1001によって実行される旨を説明してきたが、2以上のプロセッサ1001により同時又は逐次に実行されてもよい。プロセッサ1001は、1以上のチップによって実装されてもよい。なお、プログラムは、電気通信回線を介してネットワークから送信されても良い。
メモリ1002は、コンピュータ読み取り可能な記録媒体であり、例えば、ROM(Read Only Memory)、EPROM(Erasable Programmable ROM)、EEPROM(Electrically Erasable Programmable ROM)、RAM(Random Access Memory)などの少なくとも1つによって構成されてもよい。メモリ1002は、レジスタ、キャッシュ、メインメモリ(主記憶装置)などと呼ばれてもよい。メモリ1002は、本開示の一実施の形態に係るコンテンツ提供方法を実施するために実行可能なプログラム(プログラムコード)、ソフトウェアモジュールなどを保存することができる。
ストレージ1003は、コンピュータ読み取り可能な記録媒体であり、例えば、CD-ROM(Compact Disc ROM)などの光ディスク、ハードディスクドライブ、フレキシブルディスク、光磁気ディスク(例えば、コンパクトディスク、デジタル多用途ディスク、Blu-ray(登録商標)ディスク)、スマートカード、フラッシュメモリ(例えば、カード、スティック、キードライブ)、フロッピー(登録商標)ディスク、磁気ストリップなどの少なくとも1つによって構成されてもよい。ストレージ1003は、補助記憶装置と呼ばれてもよい。上述の記憶媒体は、例えば、メモリ1002及びストレージ1003の少なくとも一方を含むデータベース、サーバその他の適切な媒体であってもよい。
通信装置1004は、有線ネットワーク及び無線ネットワークの少なくとも一方を介してコンピュータ間の通信を行うためのハードウェア(送受信デバイス)であり、例えばネットワークデバイス、ネットワークコントローラ、ネットワークカード、通信モジュールなどともいう。
入力装置1005は、外部からの入力を受け付ける入力デバイス(例えば、キーボード、マウス、マイクロフォン、スイッチ、ボタン、センサなど)である。出力装置1006は、外部への出力を実施する出力デバイス(例えば、ディスプレイ、スピーカー、LEDランプなど)である。なお、入力装置1005及び出力装置1006は、一体となった構成(例えば、タッチパネル)であってもよい。
また、プロセッサ1001、メモリ1002などの各装置は、情報を通信するためのバス1007によって接続される。バス1007は、単一のバスを用いて構成されてもよいし、装置間ごとに異なるバスを用いて構成されてもよい。
また、サーバ10は、マイクロプロセッサ、デジタル信号プロセッサ(DSP:Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)、FPGA(Field Programmable Gate Array)などのハードウェアを含んで構成されてもよく、当該ハードウェアにより、各機能ブロックの一部又は全てが実現されてもよい。例えば、プロセッサ1001は、これらのハードウェアの少なくとも1つを用いて実装されてもよい。
以上、本実施形態について詳細に説明したが、当業者にとっては、本実施形態が本明細書中に説明した実施形態に限定されるものではないということは明らかである。本実施形態は、特許請求の範囲の記載により定まる本発明の趣旨及び範囲を逸脱することなく修正及び変更態様として実施することができる。したがって、本明細書の記載は、例示説明を目的とするものであり、本実施形態に対して何ら制限的な意味を有するものではない。
本開示において説明した各態様/実施形態の処理手順、シーケンス、フローチャートなどは、矛盾の無い限り、順序を入れ替えてもよい。例えば、本開示において説明した方法については、例示的な順序を用いて様々なステップの要素を提示しており、提示した特定の順序に限定されない。
入出力された情報等は特定の場所(例えば、メモリ)に保存されてもよいし、管理テーブルを用いて管理してもよい。入出力される情報等は、上書き、更新、又は追記され得る。出力された情報等は削除されてもよい。入力された情報等は他の装置へ送信されてもよい。
判定は、1ビットで表される値(0か1か)によって行われてもよいし、真偽値(Boolean:true又はfalse)によって行われてもよいし、数値の比較(例えば、所定の値との比較)によって行われてもよい。
本開示において説明した各態様/実施形態は単独で用いてもよいし、組み合わせて用いてもよいし、実行に伴って切り替えて用いてもよい。また、所定の情報の通知(例えば、「Xであること」の通知)は、明示的に行うものに限られず、暗黙的(例えば、当該所定の情報の通知を行わない)ことによって行われてもよい。
ソフトウェアは、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語と呼ばれるか、他の名称で呼ばれるかを問わず、命令、命令セット、コード、コードセグメント、プログラムコード、プログラム、サブプログラム、ソフトウェアモジュール、アプリケーション、ソフトウェアアプリケーション、ソフトウェアパッケージ、ルーチン、サブルーチン、オブジェクト、実行可能ファイル、実行スレッド、手順、機能などを意味するよう広く解釈されるべきである。
また、ソフトウェア、命令、情報などは、伝送媒体を介して送受信されてもよい。例えば、ソフトウェアが、有線技術(同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者回線(DSL:Digital Subscriber Line)など)及び無線技術(赤外線、マイクロ波など)の少なくとも一方を使用してウェブサイト、サーバ、又は他のリモートソースから送信される場合、これらの有線技術及び無線技術の少なくとも一方は、伝送媒体の定義内に含まれる。
本開示において説明した情報、信号などは、様々な異なる技術のいずれかを使用して表されてもよい。例えば、上記の説明全体に渡って言及され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、チップなどは、電圧、電流、電磁波、磁界若しくは磁性粒子、光場若しくは光子、又はこれらの任意の組み合わせによって表されてもよい。
また、本開示において説明した情報、パラメータなどは、絶対値を用いて表されてもよいし、所定の値からの相対値を用いて表されてもよいし、対応する別の情報を用いて表されてもよい。
上述したパラメータに使用する名称はいかなる点においても限定的な名称ではない。さらに、これらのパラメータを使用する数式等は、本開示で明示的に開示したものと異なる場合もある。様々な情報要素は、あらゆる好適な名称によって識別できるので、これらの様々な情報要素に割り当てている様々な名称は、いかなる点においても限定的な名称ではない。
本開示において使用する「に基づいて」という記載は、別段に明記されていない限り、「のみに基づいて」を意味しない。言い換えれば、「に基づいて」という記載は、「のみに基づいて」と「に少なくとも基づいて」の両方を意味する。
本開示において使用する「第1の」、「第2の」などの呼称を使用した要素へのいかなる参照も、それらの要素の量又は順序を全般的に限定しない。これらの呼称は、2つ以上の要素間を区別する便利な方法として本開示において使用され得る。したがって、第1及び第2の要素への参照は、2つの要素のみが採用され得ること、又は何らかの形で第1の要素が第2の要素に先行しなければならないことを意味しない。
本開示において、「含む(include)」、「含んでいる(including)」及びそれらの変形が使用されている場合、これらの用語は、用語「備える(comprising)」と同様に、包括的であることが意図される。さらに、本開示において使用されている用語「又は(or)」は、排他的論理和ではないことが意図される。
本開示において、例えば、英語でのa, an及びtheのように、翻訳により冠詞が追加された場合、本開示は、これらの冠詞の後に続く名詞が複数形であることを含んでもよい。
本開示において、「AとBが異なる」という用語は、「AとBが互いに異なる」ことを意味してもよい。なお、当該用語は、「AとBがそれぞれCと異なる」ことを意味してもよい。「離れる」、「結合される」などの用語も、「異なる」と同様に解釈されてもよい。
1…仮想コンテンツ提供システム、10…サーバ(仮想コンテンツ提供装置)、11…コンテンツ取得部、12…視線情報取得部、13…領域設定部、14…表示制御部、30…HMD(ユーザ端末)、31…表示部、31a…表示領域、32…センサ、50…仮想コンテンツ、A…減速領域、A1…第1領域、A2…第2領域。
Claims (7)
- ユーザに使用されるユーザ端末の表示部に表示するための仮想コンテンツを提供する仮想コンテンツ提供装置であって、
経時的に状態を変化させる前記仮想コンテンツを取得するコンテンツ取得部と、
前記表示部に表示される領域の一部である減速領域を設定する領域設定部と、
前記減速領域内に存在する前記仮想コンテンツに適用される前記仮想コンテンツの状態の第1変化速度が前記減速領域内に存在しない前記仮想コンテンツに適用される前記仮想コンテンツの状態の第2変化速度よりも遅くなるように、前記仮想コンテンツの表示を制御する表示制御部と、
を備える、仮想コンテンツ提供装置。 - 前記表示制御部は、前記減速領域の中心からの距離が近いほど前記第1変化速度が遅くなるように、前記第1変化速度を可変に設定する、
請求項1に記載の仮想コンテンツ提供装置。 - 前記ユーザの視線を示す視線情報を取得する視線情報取得部を更に備え、
前記領域設定部は、前記視線情報に基づいて、前記ユーザの注視点を含む領域を前記減速領域として設定する、
請求項1又は2に記載の仮想コンテンツ提供装置。 - 前記領域設定部は、第1の視認性を有する第1領域と、前記第1領域よりも外側の領域であって前記第1の視認性よりも低い第2の視認性を有する第2領域と、を有する前記減速領域を設定し、
前記表示制御部は、前記第1領域内に存在する前記仮想コンテンツに適用される前記仮想コンテンツの状態の第3変化速度が前記第2領域内に存在する前記仮想コンテンツに適用される前記仮想コンテンツの状態の第4変化速度よりも遅くなるように、前記仮想コンテンツの表示を制御する、
請求項1~3のいずれか一項に記載の仮想コンテンツ提供装置。 - 前記仮想コンテンツは、複数の文字からなるテキスト情報を含むと共に所定の移動方向に沿って移動するオブジェクトであり、
前記表示制御部は、
前記移動方向と前記第1変化速度と前記減速領域とに基づいて、前記仮想コンテンツが前記第1変化速度で移動する減速期間を算出し、
前記減速期間に基づいて、前記テキスト情報に含まれる文字数を所定数以下に制限する、
請求項1~4のいずれか一項に記載の仮想コンテンツ提供装置。 - 前記表示制御部は、前記減速領域内に存在する前記仮想コンテンツに適用されるフレームレートを、前記減速領域内に存在しない前記仮想コンテンツに適用されるフレームレートよりも小さくする、
請求項1~5のいずれか一項に記載の仮想コンテンツ提供装置。 - 前記表示制御部は、前記減速領域内において、前記仮想コンテンツの状態が前記第2変化速度で変化すると仮定した場合の第1フレームに対応する前記仮想コンテンツの第1状態と前記第1フレームの次の第2フレームに対応する前記仮想コンテンツの第2状態との間に、前記仮想コンテンツの一以上の第3状態を補完する、
請求項1~5のいずれか一項に記載の仮想コンテンツ提供装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2023556689A JP7598483B2 (ja) | 2021-10-29 | 2022-10-28 | 仮想コンテンツ提供装置 |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2021177119 | 2021-10-29 | ||
| JP2021-177119 | 2021-10-29 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2023074875A1 true WO2023074875A1 (ja) | 2023-05-04 |
Family
ID=86158663
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2022/040515 Ceased WO2023074875A1 (ja) | 2021-10-29 | 2022-10-28 | 仮想コンテンツ提供装置 |
Country Status (2)
| Country | Link |
|---|---|
| JP (1) | JP7598483B2 (ja) |
| WO (1) | WO2023074875A1 (ja) |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2014056217A (ja) * | 2012-09-14 | 2014-03-27 | Olympus Corp | ウェアラブル携帯型表示装置、頭部装着型表示装置、表示処理システム及びプログラム |
| JP2014514658A (ja) * | 2011-04-08 | 2014-06-19 | アマゾン・テクノロジーズ、インコーポレイテッド | 注視に基づくコンテンツディスプレイ |
-
2022
- 2022-10-28 WO PCT/JP2022/040515 patent/WO2023074875A1/ja not_active Ceased
- 2022-10-28 JP JP2023556689A patent/JP7598483B2/ja active Active
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2014514658A (ja) * | 2011-04-08 | 2014-06-19 | アマゾン・テクノロジーズ、インコーポレイテッド | 注視に基づくコンテンツディスプレイ |
| JP2014056217A (ja) * | 2012-09-14 | 2014-03-27 | Olympus Corp | ウェアラブル携帯型表示装置、頭部装着型表示装置、表示処理システム及びプログラム |
Also Published As
| Publication number | Publication date |
|---|---|
| JP7598483B2 (ja) | 2024-12-11 |
| JPWO2023074875A1 (ja) | 2023-05-04 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7928926B2 (en) | Display apparatus and method for hands free operation that selects a function when window is within field of view | |
| US9195306B2 (en) | Virtual window in head-mountable display | |
| JP4927631B2 (ja) | 表示装置、その制御方法、プログラム、記録媒体および集積回路 | |
| US11145096B2 (en) | System and method for augmented reality interaction | |
| US9928655B1 (en) | Predictive rendering of augmented reality content to overlay physical structures | |
| US9424767B2 (en) | Local rendering of text in image | |
| US11282481B2 (en) | Information processing device | |
| EP3368965A1 (en) | Remote rendering for virtual images | |
| EP2815291A1 (en) | Head-mounted display, program for controlling head-mounted display, and method of controlling head-mounted display | |
| US10356493B2 (en) | Methods, systems, and media for presenting interactive elements within video content | |
| KR20160009879A (ko) | 웨어러블 디스플레이 디바이스 및 그 제어 방법 | |
| CN107479692B (zh) | 虚拟现实场景的控制方法、设备及虚拟现实设备 | |
| JP2022102907A (ja) | システム、管理装置、プログラム、及び管理方法 | |
| JP7598483B2 (ja) | 仮想コンテンツ提供装置 | |
| EP3438938B1 (en) | Information processing device, information processing method, and program | |
| US12530843B2 (en) | Virtual space presentation device | |
| JP7733815B2 (ja) | 仮想空間提供装置 | |
| JP7749034B2 (ja) | 表示制御装置 | |
| JP7794852B2 (ja) | 情報処理装置 | |
| JP7777039B2 (ja) | 情報処理装置 | |
| EP4221236B1 (en) | Methods, systems, and media for presenting a user interface in a wearable device | |
| JP2017049738A (ja) | ヘッドマウントディスプレイシステムを制御するプログラム | |
| CN116360906A (zh) | 交互控制方法、装置、头戴显示设备及介质 | |
| EP4564135A1 (en) | Determining visual attention | |
| US12504940B2 (en) | Augmented reality display control device for controlling information commonly arranged in a common virtual space |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22887200 Country of ref document: EP Kind code of ref document: A1 |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2023556689 Country of ref document: JP |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 22887200 Country of ref document: EP Kind code of ref document: A1 |