WO2024088375A1 - 一种弹幕呈现方法、装置、设备和存储介质 - Google Patents
一种弹幕呈现方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- WO2024088375A1 WO2024088375A1 PCT/CN2023/127049 CN2023127049W WO2024088375A1 WO 2024088375 A1 WO2024088375 A1 WO 2024088375A1 CN 2023127049 W CN2023127049 W CN 2023127049W WO 2024088375 A1 WO2024088375 A1 WO 2024088375A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- barrage
- presentation
- bullet screen
- track
- bullet
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/431—Generation of visual interfaces for content selection or interaction; Content or additional data rendering
Definitions
- Embodiments of the present disclosure relate to a bullet screen presentation method, apparatus, device and storage medium.
- VR virtual reality
- AR augmented reality
- MR mixed reality
- a bullet screen interactive interface is displayed in front of the user in the virtual space, on which various bullet screen messages sent by users in the virtual space are presented, making the presentation of the bullet screen in the virtual space relatively simple and having certain presentation limitations.
- the present disclosure provides a bullet screen presentation method, device, equipment and storage medium, which realize the surround presentation of bullet screen in a virtual space through at least one layer of surround bullet screen track, enhance the diversity and interactive fun of the bullet screen presentation in the virtual space, and improve the user's all-round immersive experience in the virtual space.
- the present disclosure provides a bullet screen presentation method, which is applied to an XR device.
- the method includes:
- a presentation position of the current barrage in the at least one layer of surrounding barrage track is determined to present the current barrage at the presentation position.
- the embodiment of the present disclosure provides a bullet screen presentation device, which is configured on an XR device, and includes:
- a bullet screen track determination module used to determine at least one layer of surrounding bullet screen tracks in the virtual space
- the barrage presentation module is used to determine the presentation position of the current barrage in the at least one layer of surrounding barrage track in response to any current barrage acquired in the virtual space, so as to present the current barrage at the presentation position.
- the present disclosure also provides a bullet screen display method, which includes:
- the display information of the barrage includes content of the barrage, orbital information of birth, space information occupied on the orbit, and disappearance position information on the orbit;
- the barrage is displayed on the circular track according to the display information of the barrage, and the barrage moves on the circular track.
- the embodiment of the present disclosure further provides a bullet screen display device, the bullet screen display device comprising:
- a generating module used for generating at least one circular track in a virtual space
- An acquisition module used to acquire display information of the barrage, wherein the display information of the barrage includes content of the barrage, orbital information of birth, space information occupied on the orbit, and disappearance position information on the orbit;
- the display module is used to display the bullet screen on the circular track according to the display information of the bullet screen, and the bullet screen moves on the circular track.
- the present disclosure also provides a bullet screen display method, which includes:
- the barrage is displayed in the virtual space according to the target display mode.
- the embodiment of the present disclosure further provides a bullet screen display device, the bullet screen display device comprising:
- a scene acquisition module used to acquire the content scene of the virtual space
- a determination module used to determine a target display mode of the bullet screen according to the content scenario
- the display module is used to display the bullet screen in the virtual space according to the target display mode.
- the embodiment of the present disclosure provides an electronic device, which includes:
- a processor and a memory the memory being used to store a computer program, and the processor being used to call and run the computer program stored in the memory to execute the barrage presentation method or barrage display method provided in any embodiment of the present disclosure.
- An embodiment of the present disclosure provides a computer-readable storage medium for storing a computer program, which enables a computer to execute a barrage presentation method or a barrage display method as provided in any embodiment of the present disclosure.
- An embodiment of the present disclosure provides a computer program product, including a computer program/instructions, which enables a computer to execute a barrage presentation method or a barrage display method as provided in any embodiment of the present disclosure.
- At least one layer of surrounding bullet screen tracks in the virtual space is first determined. Then, for any current bullet screen obtained in the virtual space, the presentation position of the current bullet screen in at least one layer of surrounding bullet screen tracks is determined, so that the current bullet screen is presented at the presentation position, thereby realizing the surrounding presentation of bullet screens in the virtual space, facilitating users to browse bullet screens in all directions in the virtual space, enhancing the diversity and interactive fun of bullet screen presentation in the virtual space, and improving the users' all-round immersive experience in the virtual space.
- FIG1 is a flow chart of a bullet screen presentation method provided by an embodiment of the present disclosure.
- FIG2 is an exemplary schematic diagram of at least one layer of surrounding bullet screen track provided by an embodiment of the present disclosure
- FIG3 is a flowchart of a method for determining a specific process of at least one layer of surrounding bullet screen track provided by an embodiment of the present disclosure
- FIG4 is a schematic diagram showing the principle of determining at least one layer of surrounding bullet screen track according to an embodiment of the present disclosure
- FIG5 is a flowchart of a method for presenting a bullet screen within at least one layer of a surrounding bullet screen track provided by an embodiment of the present disclosure
- FIG6 is a schematic diagram showing the principle of presenting a bullet screen in at least one layer of a surrounding bullet screen track according to an embodiment of the present disclosure
- FIG7 is a flow chart of another bullet screen presentation method provided by an embodiment of the present disclosure.
- FIG8 is an exemplary schematic diagram of multiple barrage production areas defined within at least one layer of a surrounding barrage track provided by an embodiment of the present disclosure
- FIG9 is a schematic diagram of a bullet screen presentation device provided by an embodiment of the present disclosure.
- FIG10 is a flow chart of a bullet screen display method provided by an embodiment of the present disclosure.
- FIG11 is a schematic diagram of a bullet screen displayed on a circular track
- FIG12 is a schematic diagram of the bending process of the grid corresponding to the bullet screen
- FIG13 is a flow chart of a method for acquiring display information of a new bullet screen provided by an embodiment of the present disclosure
- FIG14 is a schematic diagram of a main state interval and a guest state interval of a track
- FIG15 is a flow chart of a method for acquiring display information of a new bullet screen provided by an embodiment of the present disclosure
- FIG16 is a schematic diagram of the structure of a bullet screen display device provided in an embodiment of the present disclosure.
- FIG17 is a schematic diagram of a flow chart of a bullet screen display method provided in an embodiment of the present disclosure.
- FIG18 is a schematic diagram of a bullet screen presentation area divided in a virtual space provided by an embodiment of the present disclosure.
- FIG19 is a flow chart of another bullet screen display method provided by an embodiment of the present disclosure.
- FIG20a is a front view of a method of displaying bullet comments in a horizontal scrolling manner in a virtual space provided by an embodiment of the present disclosure
- FIG20 b is a top view of a bullet screen displayed in an arc-shaped surround manner in a virtual space provided by an embodiment of the present disclosure
- FIG20c is a top view of a bullet screen displayed in a 180-degree surround manner in a virtual space provided by an embodiment of the present disclosure
- FIG20d is a top view of a bullet screen displayed in a 360-degree surround manner in a virtual space provided by an embodiment of the present disclosure
- FIG21 is a flow chart of another bullet screen display method provided in an embodiment of the present disclosure.
- FIG22a is a schematic diagram of different bullet screen track zoom ratios corresponding to a reciprocating stacking presentation method provided by an embodiment of the present disclosure
- FIG22b is a schematic diagram of different bullet screen track zoom ratios corresponding to a positive ladder presentation mode provided by an embodiment of the present disclosure
- FIG22c is a schematic diagram of different bullet screen track zoom ratios corresponding to a reverse ladder presentation mode provided by an embodiment of the present disclosure
- FIG23 is a front view of a method of displaying bullet comments in a horizontal scrolling manner and a reciprocating stacking presentation manner in a virtual space provided by an embodiment of the present disclosure
- FIG24 is a schematic block diagram of a bullet screen display device provided by an embodiment of the present disclosure.
- FIG. 25 is a schematic block diagram of an electronic device provided in an embodiment of the present disclosure.
- words such as “exemplary” or “for example” are used to indicate examples, illustrations or descriptions. Any embodiment or scheme described as “exemplary” or “for example” in the embodiments of the present disclosure should not be interpreted as being more preferred or more advantageous than other embodiments or schemes. Specifically, the use of words such as “exemplary” or “for example” is intended to present related concepts in a specific way.
- Virtual Reality is a technology for creating and experiencing a virtual world. It determines the generation of a virtual environment, which is a multi-source information (the virtual reality mentioned in this article includes at least visual perception, and can also include auditory perception, tactile perception, motion perception, and even taste perception, olfactory perception, etc.), to achieve the simulation of the fusion and interactive three-dimensional dynamic vision and entity behavior of the virtual environment, so that users can immerse themselves in a simulated virtual reality environment, and realize applications in various virtual environments such as maps, games, videos, education, medical treatment, simulation, collaborative training, sales, assisted manufacturing, maintenance and repair.
- the virtual reality mentioned in this article includes at least visual perception, and can also include auditory perception, tactile perception, motion perception, and even taste perception, olfactory perception, etc.
- VR devices virtual reality devices
- terminals for realizing virtual reality effects can usually be provided in the form of glasses, helmet-mounted displays (Head Mount Display, referred to as HMD), and contact lenses to realize visual perception and other forms of perception.
- HMD helmet-mounted displays
- contact lenses to realize visual perception and other forms of perception.
- the form of virtual reality devices is not limited to this, and can be further miniaturized or enlarged according to actual needs.
- the virtual reality devices described in the embodiments of the present disclosure may include but are not limited to the following types:
- PC-based virtual reality (PCVR) devices use the PC to perform related calculations and data output for virtual reality functions.
- External PC-based virtual reality devices use the data output by the PC to achieve virtual reality effects.
- Mobile virtual reality devices support the configuration of mobile terminals (such as smart phones) in various ways (such as head-mounted displays with dedicated card slots). Through wired or wireless connection with the mobile terminal, the mobile terminal performs relevant calculations of virtual reality functions and outputs data to the mobile virtual reality device, such as watching virtual reality videos through the mobile terminal's APP.
- mobile terminals such as smart phones
- ways such as head-mounted displays with dedicated card slots.
- the mobile terminal Through wired or wireless connection with the mobile terminal, the mobile terminal performs relevant calculations of virtual reality functions and outputs data to the mobile virtual reality device, such as watching virtual reality videos through the mobile terminal's APP.
- All-in-one virtual reality devices equipped with processors for performing relevant calculations for virtual functions, thus having Independent virtual reality input and output functions do not need to be connected to a PC or mobile terminal, and have a high degree of freedom in use.
- Augmented Reality A technology that calculates the camera’s attitude parameters in the real world (or three-dimensional world, real world) in real time during the process of the camera capturing images, and adds virtual elements to the images captured by the camera based on the camera attitude parameters.
- Virtual elements include but are not limited to: images, videos, and three-dimensional models.
- the goal of AR technology is to integrate the virtual world with the real world on the screen for interaction.
- MR Mixed Reality
- VR virtual reality
- AR augmented reality
- MR is an extension of virtual reality (VR) technology.
- the MR field involves computer vision, which is a science that studies how to make machines "see”. Furthermore, it refers to machine vision such as cameras and computers replacing human eyes to identify, track and measure targets, and further perform image processing, using computers to process images that are more suitable for human eye observation or transmission to instruments for detection.
- MR is a simulated scenery that integrates computer-created sensory input (e.g., virtual objects) with sensory input from a physical scenery or its representation.
- the computer-created sensory input can adapt to changes in sensory input from the physical scenery.
- some electronic systems used to present MR scenery can monitor the orientation and/or position relative to the physical scenery so that virtual objects can interact with real objects (i.e., physical elements from the physical scenery or their representations). For example, the system can monitor movement so that virtual plants appear to be stationary relative to physical buildings.
- Extended Reality refers to all real and virtual combined environments and human-computer interactions generated by computer technology and wearable devices, which include virtual reality (VR), augmented reality (AR) and mixed reality (MR) and other forms.
- VR virtual reality
- AR augmented reality
- MR mixed reality
- a virtual scene (also known as a virtual space) is a virtual scene displayed (or provided) when an application is running on an electronic device.
- the virtual scene can be a simulation of the real world, a semi-simulation and semi-fictitious virtual scene, or a purely fictitious virtual scene.
- the virtual scene can be any of a two-dimensional virtual scene, a 2.5-dimensional virtual scene, or a three-dimensional virtual scene.
- the embodiments of the present disclosure do not limit the dimensions of the virtual scene.
- a virtual scene can include the sky, land, ocean, etc., and the land can include environmental elements such as deserts and cities.
- the invention disclosed in the present invention is to set at least one layer of surrounding barrage track in the virtual space to present various types of barrage in the virtual space in an all-round way.
- the presentation position of the current barrage in the at least one layer of surrounding barrage track is determined according to the barrage that has been presented in the at least one layer of surrounding barrage track, so as to present the current barrage at the presentation position, thereby realizing the surrounding presentation of barrage in the virtual space, facilitating the user to browse the barrage in an all-round way in the virtual space, and enhancing the diversity and interactive fun of the barrage presentation in the virtual space.
- FIG1 is a flowchart of a bullet screen presentation method provided in an embodiment of the present disclosure, which can be applied to XR devices, but is not limited thereto.
- the method can be executed by a bullet screen presentation device provided in the present disclosure, wherein the bullet screen presentation device can be implemented in any software and/or hardware manner.
- the bullet screen presentation device can be configured in an electronic device such as AR/VR/MR that can simulate virtual scenes, and the present disclosure does not impose any restrictions on the specific type of electronic device.
- the method may include the following steps:
- the virtual space can be a virtual environment simulated by the XR device for a real interactive scene selected by any user, so as to display the corresponding interactive information in the virtual space.
- the virtual space can be a simulation of the real world, a semi-simulated and semi-fictional virtual scene, or a purely fictional virtual scene.
- the user selects a certain type of live broadcast scene to construct a corresponding virtual live broadcast environment as the virtual space in the present disclosure, so that each audience can enter the virtual space to realize the corresponding live broadcast interaction.
- the user puts on the XR device he will enter the virtual space formed by the fusion of the real scene and the virtual scene.
- the present disclosure will directly determine the object for presenting the bullet screen in the virtual space, that is, at least one layer of surrounding bullet screen track in the present disclosure.
- each user will send corresponding barrage messages for the various scene contents displayed to achieve user interaction in the virtual space.
- the barrage In order to avoid the barrage blocking the various scene contents displayed in the virtual space, the barrage is usually hidden when entering the virtual space, so that the user can actively turn on the barrage when there is a need to view the barrage. Therefore, in order to realize the convenient activation of the barrage in the virtual space, the present disclosure will set a barrage control in the virtual space to guide the user to perform the corresponding barrage opening operation. Therefore, after entering the virtual space, if the barrage is not currently enabled and the user has the need to view the barrage, the user will perform the corresponding trigger operation on the barrage control in the virtual space. When the trigger operation performed by the user on the barrage control is detected, the corresponding barrage opening instruction will be generated to determine the object used to present the barrage in the virtual space, that is, at least one layer of surrounding barrage track in the present disclosure.
- the present disclosure sets at least one layer of surrounding bullet screen tracks in the virtual space.
- At least one layer of surrounding bullet screen track can be a circular track formed around the user in the virtual space, and the surrounding angle of the at least one layer of surrounding bullet screen track facing the user can be adaptively adjusted according to the panoramic angle in the virtual space to adapt to the panoramic rotation angle of the user in the virtual space.
- the at least one layer of surrounding bullet screen track can be a 360-degree surrounding track set for the user, or a 270-degree surrounding track set for the user, which is not limited in the present disclosure.
- the number of track layers of at least one layer of the bullet screen track in the present disclosure is not limited, and can be determined according to the virtual space.
- the maximum number of barrages supported by the at least one layer of surrounding barrage track is set so that the at least one layer of surrounding barrage track supports the normal presentation of barrages under the maximum number of barrages, so as to avoid the barrages presented in at least one layer of surrounding barrage track being too crowded.
- the user's location in the virtual space is determined. Then, with the user's location as the center, at least one layer of surrounding bullet screen tracks set in the virtual space is determined to subsequently present various bullet screens, supporting users to browse the bullet screens in all directions.
- the at least one layer of surrounding barrage track in the present disclosure can be explicitly presented in the virtual space, so that the user can intuitively view the at least one layer of surrounding barrage track in the virtual space.
- the at least one layer of surrounding barrage track is mainly used to present each barrage in the virtual space, the user is not concerned about the shape of the track, but mainly focuses on the presented barrage. Therefore, the at least one layer of surrounding barrage track in the present disclosure can also be implicitly presented in the virtual space, without the need for the user to intuitively view the at least one layer of surrounding barrage track, presenting the user with an effect of the barrage floating in the virtual space, thereby enhancing the diversity of the barrage presentation.
- the present disclosure will intuitively display the at least one layer of surrounding barrage track through an explicit presentation method to intuitively illustrate the at least one layer of surrounding barrage track.
- the virtual space After the barrage function is turned on in the virtual space, the virtual space will obtain the barrage sent by each user in real time. Then, in order to ensure that the barrage in at least one layer of surrounding barrage tracks is presented in order, when the present invention detects any current barrage obtained in the virtual space, it can directly determine the presentation position of the current barrage in at least one layer of surrounding barrage tracks at a blank position in at least one layer of surrounding barrage tracks, so as to present the current barrage at the presentation position.
- the present disclosure determines the presentation position of the current barrage in the at least one layer of surrounding barrage tracks according to the barrages that have been presented in the at least one layer of surrounding barrage tracks.
- the position of each rendered bullet in at least one layer of surrounding bullet track is determined. Then, in the blank track area other than the position of each rendered bullet in at least one layer of surrounding bullet track, the rendering position of the current bullet in at least one layer of surrounding bullet track is randomly determined according to the bullet rendering length of the current bullet and the requirement that the bullets do not overlap as much as possible. Then, the current bullet is rendered at the rendering position, thereby avoiding the current bullet overlapping with other rendered bullets in at least one layer of surrounding bullet track as much as possible, and ensuring the effectiveness of the bullet rendering in the virtual space.
- the present disclosure can also adaptively adjust the character presentation style of the current bullet, and is not limited to the bullet presentation of a single character style.
- the font, glyph, character color, font size and other character styles of any current bullet can be adaptively adjusted.
- the font size of any current bullet needs to adapt to the height of the track where the current bullet is located, to avoid the situation where the current bullet is too large and exceeds the range of the track where it is located, resulting in the current bullet overlapping with bullets on other tracks.
- the character presentation styles of different barrages presented in at least one layer of surrounding barrage track may be the same or different, and the present disclosure does not limit this.
- the technical solution provided by the embodiment of the present disclosure is that if a bullet screen opening instruction is received in the virtual space, at least one layer of surrounding bullet screen tracks in the virtual space is first determined. Then, for any current bullet screen obtained in the virtual space, the presentation position of the current bullet screen in at least one layer of surrounding bullet screen tracks is determined based on the presented bullet screens in at least one layer of surrounding bullet screen tracks, so as to present the current bullet screen at the presentation position, thereby realizing the surrounding presentation of bullet screens in the virtual space, facilitating users to browse bullet screens in all directions in the virtual space, enhancing the diversity and interactive fun of bullet screen presentation in the virtual space, and improving the users' all-round immersive experience in the virtual space.
- the present disclosure in order to enable users to browse the various barrages presented in at least one layer of surrounding barrage track as comfortably as possible and avoid the situation where users frequently look up or down to browse the barrage, the present disclosure will set the position of at least one layer of surrounding barrage track in the virtual space to ensure the comfort of users browsing the barrage in the virtual space.
- the process of determining at least one layer of surrounding bullet screen tracks in the virtual space in the present disclosure may include the following steps:
- each bullet comment sent by the user in the virtual space is a commentary interaction on a subject object presented as the main scene content set in the virtual space.
- a corresponding main stage and audience seats will be set, so that each user can watch the performance content on the main stage in the audience seats and send bullet comments to the virtual space to evaluate the performance content on the main stage.
- the present invention can set at least one corresponding layer of surrounding barrage track above the scene content according to the user's browsing line of sight distance for the scene content displayed in the virtual space, so that the barrage in front of the user's line of sight in the at least one layer of surrounding barrage track and the scene content displayed in the virtual space can be kept in the same vertical plane facing the user.
- the position of the scene content displayed in the virtual space can be represented by the position of the virtual object used to present the scene content in the virtual space, and the virtual object is used as the main object of the bullet screen in the present disclosure.
- the singer on the main stage can be used as the main object of the bullet screen in the present disclosure, and the position of the singer is used to represent the position of the performance content watched by the user in the virtual space.
- the position of the barrage main object in the virtual space and the position of the user in the virtual space are first determined. Then, according to the positions of the user and the barrage main object in the virtual space, the relative distance between the user and the barrage main object can be determined as the surrounding distance between at least one layer of surrounding barrage track and the user.
- the present disclosure will also determine the corresponding user height, and the vertical field of view from the user height and the relative distance between the user and the main object of the bullet screen can determine the vertical position of at least one layer of the surrounding bullet screen track.
- the surrounding distance between at least one layer of surrounding barrage track and the user and the longitudinal position of at least one layer of surrounding barrage track can constitute the barrage track position of at least one layer of surrounding barrage track in the virtual space.
- the position of the bullet screen track of at least one layer of surrounding bullet screen tracks in the virtual space may include a base value of the track radius and a base value of the track height above the ground when the position of the user in the virtual space is the track center.
- the base value of the track radius may be the surrounding distance between at least one layer of surrounding bullet screen tracks and the user, indicating the radius of the track closest to the user in at least one layer of surrounding bullet screen tracks.
- the base value of the track height above the ground may be the longitudinal position of at least one layer of surrounding bullet screen tracks, indicating the height above the ground of the bottom track in at least one layer of surrounding bullet screen tracks.
- the actual track radius of each layer of the at least one layer of surrounding barrage track when it is centered on the user's position can be adaptively floated upward based on the base value of the track radius, so that each layer of the surrounding barrage track can have a different track radius, and the at least one layer of surrounding barrage track can be presented as an effect in which each layer of the surrounding barrage track continues to grow according to a certain rule.
- At least one corresponding layer of surrounding bullet screen track can be directly generated at the position of the bullet screen track according to the preset number of track layers.
- the specific generation process of at least one layer of surrounding bullet screen track can be implemented by the following steps:
- Step 1 Determine the corresponding single-layer track height according to the track radius base value and the preset track adaptation longitudinal viewing angle and number of track layers.
- an adaptive vertical viewing angle can be set for at least one layer of surrounding bullet screen tracks within the user's vertical field of view, so as to ensure that at least one layer of surrounding bullet screen tracks in front of the user's sight can be fully browsed by turning the eyeballs.
- the track adaptive vertical viewing angle in the present disclosure can be set to an elevation angle of 25 degrees higher than the horizontal direction of the user's sight.
- the overall height of at least one layer of the surrounding bullet screen track can be determined according to the track radius base value. Then, according to the preset number of track layers, the overall height is allocated to each layer of the surrounding bullet screen track to obtain the corresponding single-layer track height.
- each single-layer track of the surrounding barrage track in the present disclosure can be the same or different, and can be adaptively adjusted according to the barrage presentation requirements, and the present disclosure does not limit this.
- the overall height of at least one layer of the surrounding bullet screen track will change with the track radius base value, so that the height of the single-layer track will also change accordingly.
- the overall height of at least one layer of the surrounding bullet screen track will decrease as the track radius base value decreases, so that the height of the single-layer track will also decrease accordingly.
- the second step is to determine the target ground height of each layer of the surrounding barrage track based on the base value of the track ground height and the height of a single layer of track.
- the target ground height of each layer of the surrounding bullet screen track can be determined based on the ground height of the bottom track represented by the ground height base value of the track.
- the third step is to generate at least one layer of surrounding barrage track according to the track radius base value and the target ground height of each layer of surrounding barrage track.
- the actual track radius of each layer of the surrounding bullet screen track can be adaptively determined. Then, according to the actual track radius of each layer of the surrounding bullet screen track and the target height above the ground, each layer of the surrounding bullet screen track can be generated in the virtual space, thereby obtaining at least one layer of the surrounding bullet screen track.
- the technical solution provided by the embodiment of the present disclosure determines the position of the bullet screen track in the virtual space according to the relative distance between the user and the bullet screen main object in the virtual space and the user's height, thereby ensuring the accurate generation of at least one layer of surrounding bullet screen tracks in the virtual space. Moreover, it supports adaptive adjustment of the track radius of each layer of surrounding bullet screen tracks, thereby ensuring the diversity of at least one layer of surrounding bullet screen tracks.
- the present disclosure in order to ensure the diversity of barrage presentation in at least one layer of surrounding barrage track, can set that any barrage can be scrolled in at least one layer of surrounding barrage track, and cancel the barrage presentation after scrolling for a certain distance, thereby avoiding the long-term occupation of the barrage presented in at least one layer of surrounding barrage track.
- the present disclosure can set the bullet screen presentation direction (that is, the bullet screen scrolling direction) in at least one layer of surrounding bullet screen track to be counterclockwise, so that any presented bullet screen can appear from any position of at least one layer of surrounding bullet screen track and can be scrolled in the counterclockwise direction, thereby maintaining the user's reading habit from left to right.
- the bullet screen presentation direction that is, the bullet screen scrolling direction
- the bullet screen presentation direction (that is, the bullet screen scrolling direction) in at least one layer of surrounding bullet screen track can also be set to be clockwise, so that any presented bullet screen can appear from any position of at least one layer of surrounding bullet screen track and can be scrolled in the clockwise direction.
- the specific presentation process of any current bullet screen acquired in the virtual space in at least one layer of surrounding bullet screen tracks is described.
- the specific presentation process of any current bullet screen in at least one layer of surrounding bullet screen tracks in the present disclosure may include the following steps:
- S510 determining a first barrage presentable area in at least one layer of surrounding barrage track according to an explicit presentation area and an implicit presentation area of barrages that have been presented in at least one layer of surrounding barrage track and a preset interval between adjacent barrages.
- any barrage is scrolled and presented within at least one layer of surrounding barrage track, the entire content of the barrage will not be presented at the beginning. Instead, starting from a certain position point within at least one layer of surrounding barrage track, the characters in the barrage are controlled to scroll and appear one by one. When the first character of the barrage scrolls to another position, the characters in the barrage continue to be controlled to disappear one by one.
- each displayed bullet chat may have been scrolled and displayed in at least one layer of surrounding bullet chat track, while another part of the bullet chat content may not have been displayed in at least one layer of surrounding bullet chat track. Therefore, in at least one layer of surrounding bullet chat track, each displayed bullet chat may have a corresponding explicit presentation area and implicit presentation area.
- each explicit presentation area of a displayed bullet comment can be a portion of at least one portion of the displayed bullet comment.
- the hidden presentation area of each presented barrage can be the partial track area of the at least one layer of surrounding barrage track where the part of the barrage content that has not yet been presented in the at least one layer of surrounding barrage track is hidden, so as to avoid the phenomenon that if a new barrage appears after each presented barrage, it may overlap with the part of the barrage content that has not yet been presented in the presented barrage track.
- each of the already presented bullet screens in the at least one layer of surrounding bullet screen tracks is first determined. Then, based on the position interval of each already presented bullet screen from the beginning of presentation to the disappearance in the at least one layer of surrounding bullet screen tracks, the explicit presentation area of the already presented bullet screen is determined. Moreover, based on the position interval of each already presented bullet screen when part of the bullet screen content that has not yet begun to be presented in the at least one layer of surrounding bullet screen tracks is hidden, the implicit presentation area of the already presented bullet screen is determined.
- the first barrage presentable area in at least one layer of surrounding barrage tracks can be obtained, so that the current barrage can be presented in the first barrage presentable area later, and it can be avoided to overlap with the presented barrages.
- the interval between adjacent barrages in the present disclosure can be determined by spacing them by multiple characters. For example, there can be a spacing of 2 characters between each two adjacent barrages, and the present disclosure does not limit this.
- a position point within the first barrage presentation area can be randomly determined as the presentation starting point of the current barrage, so that the current barrage can be scrolled and presented from the presentation starting point.
- the bullet comment presentation length can be the track length that any bullet comment passes through from the beginning of presentation to the disappearance in at least one layer of surrounding bullet comment track.
- the arc length of the target track of at least one layer of surrounding barrage track within the horizontal field of view of the user in the virtual space can be determined. Then, the arc length of the target track is used as the barrage presentation length in the present disclosure.
- the barrage presentation direction When the barrage presentation direction is counterclockwise, it can be ensured that a certain barrage starts to be presented from the right field of view of the user, and when it scrolls counterclockwise along the track, it can pass through the entire horizontal field of view of the user in the virtual space, and then disappear in the left field of view of the user, so that the barrage is completely presented in front of the user's field of view, thereby improving the effectiveness of the barrage presentation in the virtual space. Therefore, the barrage presentation length determined in the virtual space in the present disclosure is The degree is positively correlated with the user's horizontal field of view in the virtual space.
- a position point spaced from the presentation start point by the presentation length of the bullet commentary may be determined on the track where the presentation start point is located as the presentation end point of the current bullet commentary.
- the presentation end point may be a position point that is located counterclockwise or clockwise from the presentation start point and is separated from the presentation start point by a predetermined bullet screen presentation length.
- the current bullet-screen is scrolled and presented in a counterclockwise or clockwise direction along the track starting from the presentation starting point.
- the present disclosure may pre-set a bullet screen scrolling speed so that each presented bullet screen in at least one layer of surrounding bullet screen track can maintain the same scrolling rate to avoid bullet screen overlap.
- the present disclosure can determine the barrage scrolling speed in the virtual space according to the type of virtual space. For example, for virtual spaces with a high degree of interaction, such as virtual shopping rooms, there will be a large number of barrage demands, so the barrage scrolling speed in the virtual space can be set to be larger, so that the barrage scrolling rate is faster and more barrages are presented. For virtual spaces with a lower degree of interaction, such as virtual book clubs, the barrage demand is smaller, so the barrage scrolling speed in the virtual space can be set to be smaller, so that the barrage scrolling rate is slower and users can read each barrage more accurately.
- the bullet screen content of the current bullet screen can be continuously presented from the presentation start point of the current bullet screen according to the bullet screen scrolling speed that has been determined in the virtual space.
- the part of the bullet screen content that has been presented in the current bullet screen is controlled to scroll along the counterclockwise or clockwise direction of the track where the presentation start point is located, toward the presentation end point of the current bullet screen, thereby completing the scrolling presentation of the current bullet screen from the presentation start point to the presentation end point.
- the presentation of each character content when the current barrage has scrolled to the presentation end point begins to be continuously canceled at the presentation end point, thereby completing the scrolling presentation of the current barrage at the determined barrage presentation length, avoiding long-term occupation of at least one layer of surrounding barrage track.
- the present disclosure will display the first barrage mask at the presentation starting point of the current barrage.
- the first barrage mask can set the pixel transparency at the presentation starting point to the highest (for example, completely transparent), and then start to continuously reduce the transparency of each pixel in the counterclockwise direction of the track until the mask width of the first barrage mask is completed and the pixel transparency is reduced to the minimum (for example, completely opaque).
- the mask width of the first barrage mask can be 1 character width, which is not limited by the present disclosure.
- each character that appears at the starting point of the presentation can be gradually changed from completely transparent to completely opaque, and the first special effect is used at the starting point of the presentation to The current bullet screen is presented to prompt the user in advance that the current bullet screen begins to be presented.
- the first special effect may be a fade-out special effect.
- the present disclosure will display a second barrage mask at the end point of the presentation of the current barrage.
- the second barrage mask can set the pixel transparency of the position point separated from the presentation end point by the mask width of the second barrage mask to the lowest (for example, completely opaque), and then start to continuously increase the transparency of each pixel in the counterclockwise or clockwise direction of the track until the pixel transparency is reduced to the highest (for example, completely transparent) after reaching the presentation end point.
- the mask width of the second barrage mask can be 5 character widths, which is not limited by the present disclosure.
- each character that scrolls along the counterclockwise or clockwise direction of the track from the position point corresponding to the mask width of the second barrage mask to the end point of the presentation will gradually change from completely opaque to completely transparent, and at the end point of the presentation, a fade-out effect is used to cancel the presentation of the current barrage, so as to prompt the user in advance that the current barrage is beginning to disappear.
- the present disclosure will control the presentation starting point of the current barrage to scroll with the last character of the current barrage, thereby continuously reducing the barrage non-presentable area represented by the presentation starting point to the presentation ending point as the current barrage scrolls, leaving a corresponding barrage presentable area for the new barrage.
- the technical solution provided by the embodiment of the present disclosure determines the first bullet screen presentable area in at least one layer of surrounding bullet screen track through the explicit presentation area and implicit presentation area of the bullet screen that has been presented in at least one layer of surrounding bullet screen track and the preset adjacent bullet screen interval, so as to determine the presentation start point and presentation end point of the current bullet screen, and avoid the bullet screen in at least one layer of surrounding bullet screen track from overlapping.
- the corresponding bullet screen mask is displayed at the presentation start point and presentation end point of the current bullet screen, so as to use the first special effect to present the current bullet screen, and use the second special effect to cancel the presentation of the current bullet screen, so as to enhance the interactive diversity of the bullet screen presentation in the virtual space.
- the present disclosure can define multiple barrage production areas within at least one layer of surrounding barrage track, and set different barrage production weights for different barrage production areas, so as to start presenting different types of barrages in different barrage production areas.
- the method may include the following steps:
- the bullet screen usually needs to be presented from at least one layer of the surrounding bullet screen track located in front of the user's right side before it can be scrolled to the front of the user's line of sight so that the user can read it accurately. Therefore, the present disclosure can set that a partial area in at least one layer of the surrounding bullet screen track located in front of the user's right side needs to frequently generate corresponding bullet screens, so that a large number of bullet screens can be scrolled and presented in front of the user's line of sight.
- the predetermined bullet screen presentation length in the virtual space is positively correlated with the user's horizontal field of view in the virtual space.
- the present invention can divide the track area of at least one layer of surrounding barrage track directly in front of the user into a barrage production area with extremely low weight according to the user's head orientation in the virtual space, so that the barrage production area starts to present as few barrages as possible, and almost all of them are barrages scrolled from other barrage production areas.
- the center point of the line of sight directly in front of the user in at least one layer of the surrounding barrage track can be determined. Then, along the clockwise direction of the track, at a position point that is half the value of the barrage presentation length away from the line of sight center point, a partial track area of the preset track length (for example, the arc length corresponding to 40 degrees) at the position point is divided as a barrage production area with the highest weight, so that the barrage production area starts to present as many barrages as possible, and almost all of the presented barrages can be scrolled to the front of the user's line of sight for presentation.
- a partial track area of the preset track length for example, the arc length corresponding to 40 degrees
- a barrage production area with a lower weight than the highest weight but higher than the extremely low weight can be defined on the left and right sides of the barrage production area with the highest weight.
- the remaining track area can be defined as a barrage production area that is only higher than the extremely low weight but lower than other weights. This barrage production area can begin to present some atmosphere barrages, pre-made barrages, and other barrages that users do not pay much attention to.
- a third barrage production area with an extremely low weight corresponding to an arc length of 40 degrees will be delineated. Then, the remaining area within at least one layer of the surrounding barrage track can be designated as the fourth barrage production area with low weight.
- the present disclosure can update at least one layer of multiple bullet screen production areas defined in the surrounding bullet screen track in response to the user's head rotation operation.
- the multiple barrage production areas defined in at least one layer of surrounding barrage track need to be updated so that most of the presented barrages in at least one layer of surrounding barrage track can still be presented in front of the user's line of sight.
- the present disclosure in order to ensure the stability of the barrage presentation of multiple barrage production areas defined in at least one layer of surrounding barrage track, the present disclosure does not update the multiple barrage production areas defined in at least one layer of surrounding barrage track in real time, but sets a delay. After the user's head rotates through the preset delay, the multiple barrage production areas defined in at least one layer of surrounding barrage track are updated according to the user's head orientation after rotation, the barrage presentation direction in at least one layer of surrounding barrage track, and the predetermined barrage presentation length, to ensure the stability of the multiple barrage production areas.
- the initiator of the current bullet screen is first determined.
- the bullet screens of different initiators receive different attention from users, so the presentation positions in at least one layer of surrounding bullet screen tracks are also different. Therefore, bullet screens of different initiators need to be adapted to different bullet screen production areas, so as to be scrolled and presented at different positions in at least one layer of surrounding bullet screen tracks.
- users pay more attention to bullet comments initiated by themselves, so it is necessary to adapt the bullet comment production area with a high weight so that the bullet comment can be scrolled and presented in front of the user's line of sight.
- users pay less attention to atmosphere bullet comments and pre-made bullet comments in the virtual space, so it is necessary to adapt the bullet comment production area with a low weight so that the bullet comment can be scrolled and presented to the left side of the user or behind the line of sight.
- the most suitable bullet chat production area for the current bullet chat is determined according to the initiator of the current bullet chat. Then, according to the explicit presentation area and implicit presentation area of each bullet chat that has been presented in the bullet chat production area and the preset adjacent bullet chat interval, it is determined whether there is a vacant bullet chat presentation area in the bullet chat production area. If there is a vacant bullet chat presentation area, the bullet chat production area is used as the adapted bullet chat production area for the current bullet chat.
- the second barrage presentable area in the adapted barrage production area can be determined.
- a position point within the second bullet screen presentation area can be randomly determined as the presentation starting point of the current bullet screen, so that subsequent The current bullet screen is scrolled and presented from the presentation starting point.
- S750 determine the presentation end point of the current bullet screen according to the presentation start point, the bullet screen presentation direction and the bullet screen presentation length.
- a position point separated from the presentation start point by the barrage presentation length can be determined along the barrage presentation direction on the track where the presentation start point is located as the presentation end point of the current barrage.
- the bullet screen contents of the current bullet screen can be continuously presented from the presentation start point of the current bullet screen.
- the part of the bullet screen contents that have been presented in the current bullet screen is controlled to scroll along the counterclockwise or clockwise direction of the track where the presentation start point is located, toward the presentation end point of the current bullet screen, thereby completing the scrolling presentation of the current bullet screen from the presentation start point to the presentation end point.
- the presentation of each character content when the current barrage has scrolled to the presentation end point begins to be continuously canceled at the presentation end point, thereby completing the scrolling presentation of the current barrage at the determined barrage presentation length, avoiding long-term occupation of at least one layer of surrounding barrage track.
- the technical solution provided by the embodiment of the present disclosure defines multiple barrage production areas within at least one layer of surrounding barrage track, and determines the presentation start point and presentation end point of the current barrage according to the second barrage presentation area within the adapted barrage production area of the current barrage, so that most of the barrages are presented in front of the user's line of sight as much as possible, thereby ensuring the readability of the barrage in the virtual space.
- FIG9 is a schematic diagram of a bullet screen presentation device provided by an embodiment of the present disclosure.
- the bullet screen presentation device 900 may be configured in an XR device.
- the bullet screen presentation device 900 may include:
- a bullet screen track determination module 910 configured to determine at least one layer of surrounding bullet screen tracks in the virtual space in response to a bullet screen start instruction in the virtual space;
- the barrage presentation module 920 is used to respond to any current barrage obtained in the virtual space, and determine the presentation position of the current barrage in the at least one layer of surrounding barrage track according to the barrages that have been presented in the at least one layer of surrounding barrage track, so as to present the current barrage at the presentation position.
- the bullet screen track determination module 910 may include:
- a track position determination unit used to determine the track position of the bullet screen in the virtual space according to the relative distance between the user and the bullet screen main object in the virtual space and the user's height;
- the bullet screen track generating unit is used to generate at least one layer of surrounding bullet screen track at the bullet screen track position.
- the bullet screen track position includes a track radius base value and a track height base value when the user's position in the virtual space is taken as the track center.
- the bullet screen track generation unit may be specifically used to:
- the at least one layer of surrounding barrage track is generated according to the track radius base value and the target ground height of each layer of surrounding barrage track.
- the bullet screen presentation module 920 may be specifically used to:
- the presentation end point of the current bullet screen is determined according to the presentation start point and the predetermined bullet screen presentation length in the virtual space.
- the presentation end point is a position point that is located counterclockwise or clockwise along the track where the presentation start point is located, and is separated from the presentation start point by the length of the bullet screen presentation.
- the bullet screen presentation module 920 may also be specifically used for:
- the current bullet screen is scrolled and presented in a counterclockwise or clockwise direction along the track starting from the presentation starting point;
- the presentation of the barrage content when the current barrage has scrolled to the presentation end point is canceled.
- the bullet screen presentation device 900 may further include a mask display module.
- the mask display module may be used to:
- a second bullet screen mask is displayed at the end point of the presentation of the current bullet screen, so as to cancel the presentation of the current bullet screen by using a second special effect at the end point of the presentation.
- the bullet screen presentation device 900 may further include:
- the starting point following module is used to control the presentation starting point to scroll following the last character of the current bullet screen.
- the bullet screen presentation device 900 may further include:
- the barrage production area demarcation module is used to demarcate multiple barrage production areas in the at least one layer of surrounding barrage track according to the user's head orientation in the virtual space, the barrage presentation direction in the at least one layer of surrounding barrage track and the determined barrage presentation length in the virtual space, and the barrage production weights of different barrage production areas are different.
- the bullet screen presentation module 920 may also be specifically used for:
- the presentation of the barrage content when the current barrage has scrolled to the presentation end point is canceled.
- the bullet screen presentation device 900 may further include:
- the barrage production area update module is used to respond to the rotation operation of the user's head and update the multiple barrage production areas defined in the at least one layer of surrounding barrage track after a preset delay.
- a predetermined bullet screen presentation length in the virtual space is positively correlated with a horizontal field of view of a user in the virtual space.
- At least one layer of surrounding bullet screen tracks in the virtual space is first determined. Then, for any current bullet screen obtained in the virtual space, the presentation position of the current bullet screen in at least one layer of surrounding bullet screen tracks is determined based on the presented bullet screens in at least one layer of surrounding bullet screen tracks, so as to present the current bullet screen at the presentation position, thereby realizing the surrounding presentation of bullet screens in the virtual space, facilitating users to browse bullet screens in all directions in the virtual space, enhancing the diversity and interactive fun of bullet screen presentation in the virtual space, and improving the users' all-round immersive experience in the virtual space.
- the device 900 shown in Figure 9 can execute any method embodiment provided by the present disclosure, and the aforementioned and other operations and/or functions of each module in the device 900 shown in Figure 9 are respectively for implementing the corresponding processes of the above-mentioned method embodiments, which will not be repeated here for the sake of brevity.
- FIG 10 is a flow chart of a bullet screen display method provided by an embodiment of the present disclosure (embodiment one).
- the embodiment of the present disclosure can be applied to human-computer interaction scenarios, and the bullet screen display method can be executed by a bullet screen display device.
- the device can be composed of hardware and/or software and can be integrated into an electronic device.
- the electronic device is an XR device such as a VR device, an AR device, an MR device, and can also be a mobile phone, a computer, and other devices. This embodiment is described by taking an XR device as an example.
- the bullet screen display method includes the following steps.
- the circular track is used to display the bullet screen, which refers to a commentary subtitle superimposed on the UI of the application.
- the bullet screen mainly includes text information, and the font color and font size of the text information can be flexibly configured.
- the bullet screen also includes image information, such as emoticon images.
- the bullet screen also includes interactive options, and users can perform interactive operations on the interactive options in the bullet screen to express their approval or disapproval of the bullet screen.
- the annular track may be a circular track or an elliptical track, or may be a closed track of other shapes.
- the multiple annular tracks are concentric tracks with different radii.
- the virtual space can be a 2D space or a 3D extended reality space.
- the radii of the multiple circular tracks can be the same or different.
- the heights of the multiple circular tracks in the direction perpendicular to the plane where the radius is located are different, thereby avoiding the same barrage on multiple tracks.
- the radii of the multiple circular tracks are different, the heights of the multiple circular tracks in the direction perpendicular to the plane where the radius is located can be the same or different. For example, if the plane where the radius of the circular track is located is the xz plane, then the direction perpendicular to the plane where the radius is located is the y-axis direction.
- the position of the circular track in the virtual space can be a fixed position or can be flexibly set by the user.
- the device can provide a default position, and if the default position does not meet the user's needs, the user can modify the default position.
- the position of the circular track in the virtual space includes the coordinates of the center of the circle and the radius.
- a setting entrance for the circular track may be provided. The user may open a setting interface through the setting entrance for the circular track to adjust the circular coordinates and/or radius.
- Some applications in the device have a bullet screen function, and the user can choose to turn the bullet screen function on or off.
- the bullet screen is displayed on the user interface (UI) of the application while the application is running.
- the application can be an application software, such as a video app, a game app, a live broadcast app, a music player app, etc. These application software usually support the bullet screen function.
- a video app the user can comment and discuss the video content while watching the video.
- the application can also be a small program or application module in the host application, or it can be a web platform, which is not limited by the embodiments of the present disclosure.
- bullet screens There are usually many bullet screens in an application, and these bullet screens can be distributed on the at least one circular track and move on the circular track, that is, move along the track of the circular track.
- the content of the barrage can be composed of one or more of the following information: text, punctuation marks and emoticons.
- the track information of the barrage is the information of the track on which the barrage is displayed.
- the track information of the barrage is used to determine the track on which the barrage is displayed.
- the track information includes the track identifier and, optionally, the track position information, such as the center position and radius of the track.
- the spatial information occupied by the barrage on the track can be the angle interval occupied by the barrage on the track, for example, the angle interval is 10-20 degrees, 30-45 degrees, etc., wherein the upper limit of the angle interval is the birth angle of the barrage on the track, and the length of the angle interval is the length of the barrage.
- the birth angle of the barrage on the track plus the length of the barrage can obtain the angle interval occupied by the barrage on the track.
- the birth angle of the barrage is 10 degrees
- the length of the barrage is 10 degrees.
- the angle interval occupied by the barrage on the track is 10-20 degrees. Therefore, the spatial information occupied by the barrage on the track can also be the birth position and length of the barrage.
- the birth position of the barrage is the birth angle of the barrage on the track.
- the disappearance position information of the barrage on the track may be the disappearance angle of the barrage on the track. For example, if the barrage is born at a position of 10 degrees on the track and disappears at a position of 120 degrees, the disappearance angle of the barrage on the track is 120 degrees.
- the barrage can be a generated barrage or a newly generated barrage, and the newly generated barrage is also called a new barrage.
- the newly generated barrage refers to a barrage that has not been displayed on the track before the current moment, and correspondingly, the generated barrage can be understood as a barrage that has been displayed at least once before the current moment.
- the barrage in the application is usually displayed multiple times. After a new barrage is generated, the barrage is displayed once. According to the preset strategy, the barrage can be displayed again after a preset time, or, when the user opens the application next time, the generated barrage will be displayed again. Each time the user opens the application, a new barrage may be generated, or no new barrage may be generated, and only the generated barrage will be displayed.
- the information of the generated bullet screen can be stored in the server, including but not limited to the display information of the bullet screen.
- the display information of the barrage may also include other information of the barrage, such as the generation time of the barrage, the sending user information of the barrage, the number of times the barrage has been displayed, etc.
- the XR device After the barrage function is turned on, the XR device requests the display information of the generated barrage from the server, and the server returns the display information of the generated barrage to the XR device.
- the display information of the new barrage needs to be generated in real time and sent to the server for storage. For example, it is necessary to determine the birth orbit, birth position and disappearance position of the new barrage.
- the information of the barrage can be maintained according to the track, and each track maintains the barrage of the barrage on the track according to the order of the barrage from the birth angle.
- the display information of the barrage includes the content of the barrage, the birth orbit information, the space occupied on the orbit and the disappearance position information on the orbit.
- the barrage is controlled to be born at the birth position corresponding to the occupied space information on the birth orbit. After the barrage is born, it moves on the circular orbit. When it moves to the disappearance position corresponding to the disappearance position information, the barrage disappears.
- the life cycle of the barrage is from birth to disappearance.
- FIG11 is a schematic diagram of a bullet screen displayed on a circular track. As shown in FIG11 , four circular tracks are displayed in the extended implementation space. The four circular tracks are concentrically arranged and have different radii.
- the moving speed of the bullet screen on the circular track can be in the following ways.
- Method 1 The moving speed of the bullet screens on each circular track is the same, that is, the bullet screens on each track are relatively stationary.
- the bullet screens on the circular track do not overlap. Since the bullet screens have the same moving speed, as long as the birth positions of the two bullet screens do not overlap, the bullet screens will not overlap during their life cycle.
- Method 2 The moving speed of the bullet screens on the same circular track is the same, and the moving speed of the bullet screens on different circular tracks is different.
- the moving speed of the barrage on circular track 1 is greater than the moving speed of the barrage on circular track 2.
- Method 3 The moving speeds of bullet screens on the same circular track are different.
- the barrage on the circular track is divided into main barrage and guest barrage, the main barrage is the barrage sent by the main perspective user, and the guest barrage is the barrage sent by the non-main perspective user.
- the main perspective user can be understood as the user currently using the application, and the non-main perspective user is the user other than the user currently using the application.
- the video application Taking the video application as an example, if the first user opens the application and turns on the barrage function, the first user is the main perspective user.
- the barrage sent by the first user in the picture seen by the first user is called the main barrage.
- the main barrage and the guest barrage are displayed separately to facilitate users to distinguish which barrages are sent by themselves and which are sent by other users.
- the difference in display between the main barrage and the guest barrage includes but is not limited to: the main barrage is highlighted, while the guest barrage is displayed normally; at least one of the font, color and size of the main barrage is different from that of the guest barrage; the main barrage has special effects, while the guest barrage is displayed normally.
- an aperture is displayed around the main bullet screen.
- the aperture can be understood as For special effects, there is no aperture around the guest barrage.
- the special effect of the main state barrage can also be a periodic flashing effect.
- the circular track is a curved track
- the bullet screen when the bullet screen is displayed on the curved track, the bullet screen also needs to be curved.
- the rendering grid of an ordinary image is composed of two triangles and cannot be curved, so it needs to be subdivided in the horizontal direction to construct new grid data, and then the position of the vertices is modified according to the arc to form a curved grid, through which the curvature of the bullet screen is realized.
- Figure 12 is a schematic diagram of the bending process of the grid corresponding to the barrage.
- the image shown in Figure 12(a) is a schematic diagram of the rendering grid of an ordinary image
- Figure 12(b) is a schematic diagram of the rendering grid of the ordinary image after horizontal subdivision
- Figure 12(c) is a schematic diagram of the vertices of the new grid formed by the subdivision
- Figure 12(d) is a schematic diagram of the curved grid formed after the vertices of the new grid are modified according to the curvature of the birth position of the barrage.
- modifying the coordinates of the vertex modifies the coordinates of the x-axis and y-axis, and the z-axis coordinate remains unchanged. Accordingly, the horizontal direction shown in Figure 12 refers to the direction of the xy plane.
- At least one circular track is generated in the virtual space, and the display information of the bullet screen is obtained, wherein the display information of the bullet screen includes the content of the bullet screen, the track information of the birth, the space information occupied on the track, and the disappearance position information on the track; according to the display information of the bullet screen, the bullet screen is displayed on the circular track, and the bullet screen moves on the circular track. Displaying the bullet screen by the circular track enriches the display mode of the bullet screen and improves the user experience.
- the second embodiment of the present disclosure provides a method for obtaining display information of a new barrage.
- Figure 13 is a flowchart of a method for obtaining display information of a new barrage provided by the second embodiment of the present disclosure. As shown in Figure 13, the method provided by this embodiment includes the following steps.
- the content of the new bullet comment is input by the user, and the user can input the content of the new bullet comment by voice, keyboard, gesture, touch, etc.
- the content of the new bullet comment can be composed of one or more of the following information: text, punctuation marks and emoticons.
- the length of the new barrage is the size of the angle interval occupied by the new barrage on the track.
- the length of the new barrage is 10 degrees or 20 degrees.
- S202 Determine the birth trajectory and birth position of the new bullet screen according to the length of the new bullet screen and the display information of the bullet screen that has been generated in the application.
- the display information of the generated bullet screen includes the content of the bullet screen, the birth track information, the space occupied on the track, and the disappearance position information on the track.
- the birth orbit and birth position of the new barrage may be determined in the following ways.
- Implementation method 1 According to the display information of the generated bullet comments in the application, determine the interval size between adjacent generated bullet comments in each track. According to the length of the new bullet comment and the interval size between adjacent generated bullet comments in each track, determine the free interval available for the new bullet comment, which is greater than or equal to the length of the new bullet comment. Determine a target free interval from the free interval available for the new bullet comment, and determine a position from the target free interval according to the length of the new bullet comment as The birth position of the new barrage, the orbit where the target space interval is located is the birth orbit of the new barrage.
- the barrages on each track are accessed separately.
- the size of the interval between the adjacent generated barrages is determined in angular order according to the spatial information occupied by the two adjacent generated barrages on the track. Specifically, the size of the interval between the adjacent generated barrages is obtained by subtracting the upper limit angle of the barrage with a smaller angle interval from the lower limit angle of the barrage with a larger angle interval.
- the idle interval After determining the size of the interval between two adjacent generated bullet comments, compare the size of the interval with the length of the new bullet comment. In one implementation, if the idle interval is greater than or equal to the length of the new bullet comment, the idle interval is determined to be an available idle interval. If the idle interval is less than the length of the new bullet comment, the idle interval is determined to be an unavailable idle interval. Taking the above example, assuming that the length of the new bullet comment is 10 degrees, the size of one idle interval is 17 degrees, and the size of the other idle interval is 5 degrees, the idle interval 17 degrees is an available idle interval, and the idle interval 5 degrees is an unavailable idle interval.
- the idle interval is determined to be an available idle interval, and if the idle interval is greater than or equal to the length of the new bullet screen, but the difference between the length of the idle interval and the length of the new bullet screen is less than the preset value, the idle interval is determined to be an unavailable idle interval.
- the preset value is 2 degrees or 5 degrees, that is, the idle interval is greater than 2 degrees or 5 degrees of the length of the new bullet screen to be used as an available idle interval.
- the new bullet message may have no available free interval, or it may have one or more available free intervals.
- the size of the idle interval also changes dynamically.
- the idle interval between adjacent barrages is determined again.
- one or more existing barrages are deleted to obtain available idle intervals. For example, according to the generation time of the generated barrages, the generated barrage with the farthest generation time from the current time is deleted. After deleting the barrages, possible idle intervals will be generated.
- the available idle interval is determined as the target idle interval.
- one of the multiple available free intervals is selected as a target free interval.
- An interval may be selected randomly from the multiple available free intervals, or an interval may be selected from the multiple available free intervals according to a preset rule. For example, a free interval with the largest or smallest free interval is selected from the multiple available free intervals as the target free interval, or a free interval closest to the length of the new bullet message is selected from the multiple available space intervals as the target free interval.
- a position is determined from the target idle interval according to the length of the new bullet screen as the birth position of the new bullet screen.
- the new bullet screen needs to be completely located in the target idle interval. Assuming that the target idle interval is 28-45 degrees and the length of the new bullet screen is 10 degrees, an angle can be selected from 28-35 degrees as the birth angle of the new bullet screen.
- Implementation method 2 is to obtain the birth interval of the new barrage, and determine the birth orbit and birth position of the new barrage according to the length of the new barrage, the birth interval of the new barrage, and the display information of the barrage generated in the application.
- the birth interval of the new bullet is set by the user.
- a setting entry for the birth interval of the new bullet is provided, and the user enters the setting page through the setting entry, and can select the birth interval of the new bullet on the setting page. This can meet the needs of different users for the birth interval of the bullet.
- the birth interval of the new barrage is determined according to the sending user information of the new barrage.
- the track is divided into a main state interval and a guest state interval, wherein the main state interval is the birth interval of the bullet comments sent by the main perspective user, and the guest state interval is the birth interval of the bullet comments sent by the non-main perspective user.
- the birth interval of the new bullet comment is determined to be the main state interval; when the user sending the new bullet comment is the non-main perspective user, the birth interval of the new bullet comment is determined to be the guest state interval.
- the main state interval and the guest state interval do not overlap, and illustratively, the main state interval is 0-90 degrees, and the guest state interval is 21-360 degrees. Alternatively, the main state interval is 30-150 degrees, and the remaining interval is the guest state interval.
- the main state interval includes multiple sub-intervals, each sub-interval has a different weight, and/or the guest state interval includes multiple sub-intervals, each sub-interval has a different weight.
- FIG14 is a schematic diagram of the main state interval and the guest state interval of the track. As shown in FIG14 , 360 degrees is divided into 4 intervals, a main state interval and three guest state intervals.
- the angle range of the main state interval is 0-90 degrees
- the angle range of the first guest state sub-interval is 90-180 degrees
- the angle range of the second guest state sub-interval is 180-270
- the angle range of the third guest state sub-interval is 270-360.
- the main state barrage is born in the main state interval, and the guest barrage can choose a sub-interval from the three guest state sub-intervals to be born.
- one interval is determined from the multiple sub-intervals included in the main state interval as the birth interval of the new barrage.
- one interval is determined from the multiple sub-intervals included in the objective interval as the birth interval of the new barrage according to the weights of the multiple sub-intervals included in the objective interval.
- an interval is selected from the main state interval and the guest state interval in the following manner: Assume that there are n sub-intervals in total, the value of n is greater than or equal to 2, the weight of each sub-interval is greater than or equal to 0, and the sum of the weights of all sub-intervals is 1.
- When selecting a sub-interval generate a random number r between (0, 1], traverse n intervals until the accumulated weight is greater than or equal to r, and determine the current sub-interval as the birth interval of the new barrage.
- the birth track and birth position of the new barrage can be determined in the following manner: according to the display information of the barrage generated in the application, determine the interval size between adjacent generated barrages in each track. According to the length of the new barrage and the interval size between adjacent generated barrages in each track, determine the free interval available for the new barrage, and the free interval is greater than or equal to the length of the new barrage. From the available free intervals of the new barrage, determine the first free interval that intersects with the birth interval of the new barrage. Determine a target free interval from the first free interval. According to the length of the new barrage, determine a position from the target free interval as the birth position of the new barrage, and the target spatial interval is located. The orbit is the birth orbit of the new barrage.
- This method is similar to the first implementation method, except that after determining the available idle interval for the new barrage, the intersection of the available idle interval for the new barrage and the birth interval of the new barrage is determined, and from the available idle interval for the new barrage, a first idle interval that intersects with the birth interval of the new barrage is obtained, and then a target idle interval is determined from the first idle interval, so as to ensure that the birth position of the new barrage falls within the birth interval of the new barrage.
- the size of the interval between adjacent generated barrages within the birth interval of the new barrage is determined according to the generation interval of the new barrage and the display information of the generated barrage in the application. According to the length of the new barrage and the size of the interval between adjacent generated barrages within the generation interval of each track, the free interval available for the new barrage is determined, and the free interval is greater than or equal to the length of the new barrage. A target free interval is determined from the free intervals available for the new barrage, and a position is determined from the target free interval according to the length of the new barrage as the birth position of the new barrage.
- this method only needs to determine the interval size between adjacent generated barrages within the generation interval of the new barrage.
- the target idle interval determined from multiple tracks may be located in any one of the multiple tracks, and the track where the target space interval is located is determined as the birth track of the new bullet commentary.
- the user can also specify the birth track of the new barrage when sending a new barrage, or the user can pre-set the birth track of the new barrage.
- the user sets one or more tracks as the birth track of the new barrage in the barrage function. Accordingly, the free interval can only be determined on the track set by the user.
- the disappearance position of the new barrage is determined according to the birth position of the new barrage. For example, the disappearance position of the new barrage is separated from the birth position of the new barrage by a fixed angle, such as 92 degrees, 120 degrees, 180 degrees, 200 degrees, etc. Then, after determining the birth angle of the new barrage, the fixed interval is added to the birth angle of the new barrage to obtain the disappearance angle of the new barrage.
- a fixed angle such as 92 degrees, 120 degrees, 180 degrees, 200 degrees, etc.
- the disappearance position of the new barrage is a fixed angle, and no matter where the barrage is born, it disappears at the fixed angle.
- the disappearance position of the new barrage is related to the birth interval of the new barrage, and different angle intervals correspond to different disappearance positions.
- the disappearance position of the new barrage is determined based on the birth interval of the new barrage and the correspondence between the angle interval and the disappearance position.
- the display information of the new barrage includes the content of the new barrage, the orbit information of birth, the space information occupied on the orbit, and the disappearance position information on the orbit.
- the space information occupied by the new barrage on the orbit is the angle interval occupied by the new barrage on the orbit, the angle interval is determined according to the birth angle and length of the new barrage. If the space information occupied by the new barrage on the orbit is the birth position and length of the new barrage, the real information of the new barrage is directly generated.
- the new bullet screen is displayed on the circular track according to the display information of the new bullet screen.
- the display information of the new bullet screen is sent to the server for storage. If the new bullet screen has other information, the display information of the new bullet screen and other information are sent to the server for storage.
- the other information may include but is not limited to the sending user information of the new bullet screen. information, the time when new barrages are sent, etc.
- the length of the new barrage is obtained according to the content of the new barrage, and the birth track and birth position of the new barrage are determined according to the length of the new barrage and the display information of the barrage that has been generated in the application; the disappearance position of the new barrage is obtained; the display information of the new barrage is generated according to the birth track, birth position, length and disappearance position of the new barrage, and the new barrage is controlled to be displayed on the track according to the display information of the new barrage.
- the birth position of the obtained new barrage is determined according to the length of the new barrage and the display information of the barrage that has been generated in the application, so that the new barrage can be prevented from overlapping with the generated barrage.
- the third embodiment of the present disclosure provides a method for obtaining display information of a new bullet screen.
- This embodiment is used to illustrate the specific manner of displaying the bullet screen on a circular track according to the display information of the bullet screen.
- FIG15 is a flow chart of a method for obtaining display information of a new bullet screen provided in the third embodiment of the present disclosure. As shown in FIG15, the method provided in this embodiment includes the following steps.
- S301 Generate at least one circular track in a virtual space.
- S303 Determine the birth position of the barrage according to the space information occupied by the barrage on the track.
- the starting angle or the lower limit angle of the angle interval is determined as the birth angle of the bullet screen.
- the bullet screen is born by fading in at the birth position, and disappears by fading out at the disappearance position. Fade-in means that the bullet screen is slowly presented from none to all, and fade-out means that the bullet screen is slowly presented from all to none, so that users can intuitively see the process of the bullet screen from existence to non-existence and vice versa.
- the length of a bullet screen is 10 degrees
- the birth angle of the bullet screen is 20 degrees
- the disappearance angle of the bullet screen is 120 degrees.
- the bullet screen initially occupies an angle of 10 to 20 degrees.
- the part greater than 20 degrees fades in until the entire part greater than 20 degrees is fully revealed.
- the part greater than 120 degrees fades out until the final moment when the angle is 120 to 130 degrees, the bullet screen completely fades out, and then the bullet screen is removed.
- the fade-in data is used to describe the degree from which the fade-in starts and the fade-in interval angle.
- the fade-out data is used to describe the degree from which the fade-out starts and the fade-out interval angle.
- the fade-in and fade-out data of each bullet comment meet the following three rules: (1) The fade-in and fade-out data of each bullet comment are determined at birth and will not change; (2) The fade-in data of each bullet comment will no longer be needed after it is fully displayed; (3) The fade-out data of each bullet comment is only needed when it is about to disappear and is no longer needed after it completely disappears.
- the fade-in and fade-out of bullet comments are done in the shader. There is no concept of each bullet comment in the shader, only simple mesh vertices. According to the rules (2) and (3) of fade-in and fade-out data, the fade-in and fade-out data of all bullet comments need to be aggregated together. When the shader processes a bullet comment, it will be processed when the bullet comment has indeed been transferred to the corresponding The fade-in/fade-out data is created at an angle to prevent affecting other bullet comments.
- the fade-in and fade-out data include the following information: the center of the circle, the display area array of all bullet comments, the number of display areas, and the track row height.
- the center of the circle is the center of the track where the bullet screen is located, and the center angle is used to calculate the angle of the vertex.
- the display area array of each bullet comment is defined as a float4, including the base angle, interval angle increment, y-axis center coordinate, and fade-in degree.
- the number of display areas is used to describe the total number of display area arrays of all bullet comments. The number of display areas is equal to the total number of bullet comments.
- the base angle is the birth angle or disappearance angle of the bullet screen
- the interval angle increment is the length of the bullet screen
- the fade-in degree is used to control the length of the transition interval from 0 to 1 in the interval of [base angle, base angle + base angle increment].
- the fade-in degree reflects the fade-in and fade-out effect of the bullet screen, and the fade-in and fade-out effects of all bullet screens are the same.
- the interval angle increment is a positive or negative value. When the interval angle increment is a positive value, it corresponds to the fade-in process, and when the interval angle increment is a negative value, it corresponds to the fade-out process.
- the fade-in degree is 5
- the birth angle of the bullet screen is 20 degrees
- the disappearance angle of the bullet screen is 120 degrees
- the fade-in interval is 20-25 degrees
- the fade-out interval is 115-120 degrees. That is, during the fade-in process, the transparency of the bullet screen gradually increases from 20-25 degrees, and during the fade-out process, the transparency of the bullet screen gradually decreases from 115-120 degrees.
- the process from the birth to the disappearance of the bullet screen is divided into three stages: the birth stage, the normal movement stage, and the disappearance stage.
- the birth stage refers to the process from the appearance of the bullet screen to the complete display of the tail
- the normal movement stage is the stage where the bullet screen is fully displayed
- the disappearance stage refers to the process from the beginning of the bullet screen to the complete disappearance of the tail.
- the fade-in value is greater than 0 in the birth stage and the disappearance stage
- the fade-in value is 0 in the normal movement stage of the bullet screen.
- the track row height is used to calculate which track a pixel is on.
- the highest and lowest points of the track in the vertical direction can be calculated based on the track row height and the y-axis center coordinate.
- Shader includes vertex shader and fragment shader.
- Vertex shader is used to perform matrix transformation on input data to generate position information, generate vertex color, generate texture coordinates, and send the position information and texture coordinates to fragment shader.
- Fragment shader can calculate the angle of pixel through the world coordinates of pixel, and then use the display area array of all bullet comments to calculate its transparency in turn.
- FIG16 is a structural schematic diagram of the bullet screen display device provided in the fourth embodiment of the present disclosure.
- the bullet screen display device 100 may include:
- a generating module 11 used for generating at least one circular track in a virtual space
- the acquisition module 12 is used to acquire the display information of the bullet screen, wherein the display information of the bullet screen includes the content of the bullet screen, the orbit information of the birth, the space occupied on the orbit and the disappearance position information on the orbit;
- the display module 13 is used to display the bullet screen on the circular track according to the display information of the bullet screen, and the bullet screen moves on the circular track.
- the display module 13 is specifically used to:
- Display information of the new barrage is generated according to the birth orbit, birth position, length and disappearance position of the new barrage.
- the display module 13 is specifically used for:
- a target free interval is determined from the free intervals available for the new barrage, and a position is determined from the target free interval as the birth position of the new barrage according to the length of the new barrage, and the orbit where the target space interval is located is the birth orbit of the new barrage.
- the display module 13 is specifically used for:
- the birth track and birth position of the new barrage are determined according to the length of the new barrage, the birth interval of the new barrage, and the display information of the barrage generated in the application.
- the display module 13 is specifically used for:
- a position is determined from the target idle interval as the birth position of the new barrage, and the orbit where the target space interval is located is the birth orbit of the new barrage.
- the display module 13 is specifically used for:
- the birth interval of the new barrage is determined according to the sending user information of the new barrage.
- the track is divided into a main state interval and a guest state interval
- the main state interval is the birth interval of the barrage sent by the main perspective user
- the guest state interval is the birth interval of the barrage sent by the non-main perspective user
- the display module 13 is specifically used for:
- the birth interval of the new bullet screen is determined to be the guest user. state interval.
- the main state interval includes a plurality of sub-intervals, each sub-interval having a different weight
- the display module 13 is specifically used for: when the user sending the new bullet commentary is a main perspective user, according to the weights of the multiple sub-intervals included in the main state interval, determining an interval from the multiple sub-intervals included in the main state interval as the birth interval of the new bullet commentary.
- the guest state interval includes a plurality of sub-intervals, each sub-interval having a different weight
- the display module 13 is specifically used for: when the sender of the new bullet comment is a non-main-view user, determining an interval from the multiple sub-intervals included in the guest interval as the birth interval of the new bullet comment according to the weights of the multiple sub-intervals included in the guest interval.
- the display module 13 is specifically used for:
- the barrage is controlled to disappear at the disappearance position corresponding to the disappearance position information.
- the barrage is born at the birth position by fading in, and disappears at the disappearance position by fading out.
- the bullet screens on the circular track move at the same speed.
- the bullet screens on the circular track do not overlap.
- the main barrage and the guest barrage on the circular track are displayed separately, the main barrage is the barrage sent by the main perspective user, and the guest barrage is the barrage sent by the non-main perspective user.
- the plurality of circular orbits are concentric orbits with different radii.
- Figure 17 is a flow chart of a bullet screen display method provided by an embodiment of the present disclosure.
- the bullet screen display method can be executed by a bullet screen display device, and the bullet screen display device can be composed of hardware and/or software, and can be integrated into an electronic device.
- the electronic device can be any hardware device with data processing function and image display function.
- the electronic device can be selected as a VR device, an AR device, an MR device or an XR device, etc., and the present disclosure does not specifically limit it.
- the method includes the following steps:
- a content scene can be understood as an interactive scene provided by a virtual space to a user, such as a 180-degree half-view interactive scene, or a 360-degree panoramic interactive scene, etc., and no specific limitation is made here.
- the electronic device may enter a corresponding virtual space according to the user operation. And display the screen content corresponding to the virtual space to the user in the virtual space.
- the virtual space can be understood as the live broadcast room where the anchor is located. If the screen content presented in the virtual space is an ordinary video stream, the virtual space can be understood as a video playback room.
- the electronic device disclosed in the present invention first performs a continuous multi-frame recognition operation on the screen content to be displayed to determine the content scene corresponding to the screen content, that is, to determine the content scene of the virtual space; or, it can also determine the content scene of the virtual space based on the virtual space identification information entered by the user, etc., which is not specifically limited here.
- the virtual space identification information may be any information that can uniquely identify the virtual space, such as a virtual space number or a virtual space name, etc., and no specific limitation is made here.
- the present disclosure may determine the content scene of the virtual space according to the virtual space identification information, including but not limited to the following methods:
- the electronic device can query the content scene that has a mapping relationship with the virtual space identification information in the mapping relationship between the virtual space identification information and the content scene in the configuration information based on the virtual space identification information.
- the present disclosure optionally stores the mapping relationship between the virtual space identification information and the content scene in a server side that establishes a communication connection with the electronic device. Furthermore, when the electronic device needs to obtain the content scene of any virtual space, it can send its own identification information and the identification information of the virtual space to be queried to the server side, so that the server side can query the content scene that has a mapping relationship with the identification information of the virtual space to be queried in the pre-stored mapping relationship between the virtual space identification information and the content scene based on the received identification information of the virtual space to be queried. Then, the server side sends the queried scene content to the electronic device based on the electronic device identification information, so that the electronic device obtains the content scene of the virtual space.
- the electronic device identification information can be any information that can uniquely determine the identity of the electronic device, such as the electronic device number or the electronic device serial number.
- the server side that establishes a communication connection with the electronic device can be selected as a background server or a cloud server, and no specific limitation is made here.
- mapping relationship between the virtual space identification information and the content scene may optionally further include type information of the content scene.
- the target display mode includes: a target surround mode, or a target surround mode and a target hierarchical presentation mode.
- the target surround mode may be selected as one of a horizontal screen scrolling mode, an arc surround mode, a half view surround mode and a panoramic surround mode.
- the horizontal screen scrolling mode can be selected to scroll from one side of the electronic device screen to the other side, such as scrolling from the right side of the screen to the left side.
- the arc surround mode can be selected to display the barrage at any angle less than 180 degrees to achieve the arc surround mode.
- the half-view surround mode can be understood as a display mode that displays barrage in a 180-degree surround mode.
- the panoramic surround mode can be understood as a display mode that displays barrage in a 360-degree surround mode.
- the present disclosure can determine the target display mode adapted to the content scenario according to the acquired content scenario, and realize the intelligent presentation of bullet screens with different display modes to users based on the content scenario, so as to enrich the display mode of bullet screens, thereby enhancing the interactive fun of users and improving the interactive experience of users.
- the present disclosure may determine the target display method of the barrage according to the type of content scene.
- the types of content scenes in the present disclosure may include, but are not limited to, at least one of the following: a long-distance scene, a close-up scene, a half-view (180-degree half-view), a panoramic view (360-degree panoramic view), a long-distance half-view scene, a long-distance panoramic scene, a close-up half-view scene, and a close-up panoramic scene.
- the long-distance scene can be selected as a scene whose distance from the user is greater than the preset distance.
- the preset distance in the present disclosure can be flexibly set according to actual application needs, such as 3 meters, 5 meters or 8 meters.
- the long-distance scene in the present disclosure can be a stage whose distance from the user is greater than 3 meters; or a drama whose distance from the user is greater than 5 meters; or other performances whose distance from the user is greater than 6 meters.
- the close-range scene may be a scene where the distance between the user and the user is less than or equal to a preset distance.
- the close-range scene in the present disclosure may be a 1V1 scene where the distance between the user and the user is less than 3 meters; or, it may be a chat scene where the distance between the user and the user is less than 5 meters.
- the type of the content scene when acquiring the content scene of the virtual space, can also be acquired; or, the type of the content scene can be determined based on the acquired content scene. Then, the present disclosure can determine the target display mode corresponding to the content scene type based on the type of the content scene. Exemplarily, the target display mode can be found in the mapping relationship between the content scene type and the display mode based on the type of the content scene.
- mapping relationship between the content scene type and the display mode in the present disclosure can be pre-configured on the electronic device side, or stored on the server side that establishes a communication connection with the electronic device, and no specific limitation is made here.
- the present disclosure displays the barrage in the virtual space according to the target surround mode.
- the present disclosure displays the barrage in the virtual space according to the target surround mode and the target hierarchical presentation mode.
- barrage displayed in the virtual space in the present disclosure may be barrage information posted by the user, or may be barrage information posted by other users in the same virtual space, etc., and no specific restrictions are made here.
- a bullet comment presentation area is usually divided in the virtual space, so that the bullet comments sent for the screen content presented in the virtual space can be uniformly presented in the bullet comment presentation area, thereby facilitating View the bullet screen information about the screen content. Therefore, the present disclosure displays the bullet screen in the virtual space according to the target display mode, and optionally displays the bullet screen on the bullet screen presentation area in the virtual space.
- the bullet screen presentation area may be the upper area in the virtual space (such as shown in FIG. 18 ), or it may be other blank areas in the virtual space, etc., and no specific limitation is made here.
- the technical solution provided by the embodiment of the present disclosure obtains the content scene of the virtual space, determines the target display mode of the bullet screen according to the content scene, and then displays the bullet screen based on the target display mode in the virtual space.
- the present disclosure adapts the target display mode of the bullet screen based on the content scene of the virtual space, and displays the bullet screen based on the target display mode, thereby achieving diversified display effects when the bullet screen is displayed in the virtual space, enriching the bullet screen display mode, saving the bullet screen display cost, and improving the user's interactive experience.
- the target display mode of the bullet screen is the target surround mode, or the target surround mode and the target hierarchical presentation mode
- the following further explains the determination of the target display mode of the bullet screen as the target surround mode in the present disclosure in conjunction with FIG. 19 .
- the method may include the following steps:
- content scenes such as including but not limited to the following: long-distance scene, close-up scene, half-scene (180-degree half-scene), panoramic scene (360-degree panoramic scene), long-distance half-scene scene, long-distance panoramic scene, close-up half-scene scene and close-up panoramic scene.
- the bullet screen surround mode corresponding to each content scene type can be set in advance according to the above-mentioned various content scene types. Then, a mapping relationship between each content scene type and the corresponding bullet screen surround mode is established. Then, the established mapping relationship between the content scene type and the bullet screen surround mode is configured on the electronic device or stored on the server side, so as to lay the foundation for determining the target surround mode of the bullet screen according to the type of the content scene in the future.
- the bullet screen surround mode may include but is not limited to: horizontal screen scrolling mode, arc surround mode, 180 degree surround mode and 360 degree surround mode, which are not limited here.
- the arc of the arc surround mode refers to any arc less than 180 degrees, which is not limited here.
- mapping relationship between the content scene type and the bullet screen surround mode established in the present disclosure may be as shown in the following Table 1:
- the bullet screen surround mode corresponding to each content scene type when set in advance according to the types of various content scenes, it can be set multiple times by manual or automatic methods to set the best surround mode for each content scene type. For example, when setting the surround mode for a content scene type of a long-distance scene, the horizontal screen scrolling mode, the arc surround mode, the 180-degree surround mode and the 360-degree surround mode can be set in sequence, and the bullet screen "Hello” is displayed based on each set surround mode. Then, according to the effect of the bullet screen "Hello" displayed by each surround mode, the one with the best display effect is selected as the target surround mode for the long-distance scene.
- the effect of each surround mode displaying the bullet screen can be determined by naked eyes, or by collecting a bullet screen display image and performing image analysis processing on the bullet screen display image (for example, analyzing the clarity of the bullet screen display image) to determine the quality of the bullet screen display image, and then determining the bullet screen display effect according to the quality of the bullet screen display image.
- the image analysis processing can adopt a traditional analysis algorithm or strategy, which is not specifically limited here.
- bullet screen surround mode set for each content scene type in the present disclosure can also be flexibly adjusted according to actual presentation needs, and no specific restrictions are made here.
- the horizontal screen scrolling mode corresponding to the distant scene is adjusted to a 360-degree full-screen surround mode, etc.
- the barrage surround method that has a mapping relationship with the type of content scene obtained can be searched in the mapping relationship between content scene type and barrage surround method according to the type of content scene, and the barrage surround method can be determined as the target surround method of the barrage.
- the present disclosure determines the target surround mode of the bullet screen according to the type of content scene, which may include the following situations:
- the target surround mode of the bullet screen is the horizontal screen scrolling mode.
- the target surround mode of the barrage is an arc surround mode.
- the target surround mode of the bullet screen is the half-scene surround mode.
- the target surround mode of the bullet screen is the panoramic surround mode.
- the target surround mode of the barrage is the half-scene surround mode.
- the target surround mode of the bullet screen is a panoramic surround mode.
- the target surround mode of the bullet screen is the half-scene surround mode.
- the target surround mode of the bullet screen is a panoramic surround mode.
- the present disclosure may first adjust each bullet screen track or adjust the bullet screen on each bullet screen track according to the target surround mode. Afterwards, the bullet screen is displayed based on the adjusted bullet screen track or the adjusted bullet screen is displayed based on the bullet screen track, thereby achieving a diversified display effect of the bullet screen.
- the specific implementation of displaying bullet comments in the virtual space is as follows:
- the surround mode of each bullet screen track is adjusted according to the determined target surround mode, and the bullet screen is displayed on each adjusted bullet screen track.
- the surround mode of each bullet screen track is adjusted according to the determined target surround mode, and the adjusted bullet screen is displayed on each bullet screen track.
- the present disclosure displays bullet comments in a virtual space according to a target surround method
- the optional implementations include but are not limited to the following:
- the bullet screen is displayed in a horizontal scrolling mode in the virtual space, as shown in FIG. 20a .
- the bullet screen is displayed in an arc surround mode in the virtual space, such as Figure 20b.
- the bullet screen is displayed in a 180-degree surround mode in the virtual space, such as Figure 20c.
- the bullet screen is displayed in a 360-degree surround mode in the virtual space, such as Figure 20d.
- the present disclosure when displaying barrage in a virtual space according to a target surround method, can also display the barrage in a target surround method on a barrage presentation area in the virtual space to ensure the neatness of the displayed content in the virtual space, thereby facilitating users to view the displayed barrage information.
- the bullet screen presentation area may be the upper area in the virtual space (such as shown in FIG. 18 ), or it may be other blank areas in the virtual space, etc., and no specific limitation is made here.
- the present disclosure can display the barrages in the virtual space based on the target surround method, and can also display the barrages in any default barrage level presentation method, so that the displayed barrages have different levels, which is convenient for users to view a large amount of barrage information.
- the default barrage level presentation method of the present disclosure may include but is not limited to: a reciprocating stacking level presentation method.
- the structure of the reciprocating stacking layer presentation method may be an ABAB structure, that is, two bullet screen presentation sizes or depths are used for cyclic presentation.
- the barrage on adjacent barrage tracks in the displayed barrage information can have different levels, thereby facilitating users to view the barrage information, enhancing the interest and three-dimensionality of the barrage presentation in the virtual space, and enhancing the user's immersive experience in the virtual space.
- ABAB method reciprocating stacking layer presentation method
- the technical solution provided by the embodiment of the present disclosure obtains the content scene of the virtual space, determines the target display mode of the bullet screen according to the content scene, and then displays the bullet screen based on the target display mode in the virtual space.
- the present disclosure adapts the target display mode of the bullet screen based on the content scene of the virtual space, and displays the bullet screen based on the target display mode, thereby achieving diversified display effects when the bullet screen is displayed in the virtual space, enriching the bullet screen display mode, saving the bullet screen display cost, and improving the user's interactive experience.
- the target display mode of the bullet screen is the target surround mode, or the target surround mode and the target hierarchical presentation mode
- the following is a further explanation of determining the target display mode of the bullet screen as the target surround mode and the target hierarchical presentation mode in the present disclosure in conjunction with FIG. 21.
- the method may include the following steps:
- each line of bullet screen is a bullet screen track when the bullet screen is displayed. That is, by presenting the bullet screen on the bullet screen track, the display time and speed of the bullet screen can be flexibly controlled to meet different bullet screen display requirements.
- the barrage disclosed in the present invention may include but is not limited to the following parameters: the number of barrage tracks.
- the present disclosure determines the hierarchical presentation mode of the bullet screen, which may include but is not limited to the following situations:
- the present invention can arbitrarily combine the bullet screen tracks in the virtual space according to the independent bullet screen tracks to obtain different levels of presentation in the three-dimensional space.
- barrage can be displayed in different sizes on a plane. Therefore, the present invention optionally determines any target plane for presenting barrage in the virtual space, and then sets barrage tracks of different sizes on the target plane according to the presentation requirements to obtain different levels of presentation.
- the present disclosure may pre-set the corresponding bullet screen surround mode and bullet screen hierarchical presentation mode for each content scene type according to various content scene types. Furthermore, a mapping relationship between each content scene type, bullet screen surround mode, and bullet screen hierarchical presentation mode is established. Then, the established mapping relationship between the content scene type, bullet screen surround mode, and bullet screen hierarchical presentation mode is configured on the electronic device or stored on the server side, so as to lay the foundation for subsequently determining the target surround mode and target hierarchical presentation mode of the bullet screen according to the type of content scene.
- the bullet screen surround mode may include but is not limited to: horizontal scrolling mode, arc surround mode, 180 degree surround mode and 360 degree surround mode, which are not limited here.
- the arc of the arc surround mode refers to any arc less than 180 degrees, which are not limited here.
- the barrage layer presentation method may include but is not limited to one of the following: a positive ladder presentation method (ABCD method), a negative ladder presentation method (DCBA method), a reciprocating stacking presentation method (ABAB method) and a 2D slice presentation method, etc.
- ABCD method positive ladder presentation method
- DCBA method negative ladder presentation method
- ABAB method reciprocating stacking presentation method
- 2D slice presentation method etc.
- the 2D slice presentation method refers to a method of displaying barrage in a two-dimensional plane form in the barrage presentation area in the virtual space.
- the zoom ratio of each bullet track corresponding to the above-mentioned positive ladder presentation mode, reverse ladder presentation mode and reciprocating stacking presentation mode can be flexibly adjusted according to actual needs, and no specific restrictions are imposed here.
- the zoom ratio is adjusted with 0.01 as the starting basis.
- the zoom magnification of the first row is: ⁇ 1.00 times; the zoom magnification of the second row is: ⁇ 1.03 times; the zoom magnification of the third row is: ⁇ 1.00 times; and the zoom magnification of the fourth row is: ⁇ 1.03 times.
- the zoom ratio of the first row is: ⁇ 1.00 times; the zoom ratio of the second row is: ⁇ 0.99 times; the zoom ratio of the third row is: ⁇ 0.98 times; and the zoom ratio of the fourth row is: ⁇ 0.97 times.
- the zoom ratio of the first row is: ⁇ 0.97 times; the zoom ratio of the second row is: ⁇ 0.98 times; the zoom ratio of the third row is: ⁇ 0.99 times; and the zoom ratio of the fourth row is: ⁇ 1.00 times.
- mapping relationship between the content scene type, the bullet screen surround mode, and the bullet screen hierarchical presentation mode established in the present disclosure is optionally shown in the following Table 2:
- the bullet screen surround mode and bullet screen level presentation mode corresponding to each content scene type are set in advance according to the types of various content scenes, multiple settings can be performed manually or automatically to set the best surround mode and bullet screen level presentation mode for each content scene type.
- the bullet screen surround mode can be set in sequence: horizontal screen scrolling mode, arc surround mode, 180-degree surround mode and 360-degree surround mode
- the bullet screen level presentation mode can be set: 2D film presentation mode, inverted ladder presentation mode, forward ladder presentation mode and reciprocating stacking presentation mode, and the bullet screen "XX is so great” is displayed based on each set surround mode and each level presentation mode. Then, according to the bullet screen "XX is so great" effect displayed by each surround mode and each level presentation mode, the one with the best display effect is selected as the target surround mode and target level presentation mode for the close-range radius scene.
- bullet screen surround mode and bullet screen level presentation mode set for each content scene type in the present disclosure can also be flexibly adjusted according to actual presentation requirements, and no specific restrictions are made here.
- the barrage surround method and the barrage hierarchical presentation method that have a mapping relationship with the type of content scene obtained can be searched according to the type of content scene, among the mapping relationship among the content scene type, the barrage surround method and the barrage hierarchical presentation method, and the barrage surround method can be determined as the target surround method of the barrage, and the barrage hierarchical presentation method can be determined as the target hierarchical presentation method of the barrage.
- the present disclosure determines the target surround mode and target hierarchical presentation mode of the bullet screen according to the type of content scene, which may include the following situations:
- the type of content scene is a long-distance scene
- the barrage surround mode and the barrage hierarchical presentation mode it is determined that the target surround mode of the barrage is the horizontal screen scrolling mode, and the target hierarchical presentation mode of the barrage is the reciprocating stacking hierarchical presentation mode.
- the target surround mode of the barrage is the arc surround mode
- the target level presentation mode of the barrage is the inverted ladder level presentation mode
- the type of content scene is a half-scene
- the barrage surround method according to the long-distance scene, in the mapping relationship between the content scene type, the barrage surround method and the barrage level presentation method, it is determined that the target surround method of the barrage is the half-scene surround method, and the target level presentation method of the barrage is the straight-level presentation method.
- the type of content scene is a panoramic scene
- the barrage surround mode and the barrage hierarchical presentation mode it is determined that the target surround mode of the barrage is the panoramic surround mode, and the target hierarchical presentation mode of the barrage is the 2D film presentation mode.
- the type of content scene is a long-distance half-scene scene
- the barrage surround mode and the barrage level presentation mode it is determined that the target surround mode of the barrage is the half-scene surround mode, and the target level presentation mode of the barrage is the reciprocating stacking level presentation mode.
- the type of content scene is a long-distance panoramic scene
- the barrage surround mode and the barrage hierarchical presentation mode it is determined that the target surround mode of the barrage is the panoramic surround mode, and the target hierarchical presentation mode of the barrage is the reciprocating stacking hierarchical presentation mode.
- the type of content scene is a close-range half-scene scene
- the barrage surround mode and the barrage level presentation mode it is determined that the target surround mode of the barrage is the half-scene surround mode, and the target level presentation mode of the barrage is the inverted ladder level presentation mode.
- the target surround mode of the barrage is a panoramic surround mode
- the target hierarchical presentation mode of the barrage is a reverse ladder hierarchical presentation mode
- each bullet screen track or the bullet screen on each bullet screen track may be adjusted first according to the target surround mode and the target layer presentation mode. Afterwards, the bullet screen is displayed based on the adjusted bullet screen track or the adjusted bullet screen is displayed based on the bullet screen track, thereby achieving a diversified display effect of the bullet screen.
- the specific implementation of displaying bullet comments in the virtual space is as follows:
- the surround mode of each bullet screen track is adjusted according to the determined target surround mode, and the layered presentation mode of each bullet screen track is performed according to the determined target layered presentation mode. Then, the bullet screen is displayed on each adjusted bullet screen track.
- the surrounding mode of each bullet screen track is adjusted according to the determined target surrounding mode, and the layered presentation mode of each bullet screen track is adjusted according to the determined target layered presentation mode. Then, the adjusted bullet screen is displayed on each bullet screen track.
- the present disclosure displays bullet comments in a virtual space according to a target surround mode and a target layer presentation mode
- exemplary implementations may include but are not limited to the following:
- the target surround mode is a horizontal scrolling mode and the target layer presentation mode is a reciprocating stacking presentation mode
- the barrage is displayed in a horizontal scrolling mode and a reciprocating stacking presentation mode in the virtual space, as shown in FIG. 23 .
- the target surround mode is an arc surround mode and the target level presentation mode is an inverted ladder presentation mode
- the bullet commentary is displayed in an arc surround mode and an inverted ladder presentation mode in the virtual space.
- the target surround mode is a 180-degree surround mode and the target hierarchy presentation mode is a straight ladder presentation mode
- the bullet commentary is displayed in a 180-degree surround mode and a straight ladder presentation mode in the virtual space.
- the target surround mode is a 360-degree surround mode and the target layer presentation mode is a 2D slice presentation mode
- the bullet commentary is displayed in a 360-degree surround mode and a 2D slice presentation mode in the virtual space.
- the bullet screen is displayed in a 180-degree surround mode and a reciprocating stacking presentation mode in the virtual space.
- the bullet screen is displayed in a 360-degree surround mode and a reciprocating stacking presentation mode in the virtual space.
- the target surround mode is a 180-degree surround mode and the target hierarchy presentation mode is a reverse ladder presentation mode
- the bullet commentary is displayed in a 180-degree surround mode and a reverse ladder presentation mode in the virtual space.
- the target surround mode is a 360-degree surround mode and the target hierarchy presentation mode is a reverse ladder presentation mode
- the bullet comments are displayed in a 360-degree surround mode and a reverse ladder presentation mode in the virtual space.
- the present disclosure can display the barrage in a target surround mode and a target level presentation mode in a virtual space.
- the barrage can also be displayed in a target surround mode and a target level presentation mode on a barrage presentation area in the virtual space to ensure the neatness of the displayed content in the virtual space, thereby facilitating users to view the displayed barrage information.
- the bullet screen presentation area may be the upper area in the virtual space (such as shown in FIG. 18 ), or it may be other blank areas in the virtual space, etc., and no specific limitation is made here.
- the technical solution provided by the embodiment of the present disclosure obtains the content scene of the virtual space to determine the target display mode of the barrage according to the content scene, and then displays the barrage based on the target display mode in the virtual space.
- the present disclosure adapts the target display mode of the barrage based on the content scene of the virtual space, and displays the barrage based on the target display mode, thereby achieving diversified display effects when the barrage is displayed in the virtual space, enriching the barrage display mode, saving the cost of barrage display, and improving the user's interactive experience.
- the barrage information presented in the virtual space has obvious hierarchy, which makes it easier for users to view the barrage information, enhances the fun and diversity of the barrage presentation in the virtual space, and improves the user's immersive experience in the virtual space.
- FIG24 is a schematic block diagram of a bullet screen display device provided in an embodiment of the present disclosure.
- the bullet screen display device 400 includes: a scene acquisition module 410 , a determination module 420 and a display module 430 .
- the scene acquisition module 410 is used to acquire the content scene of the virtual space
- a determination module 420 configured to determine a target display mode of the bullet screen according to the content scenario
- the display module 430 is used to display the bullet screen in the virtual space according to the target display mode.
- the determination module 420 is specifically configured to:
- the target surround mode and the target hierarchical presentation mode of the barrage are determined.
- the type of the content scene includes at least one of the following: a long-distance scene, a close-distance scene, a half-scene scene, and a panoramic scene.
- the target surround mode is any one of a horizontal screen scrolling mode, an arc surround mode, a half-view surround mode and a panoramic surround mode.
- the determination module 420 is specifically configured to:
- the target surround mode of the bullet screen is a horizontal screen scrolling mode
- determining that the target surround mode of the barrage is an arc surround mode
- the target surround mode of the barrage is a half-scene surround mode
- the target surround mode of the barrage is a panoramic surround mode.
- the parameters of the barrage include at least: the number of barrage tracks.
- the hierarchical presentation mode of the bullet screen is determined by performing the following operations:
- a target plane is determined in the virtual space, and the bullet screen track is set on the target plane to determine a hierarchical presentation method of the bullet screen.
- the target layer presentation method is any one of a reciprocating stacking presentation method, a reverse ladder presentation method, a forward ladder presentation method and a 2D slice presentation method.
- the determination module 420 is specifically configured to:
- the target surround mode of the bullet screen is a horizontal screen scrolling mode, and the target hierarchical presentation mode of the bullet screen is a reciprocating stacking presentation mode
- the target surround mode of the bullet screen is an arc surround mode, and the target level presentation mode of the bullet screen is an inverted ladder presentation mode
- the target surround mode of the bullet screen is a semi-scene surround mode, and the target hierarchical presentation mode of the bullet screen is a straight ladder presentation mode;
- the target surround mode of the barrage is a panoramic surround mode
- the target hierarchical presentation mode of the barrage is a 2D slice presentation mode
- the display module 430 is specifically used to:
- the bullet screen is displayed in the bullet screen presentation area in the virtual space.
- the display module 430 is further configured to:
- the bullet screen is displayed on the bullet screen presentation area in the virtual space.
- the display module 430 is further configured to:
- the bullet screen presentation area includes at least two bullet screen tracks, adjusting the surround mode of each bullet screen track according to the target surround mode, and adjusting the layered presentation mode of each bullet screen track according to the target layered presentation mode;
- the display module 430 is further configured to:
- the bullet screen presentation area includes at least two bullet screen tracks, adjusting the surrounding mode of the bullet screen on each bullet screen track according to the target surrounding mode, and adjusting the hierarchical presentation mode of the bullet screen on each bullet screen track according to the target hierarchical presentation mode;
- the technical solution provided by the embodiment of the present disclosure obtains the content scene of the virtual space, determines the target display mode of the bullet screen according to the content scene, and then displays the bullet screen based on the target display mode in the virtual space.
- the present disclosure adapts the target display mode of the bullet screen based on the content scene of the virtual space, and displays the bullet screen based on the target display mode, thereby achieving diversified display effects when the bullet screen is displayed in the virtual space, enriching the bullet screen display mode, saving the bullet screen display cost, and improving the user's interactive experience.
- the device 400 shown in FIG. 24 can execute the method embodiment corresponding to FIG. 17, and the aforementioned and other operations and/or functions of each module in the device 400 are respectively for implementing the corresponding processes in each method in FIG. 17, and for the sake of brevity, no further description is given here.
- the software module can be located in a mature storage medium in the art such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory, an electrically erasable programmable memory, a register, etc.
- the storage medium is located in the memory, and the processor reads the information in the memory and completes the steps in the above method embodiment in combination with its hardware.
- FIG. 25 is a schematic block diagram of an electronic device provided in an embodiment of the present disclosure.
- the electronic device 1000 may include:
- the memory 1010 and the processor 1020 the memory 1010 is used to store the computer program and transmit the program code to the processor 1020.
- the processor 1020 can call and run the computer program from the memory 1010 to implement the method in the embodiment of the present disclosure.
- the processor 1020 may be configured to execute the above method embodiments according to instructions in the computer program.
- the processor 1020 may include but is not limited to:
- DSP digital signal processor
- ASIC application-specific integrated circuit
- FPGA field programmable gate array
- the memory 1010 includes but is not limited to:
- Non-volatile memory can be read-only memory (ROM), programmable ROM (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM) or flash memory.
- the volatile memory can be random access memory (RAM), which is used as an external cache.
- RAM random access memory
- SRAM static RAM
- DRAM dynamic RAM
- SDRAM synchronous DRAM
- DDR SDRAM double data rate synchronous dynamic random access memory
- ESDRAM enhanced synchronous dynamic random access memory
- SLDRAM synchronous link DRAM
- DRRAM direct RAM bus random access memory
- the computer program may be divided into one or more modules, which are stored in the memory 1010 and executed by the processor 1020 to complete the method provided by the present disclosure.
- the one or more modules may be a series of computer program instruction segments capable of completing specific functions, and the instruction segments are used to describe the execution process of the computer program in the electronic device 1000.
- the electronic device may further include:
- the transceiver 1030 may be connected to the processor 1020 or the memory 1010 .
- the processor 1020 can control the transceiver 1030 to communicate with other devices.
- the transceiver 1030 may include a transmitter and a receiver.
- the transceiver 1030 may further include an antenna, and the number of antennas may be one or more.
- the electronic device 1000 may also include a camera module, a wireless fidelity WIFI module, a positioning module, a Bluetooth module, a display, a controller, etc., which will not be described in detail here.
- bus system includes not only a data bus but also a power bus, a control bus and a status signal bus.
- the present disclosure also provides a computer storage medium on which a computer program is stored.
- the computer program is executed by a computer, the computer is enabled to perform the method of the above method embodiment.
- the embodiments of the present disclosure also provide a computer program product including a computer program/instruction, which, when executed by a computer, enables the computer to execute the method of the above method embodiment.
- the computer program product includes one or more computer instructions.
- the computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices.
- the computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium.
- the computer instructions can be transmitted from a website, computer, server or data center to another website, computer, server or data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (digital subscriber line, DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) methods.
- the computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more available media integrated.
- the available medium can be a magnetic medium (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a digital video disc (digital video disc, DVD)), or a semiconductor medium (e.g., a solid state drive (solid state disk, SSD)), etc.
- a magnetic medium e.g., a floppy disk, a hard disk, a tape
- an optical medium e.g., a digital video disc (digital video disc, DVD)
- a semiconductor medium e.g., a solid state drive (solid state disk, SSD)
- modules and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this disclosure.
- the disclosed systems, devices and methods can be implemented in other ways.
- the device embodiments described above are only schematic.
- the division of the module is only a logical function division.
- Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or modules, which can be electrical, mechanical or other forms.
- each functional module in each embodiment of the present disclosure may be integrated into one processing module, or each module may exist physically separately, or two or more modules may be integrated into one module.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本公开的实施例提供了一种弹幕呈现方法、装置、设备和存储介质。该方法包括:确定虚拟空间内的至少一层环绕弹幕轨道;响应于所述虚拟空间内获取的任一当前弹幕,确定所述当前弹幕在所述至少一层环绕弹幕轨道内的呈现位置,以在所述呈现位置处呈现所述当前弹幕。本公开实施例可以实现虚拟空间内的弹幕环绕呈现,便于用户在虚拟空间内全方位的浏览弹幕,增强虚拟空间内弹幕呈现的多样性和互动趣味性,提升用户在虚拟空间内的全方位沉浸式体验。
Description
本申请要求于2022年10月28日递交的中国专利申请第202211338814.7号、于2023年2月7日递交的中国专利申请第202310125056.9号以及于2023年2月7日递交的中国专利申请第202310134075.8号的优先权,上述中国专利申请的全文以引用的方式并入以作为本申请的一部分。
本公开的实施例涉及一种弹幕呈现方法、装置、设备和存储介质。
目前,XR技术的应用场景越来越广泛了,具体包含虚拟现实(Virtual Reality,简称为VR)、增强现实(Augmented Reality,简称为AR)和混合现实(Mixed Reality,简称为MR)等。在各类虚拟场景下,用户通过与相应的虚拟对象进行各类交互,来沉浸式体验真实的虚拟场景。
通常情况下,虚拟空间内会在用户前方显示一个弹幕互动界面,在该弹幕互动界面上呈现虚拟空间各个用户发送的各类弹幕消息,使得虚拟空间内的弹幕呈现较为单一,存在一定的呈现局限性。
发明内容
本公开提供一种弹幕呈现方法、装置、设备和存储介质,通过至少一层环绕弹幕轨道实现虚拟空间内的弹幕环绕呈现,增强虚拟空间内弹幕呈现的多样性和互动趣味性,提升用户在虚拟空间内的全方位沉浸式体验。
本公开实施例提供了一种弹幕呈现方法,应用于XR设备,该方法包括:
确定虚拟空间内的至少一层环绕弹幕轨道;
响应于所述虚拟空间内获取的任一当前弹幕,确定所述当前弹幕在所述至少一层环绕弹幕轨道内的呈现位置,以在所述呈现位置处呈现所述当前弹幕。
本公开实施例提供了一种弹幕呈现装置,配置于XR设备,该装置包括:
弹幕轨道确定模块,用于确定虚拟空间内的至少一层环绕弹幕轨道;
弹幕呈现模块,用于响应于所述虚拟空间内获取的任一当前弹幕,确定所述当前弹幕在所述至少一层环绕弹幕轨道内的呈现位置,以在所述呈现位置处呈现所述当前弹幕。
本公开实施例还提供了一种弹幕显示方法,该弹幕显示方法包括:
在虚拟空间中生成至少一个环形轨道;
获取弹幕的显示信息,所述弹幕的显示信息包括弹幕的内容、出生的轨道信息、在轨道上占据的空间信息和在轨道上的消失位置信息;
根据所述弹幕的显示信息,在所述环形轨道上显示所述弹幕,所述弹幕在所述环形轨道上移动。
本公开实施例还提供了一种弹幕显示装置,该弹幕显示装置包括:
生成模块,用于在虚拟空间中生成至少一个环形轨道;
获取模块,用于获取弹幕的显示信息,所述弹幕的显示信息包括弹幕的内容、出生的轨道信息、在轨道上占据的空间信息和在轨道上的消失位置信息;
显示模块,用于根据所述弹幕的显示信息,在所述环形轨道上显示所述弹幕,所述弹幕在所述环形轨道上移动。
本公开实施例还提供了一种弹幕显示方法,该弹幕显示方法包括:
获取虚拟空间的内容场景;
根据所述内容场景,确定弹幕的目标显示方式;
根据所述目标显示方式,在所述虚拟空间内显示所述弹幕。
本公开实施例还提供了一种弹幕显示装置,该弹幕显示装置包括:
场景获取模块,用于获取虚拟空间的内容场景;
确定模块,用于根据所述内容场景,确定弹幕的目标显示方式;
显示模块,用于根据所述目标显示方式,在所述虚拟空间内显示所述弹幕。本公开实施例提供了一种电子设备,该电子设备包括:
处理器和存储器,该存储器用于存储计算机程序,该处理器用于调用并运行该存储器中存储的计算机程序,以执行本公开任一实施例提供的弹幕呈现方法或弹幕显示方法。
本公开实施例提供了一种计算机可读存储介质,用于存储计算机程序,该计算机程序使得计算机执行如本公开任一实施例提供的弹幕呈现方法或弹幕显示方法。
本公开实施例提供了一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令使得计算机执行如本公开任一实施例提供的弹幕呈现方法或弹幕显示方法。
通过本公开技术方案,在进入虚拟空间后,首先确定虚拟空间内的至少一层环绕弹幕轨道。然后,对于虚拟空间内获取的任一当前弹幕,确定当前弹幕在至少一层环绕弹幕轨道内的呈现位置,以在该呈现位置处呈现当前弹幕,从而实现虚拟空间内的弹幕环绕呈现,便于用户在虚拟空间内全方位的浏览弹幕,增强虚拟空间内弹幕呈现的多样性和互动趣味性,提升用户在虚拟空间内的全方位沉浸式体验。
为了更清楚地说明本公开实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例提供的一种弹幕呈现方法的流程图;
图2为本公开实施例提供的至少一层环绕弹幕轨道的示例性示意图;
图3为本公开实施例提供的至少一层环绕弹幕轨道的具体确定过程的方法流程图;
图4为本公开实施例提供的确定至少一层环绕弹幕轨道的原理示意图;
图5为本公开实施例提供的至少一层环绕弹幕轨道内的弹幕呈现过程的方法流程图;
图6为本公开实施例提供的在至少一层环绕弹幕轨道内弹幕呈现的原理示意图;
图7为本公开实施例提供的另一种弹幕呈现方法的流程图;
图8为本公开实施例提供的至少一层环绕弹幕轨道内划定的多个弹幕生产区域的示例性示意图;
图9为本公开实施例提供的一种弹幕呈现装置的示意图;
图10是本公开实施例提供的弹幕显示方法的流程图;
图11为弹幕在环形轨道上显示的一种示意图;
图12为弹幕对应的网格的弯曲过程示意图;
图13为本公开实施例提供的一种新弹幕的显示信息的获取方法的流程图;
图14为轨道的主态区间和客态区间的一种示意图;
图15为本公开实施例提供的一种新弹幕的显示信息的获取方法的流程图;
图16为本公开实施例提供的一种弹幕显示装置的结构示意图;
图17是本公开实施例提供的一种弹幕显示方法的流程示意图;
图18是本公开实施例提供的一种虚拟空间内划分的弹幕呈现区示意图;
图19是本公开实施例提供的另一种弹幕显示方法的流程示意图;
图20a是本公开实施例提供的一种在虚拟空间内以横屏滚动方式显示弹幕的正视图;
图20b是本公开实施例提供的一种在虚拟空间内以弧度环绕方式显示弹幕的俯视图;
图20c是本公开实施例提供的一种在虚拟空间内以180度环绕方式显示弹幕的俯视图;
图20d是本公开实施例提供的一种在虚拟空间内以360度环绕方式显示弹幕的俯视图;
图21是本公开实施例提供的再一种弹幕显示方法的流程示意图;
图22a是本公开实施例提供的一种往复堆叠呈现方式对应的不同弹幕轨道缩放倍率的示意图;
图22b是本公开实施例提供的一种正梯呈现方式对应的不同弹幕轨道缩放倍率的示意图;
图22c是本公开实施例提供的一种倒梯呈现方式对应的不同弹幕轨道缩放倍率的示意图;
图23是本公开实施例提供的一种在虚拟空间内以横屏滚动方式和往复堆叠呈现方式显示弹幕的正视图;
图24是本公开实施例提供的一种弹幕显示装置的示意性框图;
图25为本公开实施例提供的电子设备的示意性框图。
下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本公开实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明,本公开实施例中被描述为“示例性的”或者“例如”的任何实施例或方案不应被解释为比其它实施例或方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
为了便于理解本公开实施例,在描述本公开各个实施例之前,首先对本公开所有实施例中所涉及到的一些概念进行适当的解释说明,具体如下:
1)虚拟现实(Virtual Reality,简称为VR),创建和体验虚拟世界的技术,确定生成一种虚拟环境,是一种多源信息(本文中提到的虚拟现实至少包括视觉感知,此外还可以包括听觉感知、触觉感知、运动感知,甚至还包括味觉感知、嗅觉感知等),实现虚拟环境的融合的、交互式的三维动态视景和实体行为的仿真,使用户沉浸到模拟的虚拟现实环境中,实现在诸如地图、游戏、视频、教育、医疗、模拟、协同训练、销售、协助制造、维护和修复等多种虚拟环境的应用。
2)虚拟现实设备(VR设备),实现虚拟现实效果的终端,通常可以提供为眼镜、头盔式显示器(Head Mount Display,简称为HMD)、隐形眼镜的形态,以用于实现视觉感知和其他形式的感知,当然虚拟现实设备实现的形态不限于此,根据实际需要可以进一步小型化或大型化。
可选的,本公开实施例中记载的虚拟现实设备可以包括但不限于如下几个类型:
2.1)电脑端虚拟现实(PCVR)设备,利用PC端进行虚拟现实功能的相关计算以及数据输出,外接的电脑端虚拟现实设备利用PC端输出的数据实现虚拟现实的效果。
2.2)移动虚拟现实设备,支持以各种方式(如设置有专门的卡槽的头戴式显示器)设置移动终端(如智能手机),通过与移动终端有线或无线方式的连接,由移动终端进行虚拟现实功能的相关计算,并输出数据至移动虚拟现实设备,例如通过移动终端的APP观看虚拟现实视频。
2.3)一体机虚拟现实设备,具备用于进行虚拟功能的相关计算的处理器,因而具备
独立的虚拟现实输入和输出的功能,不需要与PC端或移动终端连接,使用自由度高。
3)增强现实(Augmented Reality,AR):一种在相机采集图像的过程中,实时地计算相机在现实世界(或称三维世界、真实世界)中的相机姿态参数,根据该相机姿态参数在相机采集的图像上添加虚拟元素的技术。虚拟元素包括但不限于:图像、视频和三维模型。AR技术的目标是在屏幕上把虚拟世界套接在现实世界上进行互动。
4)混合现实(Mixed Reality,简称为MR):是指结合真实和虚拟世界创造了新的环境和可视化,物理实体和数字对象共存并能实时相互作用,用以模拟真实物体。混合了现实、增强现实、增强虚拟和虚拟现实技术。MR是一种虚拟现实(VR)加增强现实(AR)的合成品混合现实(MR),是虚拟现实(VR)技术的拓展延伸,通过在现实场景中呈现虚拟场景的方式,可以增加用户体验的真实感。MR领域涉及计算机视觉,计算机视觉是一门研究如何使机器“看”的科学,更进一步的,是指摄像机和计算机代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图像处理,用计算机处理成为更适合人眼观察或传送给仪器检测的图像。
也即是说,MR是将计算机创建的感官输入(例如,虚拟对象)与来自物理布景的感官输入或其表示集成的模拟布景,一些MR布景中,计算机创建的感官输入可以适应于来自物理布景的感官输入的变化。另外,用于呈现MR布景的一些电子系统可以监测相对于物理布景的取向和/或位置,以使虚拟对象能够与真实对象(即来自物理布景的物理元素或其表示)交互。例如,系统可监测运动,使得虚拟植物相对于物理建筑物看起来是静止的。
5)扩展现实(Extended Reality,XR)是指由计算机技术和可穿戴设备生成的所有真实和虚拟组合环境以及人机交互,其包含了虚拟现实(VR)、增强现实(AR)以及混合现实(MR)等多种形式。
6)虚拟场景(又称为虚拟空间),是应用程序在电子设备上运行时显示(或提供)的虚拟场景。该虚拟场景可以是对真实世界的仿真环境,也可以是半仿真半虚构的虚拟场景,还可以是纯虚构的虚拟场景。虚拟场景可以是二维虚拟场景、2.5维虚拟场景或者三维虚拟场景中的任意一种,本公开实施例对虚拟场景的维度不加以限定。例如,虚拟场景可以包括天空、陆地、海洋等,该陆地可以包括沙漠、城市等环境元素。
在介绍了本公开实施例涉及到的一些概念之后,下面结合附图对本公开实施例提供的一种弹幕显示方法进行具体说明,相同内容参照前述实施例的描述,不再重复说明。
为了解决虚拟空间内在用户前方的弹幕互动界面呈现各类弹幕时存在的弹幕呈现单一性的问题,本公开的发明构思是:在虚拟空间内设定一个至少一层环绕弹幕轨道,来全方位环绕呈现虚拟空间内的各类弹幕。对于虚拟空间内获取的任一当前弹幕,根据至少一层环绕弹幕轨道内的已呈现弹幕,确定当前弹幕在至少一层环绕弹幕轨道内的呈现位置,以在该呈现位置处呈现当前弹幕,从而实现虚拟空间内的弹幕环绕呈现,便于用户在虚拟空间内全方位的浏览弹幕,增强虚拟空间内弹幕呈现的多样性和互动趣味性。
图1为本公开实施例提供的一种弹幕呈现方法的流程图,该方法可以应用于XR设备中,但不限于此。该方法可以由本公开提供的弹幕呈现装置来执行,其中,弹幕呈现装置可以通过任意的软件和/或硬件的方式实现。示例性地,弹幕呈现装置可配置于AR/VR/MR等能够模拟虚拟场景的电子设备,本公开对电子设备的具体类型不作任何限制。
具体的,如图1所示,该方法可以包括如下步骤:
S110,确定虚拟空间内的至少一层环绕弹幕轨道。
其中,虚拟空间可以为XR设备针对任一用户选择的某一真实互动场景,模拟出的相应虚拟环境,以便在虚拟空间内显示相应的互动信息。其中,虚拟空间可以是对真实世界的仿真环境,也可以是半仿真半虚构的虚拟场景,还可以是纯虚构的虚拟场景。
例如,用户选中某一类型的直播场景,来构建相应的虚拟直播环境,作为本公开中的虚拟空间,使得各个观众进入到该虚拟空间内来实现相应的直播互动。通常情况下,用户在佩戴好XR设备后,会进入到所提供的由真实场景和虚拟场景融合后而形成的虚拟空间内。
一方面,在进入虚拟空间内,会默认在虚拟空间内呈现对应的弹幕。所以,本公开在进入虚拟空间后,会直接确定虚拟空间内用于呈现弹幕的对象,也就是本公开中的至少一层环绕弹幕轨道。
另一方面,在虚拟空间内,各个用户会针对所显示的各类场景内容而发送相应弹幕消息,以实现虚拟空间内的用户互动。而为了避免弹幕遮挡虚拟空间内显示的各类场景内容,在进入虚拟空间内时,通常会将弹幕隐藏起来,以便用户存在弹幕查看需求时主动开启弹幕。所以,为了实现虚拟空间内的弹幕便捷启用,本公开会在虚拟空间内设定一个弹幕控件,用于引导用户执行相应的弹幕开启操作。所以,在进入虚拟空间后,如果当前未启用弹幕,而用户存在弹幕查看需求时,用户会对虚拟空间内的弹幕控件执行相应的触发操作。在检测到用户面向该弹幕控件执行的触发操作时,会生成对应的弹幕开启指令,来确定虚拟空间内用于呈现弹幕的对象,也就是本公开中的至少一层环绕弹幕轨道。
而且,考虑到虚拟空间内在用户前方的弹幕互动界面呈现各类弹幕时较为单一,无法支持在虚拟空间内用户头部转动时对于弹幕的全方位浏览。所以,结合虚拟空间内用户对于弹幕的全方位浏览需求和弹幕量可能较多的情况,本公开会在虚拟空间内设定一个至少一层环绕弹幕轨道。
其中,至少一层环绕弹幕轨道可以是在虚拟空间内环绕用户而形成的圆环形轨道,可以根据虚拟空间内的全景角度,自适应调整该至少一层环绕弹幕轨道面向用户的环绕角度,以适应用户在虚拟空间内的全景转动角度。例如,该至少一层环绕弹幕轨道可以为面向用户设定的一个360度环绕轨道,也可以为面向用户设定的一个270度环绕轨道,本公开对此不作限定。
而且,本公开中的至少一层环绕弹幕轨道的轨道层数不作限定,可以根据虚拟空间
内所支持呈现的最大弹幕数量来设定,使得该至少一层环绕弹幕轨道支持最大弹幕数量下的弹幕正常呈现,以避免至少一层环绕弹幕轨道内呈现的弹幕出现过于拥挤的现象。
本公开中,在虚拟空间内存在弹幕呈现需求时,会确定用户在虚拟空间内的所处位置。然后,以该用户的所处位置为中心,确定虚拟空间内设定的至少一层环绕弹幕轨道,以便后续呈现各类弹幕,支持用户对于弹幕的全方位浏览。
应当理解的是,本公开中的至少一层环绕弹幕轨道可以在虚拟空间内显性呈现出来,以使用户在虚拟空间内能够直观查看到该至少一层环绕弹幕轨道。然而,考虑到至少一层环绕弹幕轨道主要用于呈现虚拟空间内的各个弹幕,用户并不关注轨道的形状,而主要关注所呈现的弹幕。所以,本公开中的至少一层环绕弹幕轨道也可以在虚拟空间内隐性呈现,无需使用户直观查看该至少一层环绕弹幕轨道,为用户呈现一种弹幕悬浮在虚拟空间内呈现的效果,从而提升弹幕呈现的多样性。为了便于直观理解至少一层环绕弹幕轨道的样式,如图2所示,本公开会通过显性呈现方式来直观展示该至少一层环绕弹幕轨道,以对至少一层环绕弹幕轨道进行直观说明。
S120,响应于虚拟空间内获取的任一当前弹幕,确定当前弹幕在至少一层环绕弹幕轨道内的呈现位置,以在该呈现位置处呈现当前弹幕。
在虚拟空间开启弹幕功能后,虚拟空间会实时获取到各个用户发送的弹幕。那么,为了确保至少一层环绕弹幕轨道内的弹幕有序呈现,本公开在检测到虚拟空间内获取的任一当前弹幕时,可以直接在至少一层环绕弹幕轨道内的空白位置处,确定当前弹幕在至少一层环绕弹幕轨道内的呈现位置,以在该呈现位置处呈现当前弹幕。
作为本公开中的一种可选实现方案,为了避免至少一层环绕弹幕轨道内的弹幕重叠,本公开会根据至少一层环绕弹幕轨道内的已呈现弹幕,确定当前弹幕在所述至少一层环绕弹幕轨道内的呈现位置。
也就是,首先会确定至少一层环绕弹幕轨道内每一已呈现弹幕的所处位置。然后,在至少一层环绕弹幕轨道内除每一已呈现弹幕的所处位置之外的其他空白轨道区域内,根据当前弹幕的弹幕呈现长度和弹幕尽可能不重叠的需求,随机确定出当前弹幕在至少一层环绕弹幕轨道内的呈现位置。进而,在该呈现位置处呈现当前弹幕,从而尽可能避免当前弹幕在至少一层环绕弹幕轨道内与其他已呈现弹幕发生重叠,确保虚拟空间内弹幕呈现的有效性。
应当理解的是,在至少一层环绕弹幕轨道内呈现任一当前弹幕时,为了确保弹幕呈现的多样性,本公开还可以自适应调整当前弹幕的字符呈现样式,并不局限于一种字符样式的弹幕呈现。例如,可以自适应调整任一当前弹幕的字体、字形、字符颜色、字号等各种字符样式。而对于任一当前弹幕的字号需要适应当前弹幕所在轨道的高度,避免出现由于当前弹幕的字号过大而超出所在轨道的范围,导致当前弹幕与其他轨道的弹幕发生重叠的情况。
也就是,至少一层环绕弹幕轨道内呈现的不同弹幕的字符呈现样式可以相同,也可以不同,本公开对此不作限定。
本公开实施例提供的技术方案,如果在虚拟空间内接收到弹幕开启指令,首先确定虚拟空间内的至少一层环绕弹幕轨道。然后,对于虚拟空间内获取的任一当前弹幕,根据至少一层环绕弹幕轨道内的已呈现弹幕,确定当前弹幕在至少一层环绕弹幕轨道内的呈现位置,以在该呈现位置处呈现当前弹幕,从而实现虚拟空间内的弹幕环绕呈现,便于用户在虚拟空间内全方位的浏览弹幕,增强虚拟空间内弹幕呈现的多样性和互动趣味性,提升用户在虚拟空间内的全方位沉浸式体验。
作为本公开中的一种可选实现方案,为了使用户尽可能舒适的浏览至少一层环绕弹幕轨道内所呈现的各个弹幕,避免用户频繁抬头或低头来浏览弹幕的情况,本公开会对至少一层环绕弹幕轨道在虚拟空间内的所处位置进行设置,以确保虚拟空间内用户浏览弹幕的舒适性。
接下来对于虚拟空间内至少一层环绕弹幕轨道的具体确定过程进行说明。如图3所示,本公开中确定虚拟空间内的至少一层环绕弹幕轨道的过程可以包括如下步骤:
S310,根据虚拟空间内用户与弹幕主体对象间的相对距离和用户高度,确定虚拟空间内的弹幕轨道位置。
考虑到用户在虚拟空间内发送的各个弹幕,均是对于虚拟空间内设定的作为主要场景内容而呈现的某一主体对象所进行的评论性互动。例如,在某一演唱会场景对应的虚拟空间内,会设定相应的主舞台和观众席位,使得各个用户在观众席位上观看主舞台上的表演内容的同时,向虚拟空间内发送对于主舞台上的表演内容进行评价的各个弹幕。
所以,为了确保虚拟空间内用户对于虚拟空间内的场景内容和各个弹幕的同步浏览,避免用户在分别浏览虚拟空间内的场景内容和弹幕时需要频繁转动头部的问题,本公开可以根据用户对于虚拟空间内显示的场景内容的浏览视线距离,来在该场景内容的上方设定相应的至少一层环绕弹幕轨道,使得该至少一层环绕弹幕轨道内处于用户视线前方的弹幕和虚拟空间内显示的场景内容能够面向用户保持在同一个垂直面内。
在本公开中,对于虚拟空间内显示的场景内容的位置,本公开可以通过虚拟空间内用于呈现该场景内容的虚拟对象的位置来表示,并将该虚拟对象作为本公开中的弹幕主体对象。例如,在某一演唱会场景对应的虚拟空间内,可以将主舞台上的演唱者作为本公开中的弹幕主体对象,以该演唱者的位置表示虚拟空间内用户观看的表演内容的位置。
然后,响应于虚拟空间内的弹幕开启指令,首先会确定出虚拟空间内的弹幕主体对象的所处位置和用户在虚拟空间内的所处位置。然后,根据虚拟空间内用户和弹幕主体对象的所处位置,可以确定出用户与弹幕主体对象间的相对距离,作为至少一层环绕弹幕轨道与该用户的环绕距离。
而且,为了避免用户频繁抬头或低头来浏览弹幕的情况,考虑到用户在视线水平方向的纵向视野范围内,可以直观浏览到弹幕,无需抬头或低头。所以,本公开还会确定出对应的用户高度,从该用户高度发出的纵向视野范围和用户与弹幕主体对象间的相对距离,可以确定出至少一层环绕弹幕轨道的纵向位置。
所以,至少一层环绕弹幕轨道与该用户的环绕距离和至少一层环绕弹幕轨道的纵向位置,可以组成该至少一层环绕弹幕轨道在虚拟空间内的弹幕轨道位置。
作为本公开中的一种可选实现方案,至少一层环绕弹幕轨道在虚拟空间内的弹幕轨道位置可以包括以用户在虚拟空间内的所处位置为轨道中心时的轨道半径基值和轨道离地高度基值。其中,该轨道半径基值可以为至少一层环绕弹幕轨道与该用户的环绕距离,表示至少一层环绕弹幕轨道中距离用户最近的一层轨道的半径。该轨道离地高度基值可以为至少一层环绕弹幕轨道的纵向位置,表示至少一层环绕弹幕轨道中最底层轨道的离地高度。
也就是说,至少一层环绕弹幕轨道中每一层环绕弹幕轨道以用户所处位置为中心时的实际轨道半径可以在该轨道半径基值的基础上进行自适应的向上浮动,使得每一层环绕弹幕轨道可以具有不同的轨道半径,而将至少一层环绕弹幕轨道呈现为每一层环绕弹幕轨道按照一定规律不断变大的效果。
S320,在弹幕轨道位置处生成至少一层环绕弹幕轨道。
在确定出虚拟空间内的弹幕轨道位置后,可以直接根据预设定的轨道层数,在该弹幕轨道位置处生成对应的至少一层环绕弹幕轨道。
作为本公开中的一种可选实现方案,至少一层环绕弹幕轨道的具体生成过程可以通过下述步骤来实现:
第一步:根据轨道半径基值以及预设定的轨道适配纵向视角和轨道层数,确定对应的单层轨道高度。
为了保证虚拟空间内用户浏览弹幕的舒适性,可以在用户的纵向视野范围内为至少一层环绕弹幕轨道设定一个适配的纵向视角,以保证通过转动眼球即可全面浏览到用户视线前方的至少一层环绕弹幕轨道。例如,本公开中的轨道适配纵向视角可以设定为高于用户视线水平方向的25度的一个仰角。
进而,如图4所示,在预设定的轨道适配纵向视角的范围内,根据轨道半径基值,可以确定出至少一层环绕弹幕轨道的整体高度。然后,按照预设定的轨道层数,将该整体高度分配给每一层环绕弹幕轨道,即可得到对应的单层轨道高度。
需要说明的是,本公开中每一层环绕弹幕轨道的单层轨道高度可以相同,也可以不同,根据弹幕呈现需求进行自适应调整,本公开对此不作限定。
而且,如图4所示,由于预设定的轨道适配纵向视角是固定的,所以至少一层环绕弹幕轨道的整体高度会随着轨道半径基值发生变化,使得单层轨道高度也会发生相应的变化。示例性的,至少一层环绕弹幕轨道的整体高度会随着轨道半径基值的变小而变小,使得单层轨道高度也会相应变小。
第二步,根据轨道离地高度基值和单层轨道高度,确定每一层环绕弹幕轨道的目标离地高度。
在确定出每一环绕弹幕轨道的单层轨道高度后,可以在该轨道离地高度基值表示的最底层轨道的离地高度的基础上,确定出每一层环绕弹幕轨道的目标离地高度。
第三步,根据轨道半径基值和每一层环绕弹幕轨道的目标离地高度,生成至少一层环绕弹幕轨道。
根据以用户在虚拟空间内的所处位置为轨道中心时的轨道半径基值,可以自适应确定出每一层环绕弹幕轨道的实际轨道半径。然后,根据每一层环绕弹幕轨道的实际轨道半径和目标离地高度,即可在虚拟空间内生成每一层环绕弹幕轨道,从而得到至少一层环绕弹幕轨道。
本公开实施例提供的技术方案,根据虚拟空间内用户与弹幕主体对象间的相对距离和用户高度,确定虚拟空间内的弹幕轨道位置,保证虚拟空间内至少一层环绕弹幕轨道的准确生成。而且,支持自适应调整每一层环绕弹幕轨道的轨道半径,确保至少一层环绕弹幕轨道的多样性。
作为本公开中的一种可选实现方案,为了确保至少一层环绕弹幕轨道内的弹幕呈现多样性,本公开可以设定任一弹幕在至少一层环绕弹幕轨道内可以滚动呈现,并在滚动呈现一段距离后取消弹幕呈现,从而避免至少一层环绕弹幕轨道内已呈现弹幕的长期占用。
对于虚拟空间内获取的任一当前弹幕,在至少一层环绕弹幕轨道内滚动呈现该当前弹幕时,为了保证弹幕的可读性,本公开可以设定至少一层环绕弹幕轨道内的弹幕呈现方向(也就是弹幕滚动方向)为逆时针方向,使得所呈现的任一弹幕可以从至少一层环绕弹幕轨道的任一位置出现后,可以沿着逆时针方向滚动,从而维持用户从左往右的阅读习惯。也可以设定至少一层环绕弹幕轨道内的弹幕呈现方向(也就是弹幕滚动方向)为顺时针方向,使得所呈现的任一弹幕可以从至少一层环绕弹幕轨道的任一位置出现后,可以沿着顺时针方向滚动。
接下来对于虚拟空间内获取的任一当前弹幕在至少一层环绕弹幕轨道内的具体呈现过程进行说明。如图5所示,本公开中任一当前弹幕在至少一层环绕弹幕轨道内的具体呈现过程可以包括如下步骤:
S510,根据至少一层环绕弹幕轨道内已呈现弹幕的显性呈现区域和隐性呈现区域以及预设定的相邻弹幕间隔,确定至少一层环绕弹幕轨道内的第一弹幕可呈现区域。
在至少一层环绕弹幕轨道内滚动呈现任一弹幕时,并不会刚开始便呈现出该弹幕的全部内容,而是从至少一层环绕弹幕轨道内的某一位置点开始,控制该弹幕内的逐个字符滚动出现,在该弹幕的首个字符滚动到另一位置处时,继续控制该弹幕内的逐个字符进行消失。
那么,对于至少一层环绕弹幕轨道内的每一已呈现弹幕而言,该已呈现弹幕可能存在部分弹幕内容已经滚动呈现在至少一层环绕弹幕轨道内,而另一部分弹幕内容可能还未在至少一层环绕弹幕轨道内呈现出来。所以,在至少一层环绕弹幕轨道内,每一已呈现弹幕可能都会存在相应的显性呈现区域和隐性呈现区域。
其中,如图6所示,每一已呈现弹幕的显性呈现区域可以为该已呈现弹幕在至少一
层环绕弹幕轨道内从开始出现到消失时所必须经过的全程呈现区域。每一已呈现弹幕的隐性呈现区域可以为该已呈现弹幕中还未在至少一层环绕弹幕轨道内开始呈现的部分弹幕内容被隐藏于该至少一层环绕弹幕轨道内的部分轨道区域,可以避免出现每一已呈现弹幕后如果出现新的弹幕时,可能会与该已呈现弹幕还未呈现的部分弹幕内容发生重叠的现象。
本公开中,在接收到虚拟空间内获取的任一当前弹幕时,首先会确定出该至少一层环绕弹幕轨道内的每一已呈现弹幕。然后,根据每一已呈现弹幕在至少一层环绕弹幕轨道内从开始呈现到消失时所处的位置区间,确定出该已呈现弹幕的显性呈现区域。而且,根据每一已呈现弹幕在至少一层环绕弹幕轨道内还未开始呈现的部分弹幕内容被隐藏时的所处位置区间,确定出该已呈现弹幕的隐性呈现区域。
然后,合并每一已呈现弹幕的显性呈现区域和隐性呈现区域,得到每一已呈现弹幕所处的合并呈现区域。然后,根据预设定的相邻弹幕间隔,可以在每一已呈现弹幕所处的合并呈现区域的前后分别增加一个该相邻弹幕间隔对应的小区域,即可得到每一已呈现弹幕对应的弹幕不可呈现区域,使得该弹幕不可呈现区域不会开始出现新的弹幕,避免至少一层环绕弹幕轨道内的弹幕重叠。进而,在至少一层环绕弹幕轨道内排除掉每一已呈现弹幕对应的弹幕不可呈现区域,即可得到至少一层环绕弹幕轨道内的第一弹幕可呈现区域,以便后续在第一弹幕可呈现区域内开始呈现当前弹幕,并避免与已呈现弹幕发生重叠。
其中,本公开中的相邻弹幕间隔可以通过间隔多个字符来确定,例如每相邻的两个弹幕之间可以间隔2个字符大小,本公开对此不作限定。
S520,在第一弹幕可呈现区域内确定当前弹幕的呈现起始点。
在确定出至少一层环绕弹幕轨道内的第一弹幕可呈现区域后,可以随机确定出处于该第一弹幕可呈现区域内的一个位置点,作为当前弹幕的呈现起始点,以便后续从该呈现起始点开始滚动呈现当前弹幕。
S530,根据呈现起始点和虚拟空间内已定的弹幕呈现长度,确定当前弹幕的呈现结束点。
为了避免已呈现弹幕在至少一层环绕弹幕轨道内的长期呈现占用,而导致新的弹幕由于缺少呈现位置而呈现失败,本公开会设定一个弹幕呈现长度。该弹幕呈现程度可以为任一弹幕在至少一层环绕弹幕轨道内从开始呈现到消失时所经过的轨道长度。
作为本公开中的一种可选实现方案,为了确保用户对于至少一层环绕弹幕轨道内已呈现弹幕的高效浏览,可以根据用户在虚拟空间内的横向视野范围,确定至少一层环绕弹幕轨道处于该横向视野范围内的目标轨道弧长。然后,将该目标轨道弧长作为本公开中的弹幕呈现长度,在弹幕呈现方向为逆时针方向时,可以确保某一弹幕从用户的右侧视野开始呈现,并沿着所在轨道的逆时针方向滚动时,能够经过用户在虚拟空间内的整个横向视野范围,然后在用户的左侧视野消失,从而使得该弹幕完全呈现在用户视野前方,提升虚拟空间内的弹幕呈现有效性。所以,本公开中虚拟空间内已定的弹幕呈现长
度与虚拟空间内的用户横向视野范围正相关。
在确定出当前弹幕的呈现起始点后,可以在该呈现起始点所在轨道上确定出与该呈现起始点间隔该弹幕呈现长度的一个位置点,作为当前弹幕的呈现结束点。
其中,该呈现结束点可以为沿着呈现起始点所在轨道的逆时针或顺时针方向,与该呈现起始点相隔已定的弹幕呈现长度的位置点。
S540,按照虚拟空间内已定的弹幕滚动速度,从呈现起始点处开始沿着所在轨道的逆时针或顺时针方向滚动呈现当前弹幕。
为了确保至少一层环绕弹幕轨道内已呈现弹幕滚动呈现的规律性,本公开可以预先设定一个弹幕滚动速度,使得至少一层环绕弹幕轨道内的每一已呈现弹幕能够保持相同的滚动速率,避免发生弹幕重叠。
作为本公开中的一种可选实现方案,考虑到不同类型的虚拟空间的互动程度不同,那么不同虚拟空间内可呈现的弹幕量也不相同。所以,为了确保虚拟空间内弹幕呈现的适配性,本公开可以根据虚拟空间的类型,来确定该虚拟空间内的弹幕滚动速度。例如,对于互动程度强的虚拟空间,例如虚拟购物间等,会存在大量弹幕需求,所以可以将该虚拟空间内的弹幕滚动速度设置较大,以使弹幕滚动速率较快而呈现更多的弹幕。而对于互动程度较低的虚拟空间,例如虚拟读书会等,弹幕需求较小,所以可以将该虚拟空间内的弹幕滚动速度设置较小,以使弹幕滚动速率较慢而使用户更为准确的阅读各个弹幕。
在确定出当前弹幕的呈现起始点后,可以按照虚拟空间内已定的弹幕滚动速度,从当前弹幕的呈现起始点开始不断出现当前弹幕的弹幕内容。并且,控制当前弹幕已呈现出的部分弹幕内容沿着该呈现起始点所在轨道的逆时针或顺时针方向,向当前弹幕的呈现结束点进行滚动,从而完成当前弹幕从呈现起始点开始到呈现结束点之间的滚动呈现。
S550,在呈现结束点处取消呈现当前弹幕已滚动至呈现结束点时的弹幕内容。
在当前弹幕的首个字符滚动到当前弹幕的呈现结束点后,在该呈现结束点出开始不断取消呈现当前弹幕已滚动至该呈现结束点时的各个字符内容,从而完成当前弹幕在完成已定的弹幕呈现长度下的滚动呈现,避免长期占用至少一层环绕弹幕轨道。
S560,在当前弹幕的呈现起始点显示第一弹幕遮罩,以在呈现起始点处采用第一特效来呈现当前弹幕。
为了避免由于至少一层环绕弹幕轨道内任一弹幕在呈现起始点的突然出现而打断用户对于弹幕的阅读,本公开会在当前弹幕的呈现起始点上显示第一弹幕遮罩。该第一弹幕遮罩可以将呈现起始点的像素透明度设定最高(例如完全透明),然后沿着所在轨道的逆时针方向开始不断降低各个像素透明度,直至完成第一弹幕遮罩的遮罩宽度后将像素透明度降至最低(例如完全不透明)。示例性的,第一弹幕遮罩的遮罩宽度可以为1个字符宽度,本公开对此不作限定。
那么,在当前弹幕的呈现起始点显示第一弹幕遮罩后,可以使该呈现起始点滚动出现的每个字符都会从完全透明逐渐变为完全不透明,而在该呈现起始点采用第一特效来
呈现当前弹幕,以提前提示用户当前弹幕开始呈现。该第一特效可以为渐出特效。
S570,在当前弹幕的呈现结束点显示第二弹幕遮罩,以在呈现结束点处采用第二特效来取消当前弹幕的呈现。
为了避免由于至少一层环绕弹幕轨道内任一弹幕在呈现结束点的突然消失而打断用户对于弹幕的阅读,本公开会在当前弹幕的呈现结束点上显示第二弹幕遮罩。该第二弹幕遮罩可以将与该呈现结束点相隔第二弹幕遮罩的遮罩宽度的位置点的像素透明度设定最低(例如完全不透明),然后沿着所在轨道的逆时针或顺时针方向开始不断增高各个像素透明度,直至到达该呈现结束点后将像素透明度降至最高(例如完全透明)。示例性的,第二弹幕遮罩的遮罩宽度可以为5个字符宽度,本公开对此不作限定。
那么,在当前弹幕的呈现结束点显示第二弹幕遮罩后,可以使沿着所在轨道的逆时针或顺时针方向,从第二弹幕遮罩的遮罩宽度对应的位置点滚动至该呈现结束点的每个字符都会从完全不透明逐渐变为完全透明,而在该呈现结束点采用渐隐特效来取消当前弹幕的呈现,以提前提示用户当前弹幕开始消失。
S580,控制呈现起始点跟随当前弹幕的末尾字符而滚动。
在当前弹幕的呈现起始点呈现出当前弹幕的最后一个字符,也就是本公开中的末尾字符后,不会在呈现新的字符。所以,为了避免当前弹幕在至少一层环绕弹幕轨道内的额外占用,如图6所示,本公开会控制当前弹幕的呈现起始点跟随当前弹幕的末尾字符而滚动,从而随着当前弹幕滚动来不断缩小该呈现起始点到呈现结束点之间表示的弹幕不可呈现区域,为新的弹幕留出相应的弹幕可呈现区域。
本公开实施例提供的技术方案,通过至少一层环绕弹幕轨道内已呈现弹幕的显性呈现区域和隐性呈现区域以及预设定的相邻弹幕间隔,确定至少一层环绕弹幕轨道内的第一弹幕可呈现区域,来确定当前弹幕的呈现起始点和呈现结束点,避免至少一层环绕弹幕轨道内的弹幕重叠。而且,在当前弹幕的呈现起始点和呈现结束点显示相应的弹幕遮罩,以采用第一特效来呈现当前弹幕,采用第二特效来取消当前弹幕的呈现,增强虚拟空间内弹幕呈现的互动多样性。
根据本公开中的一个或多个实施例,考虑到虚拟空间内可能存在不同发起对象的弹幕,例如用户自身发起的弹幕、其他用户发起的弹幕或者虚拟空间自带的氛围弹幕等。而在虚拟空间内,用户对于不同发起对象的弹幕的阅读需求不同,尽可能将阅读需求强的弹幕呈现在用户视线前方,而将氛围弹幕等阅读需求低的弹幕呈现在用户后方。所以,本公开可以在至少一层环绕弹幕轨道内划定多个弹幕生产区域,并为不同的弹幕生产区域设定不同的弹幕生产权重,以在不同弹幕生产区域内开始呈现不同类型的弹幕。
接下来,基于至少一层环绕弹幕轨道内划定的多个弹幕生产区域对当前弹幕在至少一层环绕弹幕轨道内的具体呈现过程进行说明。如图7所示,该方法可以包括如下步骤:
S710,响应于虚拟空间内的弹幕开启指令,确定虚拟空间内的至少一层环绕弹幕轨道。
S720,根据虚拟空间内的用户头部朝向、至少一层环绕弹幕轨道内的弹幕呈现方向和虚拟空间内已定的弹幕呈现长度,在至少一层环绕弹幕轨道内划定多个弹幕生产区域。
为了将用户重点关注的部分弹幕呈现在至少一层环绕弹幕轨道中处于用户视线前方视野范围内的轨道区间内,首先需要关注虚拟空间内的用户头朝向,以便确定至少一层环绕弹幕轨道中处于用户视线前方视野范围内的轨道区间。
而且,以至少一层环绕弹幕轨道内的弹幕呈现方向是沿着轨道的逆时针方向为例,那么弹幕通常需要从位于用户右前方的至少一层环绕弹幕轨道内开始呈现,才能滚动呈现到用户视线前方,使得用户能够准确阅读到。因此,本公开可以设定至少一层环绕弹幕轨道内位于用户右前方的部分区域需要频繁生成相应的弹幕,使得大量弹幕能够滚动呈现在用户视线前方。
而对于至少一层环绕弹幕轨道内位于用户右前方的部分区域所呈现的弹幕是否能够滚动到用户视线前方,需要借助虚拟空间内已定的弹幕呈现长度才能确定。其中,本公开中虚拟空间内已定的弹幕呈现长度与虚拟空间内的用户横向视野范围正相关。
由上述内容可知,为了实现至少一层环绕弹幕轨道内的弹幕可读性,尽可能使至少一层环绕弹幕轨道内的已呈现弹幕能够滚动经过用户视线前方,本公开可以根据虚拟空间内的用户头部朝向,将至少一层环绕弹幕轨道处于用户正前方范围内的轨道区域划分为一个极低权重的弹幕生产区域,使得该弹幕生产区域尽可能少的开始呈现弹幕,而几乎全部呈现从其他弹幕生产区域滚动过来的弹幕。
而至少一层环绕弹幕轨道内的弹幕呈现方向沿着轨道的逆时针方向时,可以确定出至少一层环绕弹幕轨道内的处于用户正前方的视线中心点。然后,沿着轨道的顺时针方向,在与该视线中心点间隔该弹幕呈现长度的一半值的位置点处,划分出一个该位置点所在的预设轨道长度(例如40度对应的弧长)的部分轨道区域,作为一个最高权重的弹幕生产区域,使得该弹幕生产区域尽可能多的开始呈现弹幕,并使所呈现的弹幕几乎全部能够滚动到用户视线前方来呈现。
在至少一层环绕弹幕轨道内与该最高权重的弹幕生产区域的左右两边也可以分别划定一个低于最高权重而高于极低权重的弹幕生产区域。而且,可以将剩余的轨道区域划定为一个只高于极低权重而低于其他权重的弹幕生产区域,该弹幕生产区域可以开始呈现一些氛围弹幕、预制弹幕等用户不太关注的弹幕。
示例性的,如图8所示,以弹幕呈现方向为沿着虽在轨道的逆时针方向为例,由于虚拟空间内已定的弹幕呈现长度与用户横向视野范围正相关。所以,以用户横向视野范围为87度为例,在用户横向视野范围最右边以外,可以划定一个30度弧长对应的高权重下的第一弹幕生产区域。然后,沿着轨道逆时针方向紧挨着该高权重下的第一弹幕生产区域,会划定一个30度弧长对应的中权重下的第二弹幕生产区域。然后,沿着轨道逆时针方向紧挨着该中权重下的第二弹幕生产区域,会划定一个40度弧长对应的极低权重下的第三弹幕生产区域。然后,至少一层环绕弹幕轨道内的剩余区域可以划定为低权重下的第四弹幕生产区域。
此外,考虑到虚拟空间内用户头部可能会进行相应的转动,使得用户头部朝向发生变动。所以,本公开可以响应于用户头部的转动操作,更新至少一层环绕弹幕轨道内划定的多个弹幕生产区域。
也就是说,在检测到用户头部的转动操作时,需要对至少一层环绕弹幕轨道内划定的多个弹幕生产区域进行更新,以使至少一层环绕弹幕轨道内的大部分已呈现弹幕仍能够在用户视线前方呈现。
作为本公开中的一种可选实现方案,为了保证至少一层环绕弹幕轨道内划定的多个弹幕生产区域的弹幕呈现稳定性,本公开并不会实时更新至少一层环绕弹幕轨道内划定的多个弹幕生产区域,而是设定一个延时。在用户头部转动经过该预设延时后,再根据转动后的用户头部朝向、至少一层环绕弹幕轨道内的弹幕呈现方向和已定的弹幕呈现长度,更新至少一层环绕弹幕轨道内划定的多个弹幕生产区域,确保多个弹幕生产区域的稳定性。
S730,根据当前弹幕的发起对象和每一弹幕生产区域内的已呈现弹幕,确定当前弹幕的适配弹幕生产区域和适配弹幕生产区域内的第二弹幕可呈现区域。
对于虚拟空间内获取的任一当前弹幕,首先会确定该当前弹幕的发起对象,不同发起对象的弹幕受到用户的关注程度不同,那么在至少一层环绕弹幕轨道内的呈现位置也就不同。所以,不同发起对象的弹幕需要适配不同的弹幕生产区域,以在至少一层环绕弹幕轨道内的不同位置处进行滚动呈现。
例如,对于用户自身发起的弹幕,关注程度较高,所以需要适配高权重下的弹幕生产区域,以使该弹幕能够滚动呈现在用户视线前方。而对于虚拟空间内的氛围弹幕、预制弹幕等,用户关注程度较低,所以需要适配低权重下的弹幕生产区域,以是该弹幕滚动呈现在用户左侧方或视线后方。
而且,如果某一弹幕生产区域内已呈现弹幕数量过多,不再适合呈现当前弹幕,那么需要重新向下一权重调整该当前弹幕的适配弹幕生产区域。
所以,根据当前弹幕的发起对象确定当前弹幕最为适配的一个弹幕生产区域。然后,根据该弹幕生产区域内每一已呈现弹幕的显性呈现区域和隐性呈现区域以及预设定的相邻弹幕间隔,判断该弹幕生产区域内是否存在空余的弹幕可呈现区域。如果存在空余的弹幕可呈现区域,则将该弹幕生产区域作为当前弹幕的适配弹幕生产区域。
而如果该弹幕生产区域内不存在空余的弹幕可呈现区域,那么继续判断该弹幕生产区域下一权重下的弹幕生产区域内是否存在空余的弹幕可呈现区域,若是则将该下一权重下的弹幕生产区域作为当前弹幕的适配弹幕生产区域。
然后,根据该适配弹幕生产区域内每一已呈现弹幕的显性呈现区域和隐性呈现区域以及预设定的相邻弹幕间隔,可以确定出该适配弹幕生产区域内的第二弹幕可呈现区域。
S740,在第二弹幕可呈现区域内确定当前弹幕的呈现起始点。
在确定出当前弹幕的适配弹幕生产区域内的第二弹幕可呈现区域后,可以随机确定出处于该第二弹幕可呈现区域内的一个位置点,作为当前弹幕的呈现起始点,以便后续
从该呈现起始点开始滚动呈现当前弹幕。
S750,根据呈现起始点、弹幕呈现方向和弹幕呈现长度,确定当前弹幕的呈现结束点。
在确定出当前弹幕的呈现起始点后,可以在该呈现起始点所在轨道上沿着弹幕呈现方向,确定出与该呈现起始点间隔该弹幕呈现长度的一个位置点,作为当前弹幕的呈现结束点。
S760,从呈现起始点处开始沿着弹幕呈现方向滚动呈现当前弹幕。
在确定出当前弹幕的呈现起始点后,可以从当前弹幕的呈现起始点开始不断出现当前弹幕的弹幕内容。并且,控制当前弹幕已呈现出的部分弹幕内容沿着该呈现起始点所在轨道的逆时针或顺时针方向,向当前弹幕的呈现结束点进行滚动,从而完成当前弹幕从呈现起始点开始到呈现结束点之间的滚动呈现。
S770,在呈现结束点处取消呈现当前弹幕已滚动至呈现结束点时的弹幕内容。
在当前弹幕的首个字符滚动到当前弹幕的呈现结束点后,在该呈现结束点出开始不断取消呈现当前弹幕已滚动至该呈现结束点时的各个字符内容,从而完成当前弹幕在完成已定的弹幕呈现长度下的滚动呈现,避免长期占用至少一层环绕弹幕轨道。
本公开实施例提供的技术方案,通过在至少一层环绕弹幕轨道内划定多个弹幕生产区域,并根据当前弹幕的适配弹幕生产区域内的第二弹幕可呈现区域,确定当前弹幕的呈现起始点和呈现结束点,使得大部分弹幕尽可能呈现在用户视线前方,保证虚拟空间内的弹幕可读性。
图9为本公开实施例提供的一种弹幕呈现装置的示意图,该弹幕呈现装置900可以配置于XR设备中,该弹幕呈现装置900可以包括:
弹幕轨道确定模块910,用于响应于虚拟空间内的弹幕开启指令,确定所述虚拟空间内的至少一层环绕弹幕轨道;
弹幕呈现模块920,用于响应于所述虚拟空间内获取的任一当前弹幕,根据所述至少一层环绕弹幕轨道内的已呈现弹幕,确定所述当前弹幕在所述至少一层环绕弹幕轨道内的呈现位置,以在所述呈现位置处呈现所述当前弹幕。
在一些可实现方式中,弹幕轨道确定模块910,可以包括:
轨道位置确定单元,用于根据所述虚拟空间内用户与弹幕主体对象间的相对距离和用户高度,确定所述虚拟空间内的弹幕轨道位置;
弹幕轨道生成单元,用于在所述弹幕轨道位置处生成至少一层环绕弹幕轨道。
在一些可实现方式中,所述弹幕轨道位置包括以所述用户在所述虚拟空间内的所处位置为轨道中心时的轨道半径基值和轨道离地高度基值。
在一些可实现方式中,弹幕轨道生成单元,可以具体用于:
根据所述轨道半径基值以及预设定的轨道适配纵向视角和轨道层数,确定对应的单层轨道高度;
根据所述轨道离地高度基值和所述单层轨道高度,确定每一层环绕弹幕轨道的目标离地高度;
根据所述轨道半径基值和所述每一层环绕弹幕轨道的目标离地高度,生成所述至少一层环绕弹幕轨道。
在一些可实现方式中,弹幕呈现模块920,可以具体用于:
根据所述至少一层环绕弹幕轨道内已呈现弹幕的显性呈现区域和隐性呈现区域以及预设定的相邻弹幕间隔,确定所述至少一层环绕弹幕轨道内的第一弹幕可呈现区域;
在所述第一弹幕可呈现区域内确定所述当前弹幕的呈现起始点;
根据所述呈现起始点和所述虚拟空间内已定的弹幕呈现长度,确定所述当前弹幕的呈现结束点。
在一些可实现方式中,所述呈现结束点为沿着所述呈现起始点所在轨道的逆时针或顺时针方向,与所述呈现起始点相隔所述弹幕呈现长度的位置点。
在一些可实现方式中,弹幕呈现模块920,还可以具体用于:
按照所述虚拟空间内已定的弹幕滚动速度,从所述呈现起始点处开始沿着所在轨道的逆时针或顺时针方向滚动呈现所述当前弹幕;
在所述呈现结束点处取消呈现所述当前弹幕已滚动至所述呈现结束点时的弹幕内容。
在一些可实现方式中,弹幕呈现装置900,还可以包括遮罩显示模块。该遮罩显示模块,可以用于:
在所述当前弹幕的呈现起始点显示第一弹幕遮罩,以在所述呈现起始点处采用第一特效来呈现所述当前弹幕;
在所述当前弹幕的呈现结束点显示第二弹幕遮罩,以在所述呈现结束点处采用第二特效来取消所述当前弹幕的呈现。
在一些可实现方式中,弹幕呈现装置900,还可以包括:
起始点跟随模块,用于控制所述呈现起始点跟随所述当前弹幕的末尾字符而滚动。
在一些可实现方式中,弹幕呈现装置900,还可以包括:
弹幕生产区域划定模块,用于根据所述虚拟空间内的用户头部朝向、所述至少一层环绕弹幕轨道内的弹幕呈现方向和所述虚拟空间内已定的弹幕呈现长度,在所述至少一层环绕弹幕轨道内划定多个弹幕生产区域,不同所述弹幕生产区域的弹幕生产权重不同。
在一些可实现方式中,弹幕呈现模块920,还可以具体用于:
根据所述当前弹幕的发起对象和每一所述弹幕生产区域内的已呈现弹幕,确定所述当前弹幕的适配弹幕生产区域和所述适配弹幕生产区域内的第二弹幕可呈现区域;
在所述第二弹幕可呈现区域内确定所述当前弹幕的呈现起始点;
根据所述呈现起始点、所述弹幕呈现方向和所述弹幕呈现长度,确定所述当前弹幕的呈现结束点;
从所述呈现起始点处开始沿着所述弹幕呈现方向滚动呈现所述当前弹幕;
在所述呈现结束点处取消呈现所述当前弹幕已滚动至所述呈现结束点时的弹幕内容。
在一些可实现方式中,弹幕呈现装置900,还可以包括:
弹幕生产区域更新模块,用于响应于所述用户头部的转动操作,在预设延时后更新所述至少一层环绕弹幕轨道内划定的多个所述弹幕生产区域。
在一些可实现方式中,所述虚拟空间内已定的弹幕呈现长度与所述虚拟空间内的用户横向视野范围正相关。
本公开实施例中,如果在虚拟空间内接收到弹幕开启指令,首先确定虚拟空间内的至少一层环绕弹幕轨道。然后,对于虚拟空间内获取的任一当前弹幕,根据至少一层环绕弹幕轨道内的已呈现弹幕,确定当前弹幕在至少一层环绕弹幕轨道内的呈现位置,以在该呈现位置处呈现当前弹幕,从而实现虚拟空间内的弹幕环绕呈现,便于用户在虚拟空间内全方位的浏览弹幕,增强虚拟空间内弹幕呈现的多样性和互动趣味性,提升用户在虚拟空间内的全方位沉浸式体验。
应理解的是,该装置实施例与本公开中的方法实施例可以相互对应,类似的描述可以参照本公开中的方法实施例。为避免重复,此处不再赘述。
具体地,图9所示的装置900可以执行本公开提供的任一方法实施例,并且图9所示的装置900中的各个模块的前述和其它操作和/或功能分别为了实现上述方法实施例的相应流程,为了简洁,在此不再赘述。
图10是本公开实施例(实施例一)提供的一种弹幕显示方法的流程图。本公开实施例可适用于人机交互场景,该弹幕显示方法可由弹幕显示装置来执行。该装置可由硬件和/或软件组成,并可集成于电子设备中。在本公开实施例中,该电子设备为VR设备、AR设备、MR设备等XR设备,还可以为手机、电脑等设备,本实施例以XR设备为例进行说明。如图10所示,该弹幕显示方法包括以下步骤。
S101、在虚拟空间中生成至少一个环形轨道。
该环形轨道用于显示弹幕,弹幕是指一种叠加显示在应用的UI上的评论性字幕,弹幕主要包括文本信息,该文本信息的字体颜色、字体大小均可灵活配置。可选地,弹幕还包括图像信息,如表情图像。可选地,弹幕还包括互动选项,用户可以对弹幕中的互动选项实施交互操作,来表达赞同或者不赞同该弹幕。
该环形轨道可以为圆形轨道或者椭圆形轨道,还可以为其他形状的闭合轨道。当虚拟空间中设置多个环形轨道时,该多个环形轨道为半径不同的同心轨道。
该虚拟空间可以为2D空间,也可以为3D的扩展现实空间。当虚拟空间为扩展现实空间时,多个环形轨道的半径可以相同也可以不同,当多个环形轨道的半径相同时,多个环形轨道在与半径所在平面垂直的方向上的高度不同,从而能够避免多个轨道上的弹幕相同。当多个环形轨道的半径不同时,多个环形轨道在与半径所在平面垂直的方向上的高度可以相同,也可以不相同。例如,环形轨道的半径所在平面为xz平面,则与半径所在平面垂直的方向为y轴方向。
环形轨道在虚拟空间中的位置可以为固定位置,也可以由用户灵活设置。设备可以提供一个默认位置,如果默认位置不符合用户需求,用户可以对该默认位置进行修改。
以圆形轨道为例,圆形轨道在虚拟空间中的位置包括圆心坐标和半径,可以提供圆形轨道的设置入口,用户通过圆形轨道的设置入口打开设置界面,对圆形坐标和/或半径进行调整。
S102、获取弹幕的显示信息,弹幕的显示信息包括弹幕的内容、出生的轨道信息、在轨道上占据的空间信息和在轨道上的消失位置信息。
设备中有些应用具有弹幕功能,用户可以选择开启或者关闭弹幕功能。当用户开启应用的弹幕功能后,在应用运行过程中,弹幕显示在应用的用户界面(User Interface,UI)上。该应用可以是应用软件,例如视频app、游戏app、直播app、音乐播放app等,这些应用软件通常支持弹幕功能,例如,在视频app中,用户在观看视频的过程中,可以对视频内容进行评论、讨论。该应用还可以是宿主应用程序中的小程序或应用模块,也可以是某个网页平台,本公开实施例不对此进行限制。
应用中通常有很多弹幕,这些弹幕可以分布在该至少一个环形轨道上,并在环形轨道上移动,即按照环形轨道的轨迹进行移动。
弹幕的内容可以由以下信息中的一种或者多种组成:文字、标点符号和表情符号。
弹幕出生的轨道信息,是指显示弹幕的轨道的信息,弹幕出生的轨道信息用于确定弹幕在哪个轨道上显示。轨道信息包括轨道的标识,可选的,还可以包括轨道的位置信息,例如,轨道的圆心位置和半径。
弹幕在轨道上占据的空间信息可以为弹幕在轨道上占据的角度区间,例如,该角度区间为10-20度,30-45度等,其中,该角度区间的上限为弹幕在轨道上的出生角度,该角度区间的长度为弹幕的长度,弹幕在轨道上的出生角度加上弹幕的长度,可以得到弹幕在轨道上占据的角度区间,例如,弹幕的出生角度为10度,弹幕长度为10度,则弹幕在轨道上的占据的角度区间的上限为10-10=20度,则弹幕在轨道上的占据的角度区间为10-20度。因此,弹幕在轨道上占据的空间信息还可以为弹幕的出生位置和弹幕长度,弹幕的出生位置即弹幕在轨道上的出生角度。
弹幕在轨道上的消失位置信息可以为弹幕在轨道上的消失角度,例如,弹幕在轨道的10度位置出生,在120度的位置消失,则弹幕在轨道上的消失角度为120度。
本公开实施例中,弹幕可以是已生成弹幕,还可以是新生成的弹幕,新生成的弹幕也称为新弹幕。新生成的弹幕是指当前时刻之前未在轨道上显示过的弹幕,相应的,已生成弹幕可以理解在当前时刻之前已经至少显示过一次的弹幕。
可以理解,应用中的弹幕通常会多次显示,在生成一个新弹幕后,弹幕显示一次,按照预设的策略,弹幕可以在预设时长后再次显示,或者,在用户下次打开应用时,已生成弹幕会再次显示,用户每次打开应用,可能会生成新弹幕,也可能没有新弹幕生成,只显示已生成弹幕。
已生成弹幕的信息可以存储在服务器中,已生成弹幕的信息包括但不限于弹幕的显
示信息,还可以包括弹幕其他信息,例如,弹幕的生成时间、弹幕的发送用户信息、弹幕的已显示次数等。XR设备在开启弹幕功能后,向服务器请求已生成弹幕的显示信息,服务器向XR设备返回已生成弹幕的显示信息。
新弹幕的显示信息需要实时生成,并发送给服务器进行存储,示例性的,需要确定新弹幕的出生轨道、出生位置和消失位置等。
可以按照轨道对弹幕的信息进行维护,每条轨道按照弹幕从出生角度的顺序对轨道上弹幕的弹幕进行维护。
S103、根据弹幕的显示信息,在环形轨道上显示弹幕,弹幕在环形轨道上移动。
弹幕的显示信息包括弹幕的内容、出生的轨道信息、在轨道上占据的空间信息和在轨道上的消失位置信息,根据弹幕的出生轨道和占据的空间信息,控制弹幕的出生轨道上该占据的空间信息对应的出生位置上出生,弹幕出生后在环形轨道上移动,移动到消失位置信息对应的消失位置时,弹幕消失,弹幕从出生到消失为弹幕的一个生命周期。
图11为弹幕在环形轨道上显示的一种示意图,如图11所示,在扩展实现空间中有显示有4个环形轨道,4个环形轨道为同心设置,半径不同的圆环。
示例性的,环形轨道上的弹幕的移动速度可以采用如下几种方式。
方式一,各环形轨道上的弹幕的移动速度相同,即各轨道上的弹幕之间是相对静止的。
可选的,环形轨道上的弹幕的互不重叠。由于弹幕的移动速度相同,只要两个弹幕的出生位置不重叠,那么在弹幕的生命周期内弹幕就不会发生重叠。
方式二,同一环形轨道上的弹幕的移动速度相同,不同环形轨道上的弹幕的移动速度不同。
例如,有两个环形轨道,环形轨道1上的弹幕的移动速度大于环形轨道2上的弹幕的移动速度。
方式三、同一环形轨道上的弹幕的移动速度不相同。
可选的,环形轨道上的弹幕分为主态弹幕和客态弹幕,主态弹幕为主视角用户发送的弹幕,客态弹幕为非主视角用户发送的弹幕。
其中,主视角用户可以理解为当前使用该应用的用户,非主视角用户即除当前使用该应用的用户外的其他用户。以视频应用为例,第一用户打开应用并开启了弹幕功能,则第一用户为主视角用户,在第一用户看到的画面中第一用户发送的弹幕称为主态弹幕,视频应用中还有其他用户发送的弹幕,其他用户发送的弹幕称为客态弹幕。
主态弹幕和客态弹幕区别显示,以便于用户区别哪些弹幕是自己发送的,哪些弹幕是其他用户发送的。
主态弹幕和客态弹幕区别显示包括但不限于:主态弹幕高亮显示,客态弹幕正常显示;主态弹幕的字体、颜色和大小中的至少一个与客态弹幕不同;主态弹幕具有特效,客态弹幕正常显示。
参照图11所示的轨道上的弹幕,主态弹幕的外围显示有一个光圈,该光圈可以理解
为特效,客态弹幕的外围没有光圈。
可选的,主态弹幕的特效还可以为周期性闪烁特效。
由于环形轨道为弯曲的轨道,因此,将弹幕显示在弯曲的轨道时,弹幕也需要弯曲。普通图像的渲染网格由两个三角形拼成,无法产生弯曲,因此需要把它在水平方向上进行细分,构建新的网格数据,再按弧度去修改顶点的位置,形成弯曲的网格,通过该弯曲网格实现弹幕的弯曲。
图12为弹幕对应的网格的弯曲过程示意图,如图12所示,图12(a)所示图像为普通图像的渲染网格的示意图,图12(b)所示为对普通图像的渲染网格在水平方向上细分后的示意图,图12(c)所示为对细分形成的新网格的顶点示意图,图12(d)为按照弹幕的出生位置的弧度对新网格的顶点修改后形成的弯曲网格的示意图。
参照图11所示图像中的坐标系,修改顶点的坐标即修改了x轴和y轴的坐标,z轴坐标保持不变。相应的,图12中所示的水平方向是指xy平面所在的方向。
本实施例中,在虚拟空间中生成至少一个环形轨道,获取弹幕的显示信息,所述弹幕的显示信息包括弹幕的内容、出生的轨道信息、在轨道上占据的空间信息和在轨道上的消失位置信息;根据所述弹幕的显示信息,在所述环形轨道上显示所述弹幕,该弹幕在环形轨道上移动。通过环形轨道展示弹幕,丰富了弹幕的显示方式,提高了用户体验。
在实施例一的基础上,本公开实施例二提供一种新弹幕的显示信息的获取方法,图13为本公开实施例二提供的一种新弹幕的显示信息的获取方法的流程图,如图13所示,本实施例提供的方法包括以下步骤。
S201、根据新弹幕的内容获取新弹幕的长度。
新弹幕的内容由用户输入,用户可以通过语音、键盘、手势、触摸方式等方式输入新弹幕的内容。新弹幕的内容可以由以下信息中的一种或者多种组成:文字、标点符号和表情符号。
新弹幕的长度即新弹幕在轨道上占据的角度区间的大小,例如,新弹幕的长度为10度或者20度。
S202、根据新弹幕的长度和应用中已生成弹幕的显示信息,确定新弹幕的出生轨道和出生位置。
在确定新弹幕的出生位置时,需要获取应用中已生成弹幕的显示信息,XR设备从服务器中请求已生成弹幕的显示信息。该已生成弹幕的显示信息包括弹幕的内容、出生的轨道信息、在轨道上占据的空间信息和在轨道上的消失位置信息。
示例性的,可以通过如下几种方式确定新弹幕的出生轨道和出生位置。
实现方式一,根据应用中已生成弹幕的显示信息,确定各轨道中相邻的已生成弹幕之间的区间大小。根据新弹幕的长度和各轨道中相邻的已生成弹幕之间的区间大小,确定新弹幕可用的空闲区间,该空闲区间大于或等于新弹幕的长度。从新弹幕可用的空闲区间中确定一个目标空闲区间,根据新弹幕的长度从目标空闲区间中确定一个位置作为
新弹幕的出生位置,目标空间区间所在的轨道为新弹幕的出生轨道。
在查找空闲区间时,分别对每条轨道上的弹幕进行访问,在对每条轨道上的弹幕的显示信息进行访问时,按照角度顺序,根据两条相邻的已生成弹幕在轨道上占据的空间信息,确定该相邻的已生成弹幕之间的区间大小,具体,采用占据的角度区间较大的弹幕的下限角度减去角度区间较小的弹幕的上限得到该相邻的已生成弹幕之间的区间大小。例如,两条相邻已生成弹幕占据的角度区间分别为10-28度、45-50度,则相邻的已生成弹幕之间的区间大小等于45-28=17度。又如,两条相邻已生成弹幕占据的角度区间分别为123-130度、135-143度,则相邻的已生成弹幕之间的区间大小等于135-130=5度。
在确定两条相邻的已生成弹幕之间的区间大小后,比较该区间大小于新弹幕的长度,一种实现方式中,如果该空闲区间大于或等于新弹幕的长度,则确定该空闲区间为可用的空闲区间,如果该空闲区间小于新弹幕的长度,则确定该空闲区间为不可用的空闲区间。以上述例子为例,假设新弹幕长度为10度,一个空闲区间的大小为17度,另一个空闲区间的大小为5度,则空闲区间17度为可用的空闲区间,空闲区间5度为不可用的空闲区间。
另一种实现方式中,如果该空闲区间比新弹幕的长度大于或等于预设值,则确定该空闲区间为可用的空闲区间,如果该空闲区间大于或等于新弹幕的长度,但是该空闲区间与新弹幕的长度的差值小于该预设值,则确定该空闲区间为不可用的空闲区间。示例性的,预设值为2度或者5度,即该空闲区间比新弹幕的长度大于2度或者5度,才可作为可用的空闲区间。
新弹幕可能没有可用的空闲区间,也看能具有一个或者多个可用的空闲区间。
由于弹幕是动态变化的,有些弹幕会消失,也会出现新的弹幕,因此,空闲区间的大小也是动态变化的,当新弹幕没有可用的空闲区间时,重新开始确定相邻弹幕之间的空闲区间。或者,删除一个或者多个已有弹幕,得到可用的空闲区间。例如,根据已生成弹幕的生成时间,删除生成时间距离当前时间最远的已生成弹幕,删除弹幕之后,会产生可能的空闲区间。
当弹幕具有一个可用的空闲区间时,将该可用的空闲区间确定为目标空闲区间。
当弹幕具有多个可用的空闲区间时,从该多个可用的空闲区间中选择一个作为目标空闲区间,可以随机从的该多个可用的空闲区间中选择一个区间,也可以按照预设的规则从该多个可用的空闲区间中选择一个区间。例如,从该多个可用的空闲区间中选择一个区间空闲区间最大或者最小的空闲区间作为目标空闲区间,或者,从该多个可用的空间区间中选择一个与新弹幕的长度最接近的空闲区间作为目标空闲区间。
在确定目标空闲区间后,根据新弹幕的长度从目标空闲区间中确定一个位置作为新弹幕的出生位置,新弹幕需要全部位于该目标空闲区间中。假设目标空闲区间为28-45度,新弹幕的长度为10度,则可以从28-35度中选择一个角度作为新弹幕的出生角度。
实现方式二,获取新弹幕的出生区间,根据新弹幕的长度、新弹幕的出生区间以及应用中已生成弹幕的显示信息,确定新弹幕的出生轨道和出生位置。
该方式中,限定了新弹幕的出生区间,新弹幕只能在该角度区间内出生,弹幕在固定的角度区间内出生,便于用户能够快速、准确的发现新出生的弹幕,避免用户错过新弹幕。
一种可选方式中,新弹幕的出生区间为用户设定的。在弹幕功能中提供了新弹幕的出生区间的设置入口,用户通过该设置入口进入设置页面,在设置页面中可以选择新弹幕的出生区间。从而能够满足不同用户对于弹幕出生区间的需求。
另一种可选方式中,新弹幕的出生区间根据新弹幕的发送用户信息确定。
示例性的,将轨道划分为主态区间和客态区间,该主态区间为主视角用户发送的弹幕的出生区间,客态区间为非主视角用户发送的弹幕的出生区间。当新弹幕的发送用户为主视角用户时,确定新弹幕的出生区间为主态区间;当新弹幕的发送用户为非主视角用户时,确定新弹幕的出生区间为客态区间。
主态区间和客态区间没有重叠,示例性的,主态区间为0-90度,客态区间为21-360度。或者,主态区间为30-150度,剩余区间为客态区间。
可选的,主态区间包括多个子区间,各子区间的权重不同,和/或,客态区间包括多个子区间,各子区间的权重不同。
图14为轨道的主态区间和客态区间的一种示意图,如图14所示,360度被划分为4个区间,一个主态区间和三个客态区间,主态区间的角度范围为0-90度,第一客态子区间的角度范围为90-180度,第二客态子区间的角度范围为180-270,第三客态子区间的角度范围为270-360。主态弹幕在主态区间出生,客态弹幕可以从三个客态子区间中选择一个子区间出生。
当主态区间包括多个子区间时,根据主态区间包括的多个子区间的权重,从主态区间包括的多个子区间中确定一个区间作为新弹幕的出生区间。
当客态区间包括多个子区间时,根据客态区间包括的多个子区间的权重,从客态区间包括的多个子区间中确定一个区间作为新弹幕的出生区间。
对于主态区间和客态区间,子区间的权重越大,子区间被选中为新弹幕的出生区间的概率越大。
可选的,通过如下方式从主态区间和客态区间中选择一个区间:假设共有n个子区间,n的取值为大于或等于2,每个子区间的权重大于或等于0,所有子区间的权重之和为1。在选择子区间时,产生一个(0,1]之间的随机数r,遍历n个区间,直到累加权重大于或等于r,将当前子区间确定为新弹幕的出生区间。
一种示例性方式中,可通过如下方式确定新弹幕的出生轨道和出生位置:根据应用中已生成弹幕的显示信息,确定各轨道中相邻的已生成弹幕之间的区间大小。根据新弹幕的长度和各轨道中相邻的已生成弹幕之间的区间大小,确定新弹幕可用的空闲区间,该空闲区间大于或等于新弹幕的长度。从新弹幕的可用的空闲区间中,确定与新弹幕的出生区间存在交集的第一空闲区间。从第一空闲区间内确定一个目标空闲区间。根据新弹幕的长度从目标空闲区间中确定一个位置作为新弹幕的出生位置,目标空间区间所在
的轨道为新弹幕的出生轨道。
该方式与实现方式一类似,不同点在于:在确定新弹幕可用的空闲区间后,确定新弹幕可用的空闲区间与新弹幕的出生区间的交集,从新弹幕的可用的空闲区间中,得到与新弹幕的出生区间存在交集的第一空闲区间,然后,从该第一空闲区间中确定一个目标空闲区间,从而能够保证新弹幕的出生位置落在该新弹幕的出生区间内。
另一种示例性方式中,根据新弹幕的生成区间和应用中已生成弹幕的显示信息,确定新弹幕的出生区间内相邻的已生成弹幕之间的区间大小。根据新弹幕的长度和各轨道的生成区间内相邻的已生成弹幕之间的区间大小,确定新弹幕可用的空闲区间,该空闲区间大于或等于新弹幕的长度。从新弹幕可用的空闲区间中确定一个目标空闲区间,根据新弹幕的长度从所述目标空闲区间中确定一个位置作为新弹幕的出生位置。
该方式与实现方式一相比,只需要确定新弹幕的生成区间内相邻的已生成弹幕之间的区间大小。
上述实现方式中,从多个轨道中确定的该目标空闲区间可能位于多个轨道中的任意一个轨道,将该目标空间区间所在的轨道确定为新弹幕的出生轨道。
可选的,用户还可以在发送新弹幕时指定新弹幕的出生轨道,或者,用户预先设置了新弹幕的出生轨道,例如,用户在弹幕功能中设置一个轨道或者多个轨道作为新弹幕的出生轨道,相应的,只能在用户设置的轨道上确定空闲区间。
S203、获取新弹幕的消失位置。
一种实现方式中,新弹幕的消失位置根据新弹幕的出生位置确定,例如,新弹幕的消失位置与新弹幕的出生位置间隔固定角度,例如,间隔92度、120度、180度、200度等,那么在确定新弹幕的出生角度后,在新弹幕的出生角度加上该固定间隔,得到新弹幕的消失角度。
另一种实现方式中,新弹幕的消失位置为固定角度,无论弹幕在什么位置出生,均在该固定角度消失。
又一种实现方式中,新弹幕的消失位置与新弹幕的出生区间有关,不同的角度区间对应不同的消失位置,根据新弹幕的出生区间,以及角度区间与消失位置的对应关系,确定新弹幕的消失位置。
S204、根据新弹幕的出生轨道、出生位置、长度和消失位置,生成新弹幕的显示信息。
新弹幕的显示信息包括新弹幕的内容、出生的轨道信息、在轨道上占据的空间信息和在轨道上的消失位置信息。当新弹幕在轨道上占据的空间信息为新弹幕在轨道上占据的角度区间时,该角度区间根据新弹幕的出生角度和长度确定。如果新弹幕在轨道上占据的空间信息为新弹幕的出生位置和长度时,则直接生成新弹幕的现实信息。
在生成新弹幕的显示信息后,根据新弹幕的显示信息,在环形轨道上显示新弹幕。并将新弹幕的显示信息发送给服务器保存,如果新弹幕还有其他信息,将新弹幕的显示信息和其他信息均发送给服务器保存,该其他信息可包括但不限于新弹幕的发送用户信
息、新弹幕的发送时间等。
本实施例中,根据新弹幕的内容获取新弹幕的长度,根据新弹幕的长度和应用中已生成弹幕的显示信息,确定新弹幕的出生轨道和出生位置;获取新弹幕的消失位置;根据新弹幕的出生轨道、出生位置、长度和消失位置,生成新弹幕的显示信息,根据新弹幕的显示信息控制新弹幕在轨道上显示。根据新弹幕的长度和应用中已生成弹幕的显示信息,确定得到的新弹幕的出生位置,能够避免新弹幕与已生成弹幕重叠。
在实施例一和实施例二的基础上,本公开实施例三提供一种新弹幕的显示信息的获取方法,本实施例用于对根据弹幕的显示信息,在环形轨道上显示弹幕的具体方式进行说明。图15为本公开实施例三提供的一种新弹幕的显示信息的获取方法的流程图,如图15所示,本实施例提供的方法包括以下步骤。
S301、在虚拟空间中生成至少一个环形轨道。
S302、获取弹幕的显示信息,弹幕的显示信息包括弹幕的内容、出生的轨道信息、在轨道上占据的空间信息和在轨道上的消失位置信息。
S303、根据弹幕在轨道上占据的空间信息,确定弹幕的出生位置。
当弹幕在轨道上占据的空间信息为弹幕在轨道上占据的角度区间时,将该角度区间的起始角度或者下限角度确定为弹幕的出生角度。
S304、根据弹幕出生的轨道信息,控制弹幕在轨道信息对应的轨道上的出生位置处出生。
在确定弹幕出生的轨道和出生角度后,控制弹幕在该轨道上的出生角度处出生。
S305、根据弹幕的消失位置信息,控制弹幕在消失位置信息对应的消失位置处消失。
可选的,弹幕在出生位置通过淡入方式出生,弹幕在消失位置通过淡出方式消失。淡入是指弹幕从无到全部显示的过程缓慢呈现,淡出是指弹幕从全部显示到无的过程缓慢呈现,用户能够直观的看到弹幕从有到无以及从无到有的过程。
例如,一条弹幕的长度为10度,弹幕的出生角度为20度,弹幕的消失角度为120度。那么弹幕初始占据角度为10~20度,随着弹幕移动,大于20度的部分淡入,直到整体大于20度全部显现出来。然后随着弹幕移动,大于120度的部分淡出,直到最终时刻占据角度为120~130度,弹幕完全淡出,随后弹幕被移除。
因此还需要维护每条弹幕在淡入数据和淡出数据,淡入数据用于描述从多少度开始淡入,以及淡入区间角度,淡出数据用于描述从多少度开始淡出以及淡出区间角度。
示例性的,每条弹幕的淡入、淡出数据满足以下三条规则:(1)每条弹幕的淡入、淡出数据在出生时就已经决定,不会改变;(2)每条弹幕的淡入数据在它完全显示后将不再需要;(3)每条弹幕的淡出数据在它即将消失时才需要,完全消失后不再需要。
弹幕的淡入淡出是在shader(着色器)中完成的,shader中没有每条弹幕的概念,只是单纯的网格顶点。根据淡入、淡出数据的规则(2)和(3),需要将所有弹幕的淡入、淡出数据汇总在一起,shader在对一条弹幕进行处理时,在该弹幕确实已经转到了对应
的角度才创建淡入\淡出的数据,防止影响其它弹幕。
具体的,可以使用shader中的StructuredBuffer来传递淡入、淡出数据。淡入、淡出数据包括如下信息:圆心、所有弹幕的显示区域数组、显示区域个数、轨道行高。
圆心为弹幕所在轨道的圆心,圆心角度用于计算顶点的角度。
每条弹幕的显示区域数组定义为一个float4,包括基准角度、区间角度增量、y轴向中心坐标、淡入度,显示区域个数用于描述所有弹幕的显示区域数组的总数,显示区域个数等于弹幕总数。
基准角度为弹幕的出生角度或者消失角度,区间角度增量为弹幕的长度,淡入度用于控制[基准角度,基准角度+基准角度增量]的区间内,透明度从0到1的过度区间的长度。淡入度反应了弹幕的淡入、淡出效果,所有弹幕的淡入、淡出效果是相同的。
区间角度增量为正值或者负值,当区间角度增量为正值时,对应淡入过程,当区间角度增量为负值时,对应淡出过程。
示例性的,淡入度为5,弹幕的出生角度为20度,弹幕的消失角度为120度,那么淡入区间为20-25度,淡出区间为115-120度。即在淡入过程中,弹幕从20-25度之间的透明度逐渐增大,在淡出过程中,弹幕从115-120度之间透明度逐渐减小。
在弹幕的出生到消失过程中,总共分为三个阶段:出生阶段、正常移动阶段和消失阶段,出生阶段是指弹幕从头部出现到尾部完全显示的过程,正常移动阶段为弹幕全部显示阶段,消失阶段是指弹幕从头部开始消失到尾部完全消失的过程。其中,在出生阶段和消失阶段淡入度的取值为大于0,在弹幕正常移动阶段淡入度为0。
轨道行高用来计算一个像素点在哪个轨道上,根据轨道行高和y轴向中心坐标可以计算出轨道在竖直方向上的最高点和最低点。
Shader包括顶点着色器和片元(frag)着色器,顶点着色器用于把输入数据进行矩阵变换生成位置信息,生成逐顶点颜色,生成纹理坐标,并把位置信息、纹理坐标发送给片元着色器,片元着色器可以通过像素的世界坐标计算出像素的角度,然后依次用所有弹幕的显示区域数组去计算它的透明度。
为便于更好的实施本公开实施例的弹幕显示方法,本公开实施例还提供一种弹幕显示装置。图16为本公开实施例四提供的弹幕显示装置的结构示意图,如图16所示,该弹幕显示装置100可以包括:
生成模块11,用于在虚拟空间中生成至少一个环形轨道;
获取模块12,用于获取弹幕的显示信息,所述弹幕的显示信息包括弹幕的内容、出生的轨道信息、在轨道上占据的空间信息和在轨道上的消失位置信息;
显示模块13,用于根据所述弹幕的显示信息,在所述环形轨道上显示所述弹幕,所述弹幕在所述环形轨道上移动。
在一些实施例中,当所述弹幕为所述应用生成的新弹幕时,所述显示模块13具体用于:
根据所述新弹幕的内容获取所述新弹幕的长度;
根据所述新弹幕的长度和所述应用中已生成弹幕的显示信息,确定所述新弹幕的出生轨道和出生位置;
获取所述新弹幕的消失位置;
根据所述新弹幕的出生轨道、出生位置、长度和消失位置,生成所述新弹幕的显示信息。
在一些实施例中,所述显示模块13具体用于:
根据所述应用中已生成弹幕的显示信息,确定各轨道中相邻的已生成弹幕之间的区间大小;
根据所述新弹幕的长度和各轨道中相邻的已生成弹幕之间的区间大小,确定所述新弹幕可用的空闲区间,所述空闲区间大于或等于所述新弹幕的长度;
从所述新弹幕可用的空闲区间中确定一个目标空闲区间,根据所述新弹幕的长度从所述目标空闲区间中确定一个位置作为所述新弹幕的出生位置,所述目标空间区间所在的轨道为所述新弹幕的出生轨道。
在一些实施例中,所述显示模块13具体用于:
获取所述新弹幕的出生区间;
根据所述新弹幕的长度、所述新弹幕的出生区间以及所述应用中已生成弹幕的显示信息,确定所述新弹幕的出生轨道和出生位置。
在一些实施例中,所述显示模块13具体用于:
根据所述应用中已生成弹幕的显示信息,确定各轨道中相邻的已生成弹幕之间的区间大小;
根据所述新弹幕的长度和各轨道中相邻的已生成弹幕之间的区间大小,确定所述新弹幕可用的空闲区间,所述空闲区间大于或等于所述新弹幕的长度;
从所述新弹幕的可用的空闲区间中,确定与所述新弹幕的出生区间存在交集的第一空闲区间;
从所述第一空闲区间内确定一个目标空闲区间;
根据所述新弹幕的长度从所述目标空闲区间中确定一个位置作为所述新弹幕的出生位置,所述目标空间区间所在的轨道为所述新弹幕的出生轨道。
在一些实施例中,所述显示模块13具体用于:
根据所述新弹幕的发送用户信息,确定所述新弹幕的出生区间。
在一些实施例中,所述轨道划分为主态区间和客态区间,所述主态区间为主视角用户发送的弹幕的出生区间,所述客态区间为非主视角用户发送的弹幕的出生区间;
所述显示模块13具体用于:
当所述新弹幕的发送用户为主视角用户时,确定所述新弹幕的出生区间为所述主态区间;
当所述新弹幕的发送用户为非主视角用户时,确定所述新弹幕的出生区间为所述客
态区间。
在一些实施例中,所述主态区间包括多个子区间,各子区间的权重不同;
所述显示模块13具体用于:当所述新弹幕的发送用户为主视角用户时,根据所述主态区间包括的多个子区间的权重,从所述主态区间包括的多个子区间中确定一个区间作为所述新弹幕的出生区间。
在一些实施例中,所述客态区间包括多个子区间,各子区间的权重不同;
所述显示模块13具体用于:当所述新弹幕的发送用户为非主视角用户时,根据所述客态区间包括的多个子区间的权重,从所述客态区间包括的多个子区间中确定一个区间作为所述新弹幕的出生区间。
在一些实施例中,所述显示模块13具体用于:
根据所述弹幕在轨道上占据的空间信息,确定所述弹幕的出生位置;
根据所述弹幕出生的轨道信息,控制所述弹幕在所述轨道信息对应的轨道上的所述出生位置处出生;
根据所述弹幕的消失位置信息,控制所述弹幕在所述消失位置信息对应的消失位置处消失。
在一些实施例中,所述弹幕在出生位置通过淡入方式出生,所述弹幕在消失位置通过淡出方式消失。
在一些实施例中,所述环形轨道上的弹幕的移动速度相同。
在一些实施例中,所述环形轨道上的弹幕互不重叠。
在一些实施例中,所述环形轨道上的主态弹幕和客态弹幕区别显示,所述主态弹幕为主视角用户发送的弹幕,所述客态弹幕为非主视角用户发送的弹幕。
在一些实施例中,当所述虚拟空间中设置多个环形轨道时,所述多个环形轨道为半径不同的同心轨道。
应理解的是,装置实施例与方法实施例可以相互对应,类似的描述可以参照方法实施例。为避免重复,此处不再赘述。
图17是本公开实施例提供的一种弹幕显示方法的流程示意图。其中,该弹幕显示方法可由弹幕显示装置来执行,且该弹幕显示装置可由硬件和/或软件组成,并可集成于电子设备中。在本公开实施例中,电子设备可以是任何具有数据处理功能以及图像显示功能的硬件设备。例如电子设备可选为VR设备、AR设备、MR设备或者XR设备等,本公开对其不做具体限制。
如图17所示,该方法包括如下步骤:
S1101,获取虚拟空间的内容场景。
本公开中,内容场景可以理解为虚拟空间向用户提供的互动场景,比如180度半景互动场,或者360度全景互动场等,此处不做具体限制。
可选的,当用户启动电子设备后,电子设备可根据用户操作进入相应的虚拟空间,
并在虚拟空间内向用户显示与该虚拟空间对应的画面内容。在本公开实施例中,如果该虚拟空间内呈现的画面内容为直播视频流,则该虚拟空间可理解为主播所在的直播间。如果该虚拟空间内呈现的画面内容为普通视频流,则该虚拟空间可理解为视频播放房间。
其中,在显示画面内容之前,本公开电子设备首先对待显示的画面内容进行连续多帧的识别操作,以确定画面内容对应的内容场景,即确定虚拟空间的内容场景;或者,也可以根据用户进入的虚拟空间标识信息,确定该虚拟空间的内容场景等等,此处对其不做具体限制。
其中,虚拟空间标识信息可以是任意能够唯一确定虚拟空间身份的信息,比如虚拟空间编号或者虚拟空间名称等,此处不做具体限制。
在一些可实现方式中,本公开根据虚拟空间标识信息,确定虚拟空间的内容场景时,可包括但不限于如下方式:
方式一
当预先在电子设备内配置了虚拟空间标识信息与内容场景之间的映射关系时,那么电子设备可根据虚拟空间标识信息,在配置信息中的虚拟空间标识信息与内容场景之间的映射关系中,查询与该虚拟空间标识信息存在映射关系的内容场景。
方式二
考虑到在电子设备上进行信息配置时,如果配置参数过多则会导致占用较多的内存资源,导致电子设备运行时能够提供的可使用运行资源减少,从而影响电子设备的运行流畅度等。
所以,本公开可选的将虚拟空间标识信息与内容场景之间的映射关系存储于与电子设备建立通信连接的服务器端。进而,当电子设备需要获取任一虚拟空间的内容场景时,可将自己的标识信息和待查询虚拟空间的标识信息发送给服务器端,使得服务器端可以根据接收到的待查询虚拟空间的标识信息,在预存的虚拟空间标识信息与内容场景之间的映射关系中,查询与该待查询虚拟空间的标识信息存在映射关系的内容场景。然后,服务器端根据电子设备标识信息,将查询到的场景内容发送给电子设备,使得电子设备获取到虚拟空间的内容场景。其中,电子设备标识信息可以是任意能够唯一确定电子设备身份的信息,比如电子设备编号或者电子设备序列号等。
在本实施例中,与电子设备建立通信连接的服务器端,可选为后台服务器或者云端服务器,此处对其不做具体限制。
应理解的是,虚拟空间标识信息与内容场景之间的映射关系可选的还可以包括内容场景的类型信息。
S1102,根据内容场景,确定弹幕的目标显示方式。
在本公开实施例中,目标显示方式包括:目标环绕方式,或者目标环绕方式和目标层次呈现方式。
其中,目标环绕方式可选为横屏滚动方式、弧度环绕方式、半景环绕方式和全景环绕方式中的其中一项。
应理解的是,横屏滚动方式可选为从电子设备屏幕的一侧向另一侧滚动,比如从屏幕的右侧向左侧滚动等。
弧度环绕方式可选为以小于180度的任意角度显示弹幕,以实现的弧度环绕方式。
半景环绕方式可以理解为以180度环绕方式显示弹幕的一种显示方式。
全景环绕方式可以理解为以360度环绕方式显示弹幕的一种显示方式。
考虑到不同的内容场景,可向用户展现不同的视角。因此,本公开可以根据获取到的内容场景,来确定与该内容场景相适配的目标显示方式,实现基于内容场景智能化的向用户呈现不同显示方式的弹幕,以丰富弹幕的显示方式,从而增强用户的互动趣味性,提升用户的互动体验。
在一些可实现方式中,本公开可根据内容场景的类型确定弹幕的目标显示方式。
应理解的是,本公开中内容场景的类型,可包括但不限于如下至少一项:远距离场景、近距离场景、半景(180度半景)、全景(360度全景)、远距离半景场景、远距离全景场景、近距离半景场景和近距离全景场景。
其中,远距离场景可选为与用户之间距离大于预设距离的场景。本公开中预设距离可根据实际应用需要进行灵活设置,比如3米、5米或者8米等。示例性的,本公开中远距离场景可以是与用户之间的距离大于3米的舞台;或者,是与用户之间的距离大于5米的话剧;又或者,是与用户之间的距离大于6米的其他表演等。
近距离场景可选为与用户之间距离小于或等于预设距离的场景。示例性的,本公开中近距离场景可以是与用户之间的距离小于3米的1V1场景;或者,也可以是与用户之间的距离小于5米的聊天场景等。
在一些可实现方式,由于在获取虚拟空间的内容场景时,也可以获取到该内容场景的类型;或者,根据获取到的内容场景确定出内容场景的类型。那么本公开可根据内容场景的类型,确定与该内容场景类型对应的目标显示方式。示例性的,可以根据内容场景的类型,在内容场景类型与显示方式之间的映射关系中查找目标显示方式。
需要说明的是,本公开中内容场景类型与显示方式之间的映射关系,可以预先配置于电子设备端,也可以是存储于与电子设备建立通信连接的服务器端,此处对其不做具体限制。
S1103,根据目标显示方式,在虚拟空间内显示弹幕。
其中,如果目标显示方式为目标环绕方式,则本公开根据该目标环绕方式在虚拟空间内显示弹幕。
如果目标显示方式为目标环绕方式和目标层次呈现方式,则本公开根据目标环绕方式和目标层次呈现方式,在虚拟空间内显示弹幕。
需要说明的是,本公开中在虚拟空间内显示的弹幕,可以是用户发表的弹幕信息,也可以是处于同一虚拟空间内的其他用户发表的弹幕信息等,此处对其不做具体限制。
考虑到在虚拟空间内显示弹幕的整洁度,通常会在虚拟空间内划分弹幕呈现区,使得针对虚拟空间内呈现画面内容发送的弹幕可以统一呈现在该弹幕呈现区内,从而方便
查看关于画面内容的弹幕信息。所以,本公开根据目标显示方式,在虚拟空间内显示弹幕时,可选的通过在虚拟空间内的弹幕呈现区上显示弹幕。
在本公开中,弹幕呈现区可以是虚拟空间内的上方区域(比如图18所示),或者也可以是虚拟空间内的其他空白区域等,此处对其不做具体限制。
本公开实施例提供的技术方案,通过获取虚拟空间的内容场景,以根据该内容场景,来确定弹幕的目标显示方式,然后在虚拟空间内基于目标显示方式显示弹幕。本公开通过基于虚拟空间的内容场景,来适配弹幕的目标显示方式,并基于目标显示方式显示弹幕,从而实现虚拟空间内弹幕显示时的多样化显示效果,丰富弹幕显示方式,节省弹幕显示成本,提升用户的互动体验。
作为本公开的一种可选的实现方式中,考虑到弹幕的目标显示方式为目标环绕方式,或者目标环绕方式和目标层次呈现方式。那么下面结合图19,对本公开中确定弹幕的目标显示方式为目标环绕方式进行进一步的解释说明。
如图19所示,该方法可以包括如下步骤:
S1201,获取虚拟空间的内容场景。
S1202,根据内容场景的类型,确定弹幕的目标环绕方式。
考虑到内容场景的类型可有多种,比如包括但不限于如下:远距离场景、近距离场景、半景(180度半景)、全景(360度全景)、远距离半景场景、远距离全景场景、近距离半景场景和近距离全景场景。
所以,在一些可实现方式中,可预先根据上述各种内容场景类型,设置与每个内容场景类型对应的弹幕环绕方式。进而,建立每个内容场景类型与对应弹幕环绕方式的映射关系。然后,将建立的内容场景类型与弹幕环绕方式的映射关系配置于电子设备上或者存储于服务器端,以为后续根据内容场景的类型确定弹幕的目标环绕方式奠定基础。
在本公开实施例中,弹幕环绕方式可包括但不限于:横屏滚动方式、弧度环绕方式、180度环绕和360度环绕等,此处对其不做限制。其中,弧度环绕方式的弧度是指小于180度的任一弧度,此处对其不做限制。
在一些可实现方式中,本公开中建立的内容场景类型与弹幕环绕方式的映射关系,可选的如下表1所示:
表1
需要说明的是,上述预先根据各种内容场景的类型,设置与每个内容场景类型对应的弹幕环绕方式时,可通过人工或自动等方式进行多次设置,以为每个内容场景类型设置出最佳的一种环绕方式。例如,对内容场景类型为远距离场景设置环绕方式时,可依次设置横屏滚动方式、弧度环绕方式、180度环绕方式和360度环绕方式,并基于设置好的每种环绕方式显示弹幕“你好”。然后,根据每种环绕方式显示的弹幕“你好”效果,并从中选择显示效果最好的一种作为远距离场景的目标环绕方式。
其中,确定每种环绕方式显示弹幕效果可以通过肉眼观看,也可以通过采集弹幕显示图,并对该弹幕显示图进行图像分析处理(比如,分析弹幕显示图的清晰度),以确定该弹幕显示图质量,进而根据弹幕显示图质量,确定弹幕显示效果。其中,图像分析处理可采用传统分析算法或策略,此处对其不做具体限制。
应理解的是,本公开中针对每个内容场景类型设置的弹幕环绕方式也可以根据实际呈现需要进行灵活调整,此处对其不做具体限制。例如,将远距离场景对应的横屏滚动方式调整为360度全屏环绕方式等。
进而,当获取到内容场景后,可根据内容场景的类型,在内容场景类型与弹幕环绕方式的映射关系中,查找与获取到的内容场景的类型存在映射关系的弹幕环绕方式,并将该弹幕环绕方式确定为弹幕的目标环绕方式。
在一些可实现方式中,本公开根据内容场景的类型,确定弹幕的目标环绕方式,可包括如下情况:
情况一
如果内容场景的类型为远距离场景,则根据远距离场景,在内容场景类型与弹幕环绕方式的映射关系中,确定弹幕的目标环绕方式为横屏滚动方式。
情况二
如果内容场景的类型为近距离场景,则根据近距离场景,在内容场景类型与弹幕环绕方式的映射关系中,确定弹幕的目标环绕方式为弧度环绕方式。
情况三
如果内容场景的类型为半景场景,则根据半景场景,在内容场景类型与弹幕环绕方式的映射关系中,确定弹幕的目标环绕方式为半景环绕方式。
情况四
如果内容场景的类型为全景场景,则根据全景场景,在内容场景类型与弹幕环绕方式的映射关系中,确定弹幕的目标环绕方式为全景环绕方式。
情况五
如果内容场景的类型为远距离半景场景,则根据远距离半景场景,在内容场景类型与弹幕环绕方式的映射关系中,确定弹幕的目标环绕方式为半景环绕方式。
情况六
如果内容场景的类型为远距离全景场景,则根据远距离全景场景,在内容场景类型与弹幕环绕方式的映射关系中,确定弹幕的目标环绕方式为全景环绕方式。
情况七
如果内容场景的类型为近距离半景场景,则根据近距离半景场景,在内容场景类型与弹幕环绕方式的映射关系中,确定弹幕的目标环绕方式为半景环绕方式。
情况八
如果内容场景的类型为近距离全景场景,则根据近距离全景场景,在内容场景类型与弹幕环绕方式的映射关系中,确定弹幕的目标环绕方式为全景环绕方式。
S1203,根据目标环绕方式,在虚拟空间内显示弹幕。
可选的,本公开在虚拟空间内显示弹幕时,可首先根据目标环绕方式,调整每个弹幕轨道进行调整或者调整每个弹幕轨道上的弹幕。之后,基于调整后的弹幕轨道显示弹幕或者基于弹幕轨道显示调整后的弹幕,从而实现弹幕的多样化显示效果。
作为一种可选的实现方式,在虚拟空间内显示弹幕具体实现如下:
方式一
根据确定的目标环绕方式对每个弹幕轨道进行环绕方式调整。在调整后的每个弹幕轨道上显示弹幕。
方式二
根据确定的目标环绕方式对每个弹幕轨道上的弹幕进行环绕方式调整。在每个弹幕轨道上显示调整后的弹幕。
在一些可实现方式中,本公开根据目标环绕方式,在虚拟空间内显示弹幕,可选的包括但不限于如下实现方式:
实现方式一
如果目标环绕方式为横屏滚动方式,则在虚拟空间内以横屏滚动方式显示弹幕,例如图20a所示。
实现方式二
如果目标环绕方式为弧度环绕方式,则在虚拟空间内以弧度环绕方式显示弹幕,例如图20b。
实现方式三
如果目标环绕方式为180度环绕方式,则在虚拟空间内以180度环绕方式显示弹幕,例如图20c。
实现方式四
如果目标环绕方式为360度环绕方式,则在虚拟空间内以360度环绕方式显示弹幕,例如图20d。
在一些可实现方式,本公开根据目标环绕方式,在虚拟空间内显示弹幕时,还可以通过在虚拟空间内的弹幕呈现区上以目标环绕方式显示弹幕,以保证虚拟空间内显示内容的整洁度,从而方便用户查看显示的弹幕信息。
在本公开中,弹幕呈现区可以是虚拟空间内的上方区域(比如图18所示),或者也可以是虚拟空间内的其他空白区域等,此处对其不做具体限制。
考虑到在虚拟空间内显示的弹幕数量较多时,本公开基于目标环绕方式在虚拟空间内显示弹幕时,还可按照默认的任一种弹幕层次呈现方式显示弹幕,以使显示的弹幕具有不同层次,便于用户查看大量的弹幕信息。
作为本公开的一种可选实现方式,本公开默认的弹幕层次呈现方式可选的包括但不限于:往复堆叠层次呈现方式。
其中,往复堆叠层次呈现方式的结构可如:ABAB结构。即,采用两种弹幕呈现大小或深度进行循环呈现。
也就是说,基于往复堆叠层次呈现方式(ABAB式)显示弹幕,可以使得显示的弹幕信息中相邻弹幕轨道上的弹幕具有不同层次,从而便于用户查看弹幕信息,增强虚拟空间内的弹幕呈现趣味性和立体感,提升用户在虚拟空间内的沉浸式体验。
本公开实施例提供的技术方案,通过获取虚拟空间的内容场景,以根据该内容场景,来确定弹幕的目标显示方式,然后在虚拟空间内基于目标显示方式显示弹幕。本公开通过基于虚拟空间的内容场景,来适配弹幕的目标显示方式,并基于目标显示方式显示弹幕,从而实现虚拟空间内弹幕显示时的多样化显示效果,丰富弹幕显示方式,节省弹幕显示成本,提升用户的互动体验。
在本公开的另一种可选的实现方式中,考虑到弹幕的目标显示方式为目标环绕方式,或目标环绕方式和目标层次呈现方式。那么下面结合图21,对本公开中确定弹幕的目标显示方式为目标环绕方式和目标层次呈现方式进行进一步的解释说明。
如图21所示,该方法可以包括如下步骤:
S1301,获取虚拟空间的内容场景。
S1302,根据内容场景的类型,确定弹幕的目标环绕方式和目标层次呈现方式。
为了方便对弹幕视图进行管理以及后续扩展,对弹幕设计了轨道,以通过轨道管理弹幕。其中,弹幕显示时每一行弹幕都是一个弹幕轨道。即,通过将弹幕呈现于弹幕轨道上,可以对弹幕的显示时间和速度等参数进行灵活控制,以满足不同弹幕显示需求。
也就是说,本公开弹幕可包括但不限于如下参数:弹幕轨道数量。
考虑到弹幕轨道数量可为一个或多个(大于等于2),那么当弹幕轨道数量为多个时,本公开确定弹幕的层次呈现方式,可包括但不限于如下情形:
第一种情形
在虚拟空间内将弹幕轨道进行组合,确定弹幕的层次呈现方式。
考虑到弹幕轨道是独立的,因此本公开可以根据独立的弹幕轨道,在虚拟空间内将弹幕轨道进行任意组合,以得到三维空间内的不同层次呈现方式。
第二种情形
在虚拟空间内确定目标平面,在目标平面上设置弹幕轨道,以确定弹幕的层次呈现
方式。
通常弹幕可以在一个平面上以不同大小进行显示操作,因此本公开可选的在虚拟空间内确定任一用于呈现弹幕的目标平面,然后在该目标平面上根据呈现需求设置不同大小的弹幕轨道,以得到不同层次呈现方式。
可选的,为了能够根据虚拟空间内的内容场景,智能化的自动适配出与该内容场景对应的目标环绕方式和目标层次呈现方式,本公开可预先根据各种内容场景类型,为每个内容场景类型设置对应的弹幕环绕方式和弹幕层次呈现方式。进而,建立每个内容场景类型、弹幕环绕方式和弹幕层次呈现方式的映射关系。然后,将建立的内容场景类型、弹幕环绕方式和弹幕层次呈现方式的映射关系配置于电子设备上或者存储于服务器端,以为后续根据内容场景的类型确定弹幕的目标环绕方式和目标层次呈现方式奠定基础。
其中,弹幕环绕方式可包括但不限于:横屏滚动方式、弧度环绕方式、180度环绕和360度环绕等,此处对其不做限制。其中,弧度环绕方式的弧度是指小于180度的任一弧度,此处对其不做限制。
弹幕层次呈现方式可包括但不限于下述其中一项:正梯呈现方式(ABCD式)、倒梯呈现方式(DCBA式)、往复堆叠呈现方式(ABAB式)和2D片式呈现方式等。
其中,2D片式呈现方式是指在虚拟空间内的弹幕呈现区上以二维平面形式显示弹幕的一种方式。
需要说明的是,上述正梯呈现方式、倒梯呈现方式以及往复堆叠呈现方式对应的每个弹幕轨道的缩放倍率可根据实际需要进行灵活调整,此处对其不做具体限制。例如,以0.01为缩放倍率起调基准进行调整。
为了便于说明弹幕轨道的缩放倍率,下面以弹幕轨道数量为4行为例进行说明。
首先,对于往复堆叠呈现方式而言,如图22a所示,第一行的缩放倍率为:×1.00倍;第二行的缩放倍率为:×1.03倍;第三行的缩放倍率为:×1.00倍;以及第四行的缩放倍率为:×1.03倍。
其次,对于正梯呈现方式而言,如图22b所示,第一行的缩放倍率为:×1.00倍;第二行的缩放倍率为:×0.99倍;第三行的缩放倍率为:×0.98倍;以及第四行的缩放倍率为:×0.97倍。
最后,对于倒梯呈现方式而言,如图22c所示,第一行的缩放倍率为:×0.97倍;第二行的缩放倍率为:×0.98倍;第三行的缩放倍率为:×0.99倍;以及第四行的缩放倍率为:×1.00倍。
作为本公开的一种可实现方式,本公开中建立的内容场景类型、弹幕环绕方式和弹幕层次呈现方式的映射关系,可选的如下表2所示:
表2
需要说明的是,上述预先根据各种内容场景的类型,设置与每个内容场景类型对应的弹幕环绕方式和弹幕层次呈现方式时,可通过人工或自动等方式进行多次设置,以为每个内容场景类型设置出最佳的一种环绕方式和弹幕层次呈现方式。例如,对内容场景类型为近距离半径场景设置环绕方式时,可依次设置弹幕环绕方式:横屏滚动方式、弧度环绕方式、180度环绕方式和360度环绕方式,以及设置弹幕层次呈现方式:2D片式呈现方式、倒梯呈现方式、正梯呈现方式和往复堆叠呈现方式,并基于设置好的每种环绕方式和每种层次呈现方式显示弹幕“XX表现太棒了”。然后,根据每种环绕方式和每种层次呈现方式显示的弹幕“XX表现太棒了”效果,并从中选择显示效果最好的一种作为近距离半径场景的目标环绕方式和目标层次呈现方式。
应理解的是,本公开中针对每个内容场景类型设置的弹幕环绕方式和弹幕层次呈现方式也可以根据实际呈现需求进行灵活调整,此处对其不做具体限制。
进而,当获取到内容场景后,可根据内容场景的类型,在内容场景类型、弹幕环绕方式和弹幕层次呈现方式的映射关系中,查找与获取到的内容场景的类型存在映射关系的弹幕环绕方式和弹幕层次呈现方式,并将该弹幕环绕方式确定为弹幕的目标环绕方式,以及将该弹幕层次呈现方式确定为弹幕的目标层次呈现方式。
在一些可实现方式中,本公开根据内容场景的类型,确定弹幕的目标环绕方式和目标层次呈现方式,可包括如下情况:
第一种情况
如果内容场景的类型为远距离场景,则根据远距离场景,在内容场景类型、弹幕环绕方式和弹幕层次呈现方式的映射关系中,确定弹幕的目标环绕方式为横屏滚动方式,以及弹幕的目标层次呈现方式为往复堆叠层次呈现方式。
第二种情况
如果内容场景的类型为近距离场景,则根据远距离场景,在内容场景类型、弹幕环绕方式和弹幕层次呈现方式的映射关系中,确定弹幕的目标环绕方式为弧度环绕方式,以及弹幕的目标层次呈现方式为倒梯层次呈现方式。
第三种情况
如果内容场景的类型为半景场景,则根据远距离场景,在内容场景类型、弹幕环绕方式和弹幕层次呈现方式的映射关系中,确定述弹幕的目标环绕方式为半景环绕方式,以及弹幕的目标层次呈现方式为正梯层次呈现方式。
第四种情况
如果内容场景的类型为全景场景,则根据远距离场景,在内容场景类型、弹幕环绕方式和弹幕层次呈现方式的映射关系中,确定弹幕的目标环绕方式为全景环绕方式,以及弹幕的目标层次呈现方式为2D片式呈现方式。
第五种情况
如果内容场景的类型为远距离半景场景,则根据远距离场景,在内容场景类型、弹幕环绕方式和弹幕层次呈现方式的映射关系中,确定弹幕的目标环绕方式为半景环绕方式,以及弹幕的目标层次呈现方式为往复堆叠层次呈现方式。
第六种情况
如果内容场景的类型为远距离全景场景,则根据远距离场景,在内容场景类型、弹幕环绕方式和弹幕层次呈现方式的映射关系中,确定弹幕的目标环绕方式为全景环绕方式,以及弹幕的目标层次呈现方式为往复堆叠层次呈现方式。
第七种情况
如果内容场景的类型为近距离半景场景,则根据远距离场景,在内容场景类型、弹幕环绕方式和弹幕层次呈现方式的映射关系中,确定弹幕的目标环绕方式为半景环绕方式,以及弹幕的目标层次呈现方式为倒梯层次呈现方式。
第八种情况
如果内容场景的类型为近距离全景场景,则根据远距离场景,在内容场景类型、弹幕环绕方式和弹幕层次呈现方式的映射关系中,确定弹幕的目标环绕方式为全景环绕方式,以及弹幕的目标层次呈现方式为倒梯层次呈现方式。
S1303,根据目标环绕方式和目标层次呈现方式,在虚拟空间内显示弹幕。
考虑到弹幕轨道数量为至少一个,那么当弹幕轨道数量为至少两个时,本公开在虚拟空间内显示弹幕时,可首先根据目标环绕方式和目标层次呈现方式,调整每个弹幕轨道或者调整每个弹幕轨道上的弹幕。之后,基于调整后的弹幕轨道显示弹幕或者基于弹幕轨道显示调整后的弹幕,从而实现弹幕的多样化显示效果。
作为一种可选的实现方式,在虚拟空间内显示弹幕具体实现如下:
方式一
根据确定的目标环绕方式对每个弹幕轨道进行环绕方式调整,以及根据确定的目标层次呈现方式对每个弹幕轨道进行层次呈现方式。然后,在调整后的每个弹幕轨道上显示弹幕。
方式二
根据确定的目标环绕方式对每个弹幕轨道上的弹幕进行环绕方式调整,以及根据确定的目标层次呈现方式对每个弹幕轨道上的弹幕进行层次呈现方式调整。然后,在每个弹幕轨道上显示调整后的弹幕。
在一些可实现方式中,本公开根据目标环绕方式和目标层次呈现方式,在虚拟空间内显示弹幕,示例性的可包括但不限于如下实现方式:
第一种实现方式
如果目标环绕方式为横屏滚动方式,目标层次呈现方式为往复堆叠呈现方式,则在虚拟空间内以横屏滚动方式和往复堆叠呈现方式显示弹幕,例如图23所示。
第二种实现方式
如果目标环绕方式为弧度环绕方式,目标层次呈现方式为倒梯呈现方式,则在虚拟空间内以弧度环绕方式和倒梯呈现方式显示弹幕。
第三种实现方式
如果目标环绕方式为180度环绕方式,目标层次呈现方式为正梯呈现方式,则在虚拟空间内以180度环绕方式和正梯呈现方式显示弹幕。
第四种实现方式
如果目标环绕方式为360度环绕方式,目标层次呈现方式为2D片式呈现方式,则在虚拟空间内以360度环绕方式和2D片式呈现方式显示弹幕。
第五种实现方式
如果目标环绕方式为180度环绕方式,目标层次呈现方式为往复堆叠呈现方式,则在虚拟空间内以180度环绕方式和往复堆叠呈现方式显示弹幕。
第六种实现方式
如果目标环绕方式为360度环绕方式,目标层次呈现方式为往复堆叠呈现方式,则在虚拟空间内以360度环绕方式和往复堆叠呈现方式显示弹幕。
第七种实现方式
如果目标环绕方式为180度环绕方式,目标层次呈现方式为倒梯呈现方式,则在虚拟空间内以180度环绕方式和倒梯呈现方式显示弹幕。
第八种实现方式
如果目标环绕方式为360度环绕方式,目标层次呈现方式为倒梯呈现方式,则在虚拟空间内以360度环绕方式和倒梯呈现方式显示弹幕。
在一些可实现方式,本公开根据目标环绕方式和目标层次呈现方式,在虚拟空间内显示弹幕时,还可以通过在虚拟空间内的弹幕呈现区上以目标环绕方式和目标层次呈现方式显示弹幕,以保证虚拟空间内显示内容的整洁度,从而方便用户查看显示的弹幕信息。
在本公开中,弹幕呈现区可以是虚拟空间内的上方区域(比如图18所示),或者也可以是虚拟空间内的其他空白区域等,此处对其不做具体限制。
本公开实施例提供的技术方案,通过获取虚拟空间的内容场景,以根据该内容场景,来确定弹幕的目标显示方式,然后在虚拟空间内基于目标显示方式显示弹幕。本公开通过基于虚拟空间的内容场景,来适配弹幕的目标显示方式,并基于目标显示方式显示弹幕,从而实现虚拟空间内弹幕显示时的多样化显示效果,丰富弹幕显示方式,节省弹幕显示成本,提升用户的互动体验。此外,通过根据内容场景确定的弹幕目标层次呈现方式,使得虚拟空间内呈现的弹幕信息具有明显的层次,从而便于用户查看弹幕信息,增强虚拟空间内的弹幕呈现趣味性和多样性,提升用户在虚拟空间内的沉浸式体验。
下面参照附图24,对本公开实施例提出的一种弹幕显示装置进行描述。图24是本公开实施例提供的一种弹幕显示装置的示意性框图。
具体的,如图24所示,该弹幕显示装置400包括:场景获取模块410、确定模块420和显示模块430。
其中,场景获取模块410,用于获取虚拟空间的内容场景;
确定模块420,用于根据所述内容场景,确定弹幕的目标显示方式;
显示模块430,用于根据所述目标显示方式,在所述虚拟空间内显示所述弹幕。
本公开实施例的一种可选实现方式,确定模块420,具体用于:
根据所述内容场景的类型,确定弹幕的目标环绕方式;
或者,
根据所述内容场景的类型,确定弹幕的目标环绕方式和目标层次呈现方式。
本公开实施例的一种可选实现方式,所述内容场景的类型包括下述至少一项:远距离场景、近距离场景、半景场景和全景场景。
本公开实施例的一种可选实现方式,所述目标环绕方式为横屏滚动方式、弧度环绕方式、半景环绕方式和全景环绕方式中的任一项。
本公开实施例的一种可选实现方式,确定模块420,具体用于:
如果所述内容场景的类型为远距离场景,则确定所述弹幕的目标环绕方式为横屏滚动方式;
如果所述内容场景的类型为近距离场景,则确定所述弹幕的目标环绕方式为弧度环绕方式;
如果所述内容场景的类型为半景场景,则确定所述弹幕的目标环绕方式为半景环绕方式;
如果所述内容场景的类型为全景场景,则确定所述弹幕的目标环绕方式为全景环绕方式。
本公开实施例的一种可选实现方式,所述弹幕的参数至少包括:弹幕轨道数量。
本公开实施例的一种可选实现方式,当所述弹幕轨道数量为至少两个时,所述弹幕的层次呈现方式,通过执行如下操作确定:
在所述虚拟空间内将所述弹幕轨道进行组合,确定所述弹幕的层次呈现方式;
或者,
在所述虚拟空间内确定目标平面,在所述目标平面上设置所述弹幕轨道,以确定所述弹幕的层次呈现方式。
本公开实施例的一种可选实现方式,所述目标层次呈现方式为往复堆叠呈现方式、倒梯呈现方式、正梯呈现方式和2D片式呈现方式中的任一项。
本公开实施例的一种可选实现方式,确定模块420,具体用于:
如果所述内容场景的类型为远距离场景,则确定所述弹幕的目标环绕方式为横屏滚动方式,以及所述弹幕的目标层次呈现方式为往复堆叠呈现方式;
如果所述内容场景的类型为近距离场景,则确定所述弹幕的目标环绕方式为弧度环绕方式,以及所述弹幕的目标层次呈现方式为倒梯呈现方式;
如果所述内容场景的类型为半景场景,则确定所述弹幕的目标环绕方式为半景环绕方式,以及所述弹幕的目标层次呈现方式为正梯呈现方式;
如果所述内容场景的类型为全景场景,则确定所述弹幕的目标环绕方式为全景环绕方式,以及所述弹幕的目标层次呈现方式为2D片式呈现方式。
本公开实施例的一种可选实现方式,显示模块430,具体用于:
根据所述目标显示方式,在所述虚拟空间内的弹幕呈现区上显示弹幕。
本公开实施例的一种可选实现方式,显示模块430,还用于:
根据目标环绕方式,在所述虚拟空间内的弹幕呈现区上显示弹幕;
或者,
根据所述目标环绕方式和目标层次呈现方式,在所述虚拟空间内的弹幕呈现区上显示弹幕。
本公开实施例的一种可选实现方式,显示模块430,还用于:
当所述弹幕呈现区包括至少两个弹幕轨道时,根据所述目标环绕方式,对每个弹幕轨道进行环绕方式调整,以及根据所述目标层次呈现方式,对每个弹幕轨道进行层次呈现方式调整;
在调整后的每个弹幕轨道上显示弹幕。
本公开实施例的一种可选实现方式,显示模块430,还用于:
当所述弹幕呈现区包括至少两个弹幕轨道时,根据所述目标环绕方式,对每个弹幕轨道上的弹幕进行环绕方式调整,以及根据所述目标层次呈现方式,对每个弹幕轨道上的弹幕进行层次呈现方式调整;
在每个弹幕轨道上显示调整后的弹幕。
本公开实施例提供的技术方案,通过获取虚拟空间的内容场景,以根据该内容场景,来确定弹幕的目标显示方式,然后在虚拟空间内基于目标显示方式显示弹幕。本公开通过基于虚拟空间的内容场景,来适配弹幕的目标显示方式,并基于目标显示方式显示弹幕,从而实现虚拟空间内弹幕显示时的多样化显示效果,丰富弹幕显示方式,节省弹幕显示成本,提升用户的互动体验。
应理解的是,装置实施例与前述方法实施例可以相互对应,类似的描述可以参照方法实施例。为避免重复,此处不再赘述。具体地,图24所示的装置400可以执行图17对应的方法实施例,并且装置400中的各个模块的前述和其它操作和/或功能分别为了实现图17中的各个方法中的相应流程,为了简洁,在此不再赘述。
上文中结合附图从功能模块的角度描述了本公开实施例的上述方法实施例、装置100和装置400。应理解,该功能模块可以通过硬件形式实现,也可以通过软件形式的指令实现,还可以通过硬件和软件模块组合实现。具体地,本公开实施例中的方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路和/或软件形式的指令完成,结合本公开实
施例公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。可选地,软件模块可以位于随机存储器,闪存、只读存储器、可编程只读存储器、电可擦写可编程存储器、寄存器等本领域的成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法实施例中的步骤。
图25为本公开实施例提供的电子设备的示意性框图。
如图25所示,该电子设备1000可包括:
存储器1010和处理器1020,该存储器1010用于存储计算机程序,并将该程序代码传输给该处理器1020。换言之,该处理器1020可以从存储器1010中调用并运行计算机程序,以实现本公开实施例中的方法。
例如,该处理器1020可用于根据该计算机程序中的指令执行上述方法实施例。
在本公开的一些实施例中,该处理器1020可以包括但不限于:
通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等等。
在本公开的一些实施例中,该存储器1010包括但不限于:
易失性存储器和/或非易失性存储器。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data Rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synch link DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DRRAM)。
在本公开的一些实施例中,该计算机程序可以被分割成一个或多个模块,该一个或者多个模块被存储在该存储器1010中,并由该处理器1020执行,以完成本公开提供的方法。该一个或多个模块可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述该计算机程序在该电子设备1000的执行过程。
如图25所示,该电子设备还可包括:
收发器1030,该收发器1030可连接至该处理器1020或存储器1010。
其中,处理器1020可以控制该收发器1030与其他设备进行通信,具体地,可以向
其他设备发送信息或数据,或接收其他设备发送的信息或数据。收发器1030可以包括发射机和接收机。收发器1030还可以进一步包括天线,天线的数量可以为一个或多个。
可以理解,虽然图25中未示出,该电子设备1000还可以包括摄像头模组、无线保真WIFI模块、定位模块、蓝牙模块、显示器、控制器等,在此不再赘述。
应当理解,该电子设备1000中的各个组件通过总线系统相连,其中,总线系统除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。
本公开还提供了一种计算机存储介质,其上存储有计算机程序,该计算机程序被计算机执行时使得该计算机能够执行上述方法实施例的方法。
本公开实施例还提供一种包含计算机程序/指令的计算机程序产品,该计算机程序/指令被计算机执行时使得计算机执行上述方法实施例的方法。
当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机程序指令时,全部或部分地产生按照本公开实施例该的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如数字视频光盘(digital video disc,DVD))、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的模块及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本公开的范围。
在本公开所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
例如,在本公开各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。
以上所述,仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以该权利要求的保护范围为准。
Claims (48)
- 一种弹幕呈现方法,其中,应用于扩展现实XR设备,所述方法包括:确定虚拟空间内的至少一层环绕弹幕轨道;响应于所述虚拟空间内获取的任一当前弹幕,确定所述当前弹幕在所述至少一层环绕弹幕轨道内的呈现位置,以在所述呈现位置处呈现所述当前弹幕。
- 根据权利要求1所述的方法,其中,所述确定所述虚拟空间内的至少一层环绕弹幕轨道,包括:根据所述虚拟空间内用户与弹幕主体对象间的相对距离和用户高度,确定所述虚拟空间内的弹幕轨道位置;在所述弹幕轨道位置处生成至少一层环绕弹幕轨道。
- 根据权利要求2所述的方法,其中,所述弹幕轨道位置包括以所述用户在所述虚拟空间内的所处位置为轨道中心时的轨道半径基值和轨道离地高度基值。
- 根据权利要求3所述的方法,其中,所述在所述弹幕轨道位置处生成至少一层环绕弹幕轨道,包括:根据所述轨道半径基值以及预设定的轨道适配纵向视角和轨道层数,确定对应的单层轨道高度;根据所述轨道离地高度基值和所述单层轨道高度,确定每一层环绕弹幕轨道的目标离地高度;根据所述轨道半径基值和所述每一层环绕弹幕轨道的目标离地高度,生成所述至少一层环绕弹幕轨道。
- 根据权利要求1-4任一项所述的方法,其中,所述确定所述当前弹幕在所述至少一层环绕弹幕轨道内的呈现位置,包括:根据所述至少一层环绕弹幕轨道内的已呈现弹幕,确定所述当前弹幕在所述至少一层环绕弹幕轨道内的呈现位置。
- 根据权利要求5所述的方法,其中,所述根据所述至少一层环绕弹幕轨道内的已呈现弹幕,确定所述当前弹幕在所述至少一层环绕弹幕轨道内的呈现位置,包括:根据所述至少一层环绕弹幕轨道内已呈现弹幕的显性呈现区域和隐性呈现区域以及预设定的相邻弹幕间隔,确定所述至少一层环绕弹幕轨道内的第一弹幕可呈现区域;在所述第一弹幕可呈现区域内确定所述当前弹幕的呈现起始点;根据所述呈现起始点和所述虚拟空间内已定的弹幕呈现长度,确定所述当前弹幕的呈现结束点。
- 根据权利要求6所述的方法,其中,所述呈现结束点为沿着所述呈现起始点所在轨道的逆时针或顺时针方向,与所述呈现起始点相隔所述弹幕呈现长度的位置点。
- 根据权利要求7所述的方法,其中,所述在所述呈现位置处呈现所述当前弹幕,包括:按照所述虚拟空间内已定的弹幕滚动速度,从所述呈现起始点处开始沿着所在轨道的逆时针或顺时针方向滚动呈现所述当前弹幕;在所述呈现结束点处取消呈现所述当前弹幕已滚动至所述呈现结束点时的弹幕内容。
- 根据权利要求8所述的方法,其中,所述方法还包括:在所述当前弹幕的呈现起始点显示第一弹幕遮罩,以在所述呈现起始点处采用第一特效来呈现所述当前弹幕;在所述当前弹幕的呈现结束点显示第二弹幕遮罩,以在所述呈现结束点处采用第二特效来取消所述当前弹幕的呈现。
- 根据权利要求8或9所述的方法,其中,所述方法还包括:控制所述呈现起始点跟随所述当前弹幕的末尾字符而滚动。
- 根据权利要求1-10任一项所述的方法,其中,所述方法还包括:根据所述虚拟空间内的用户头部朝向、所述至少一层环绕弹幕轨道内的弹幕呈现方向和所述虚拟空间内已定的弹幕呈现长度,在所述至少一层环绕弹幕轨道内划定多个弹幕生产区域,不同所述弹幕生产区域的弹幕生产权重不同。
- 根据权利要求11所述的方法,其中,所述确定所述当前弹幕在所述至少一层环绕弹幕轨道内的呈现位置,以在所述呈现位置处呈现所述当前弹幕,包括:根据所述当前弹幕的发起对象和每一所述弹幕生产区域内的已呈现弹幕,确定所述当前弹幕的适配弹幕生产区域和所述适配弹幕生产区域内的第二弹幕可呈现区域;在所述第二弹幕可呈现区域内确定所述当前弹幕的呈现起始点;根据所述呈现起始点、所述弹幕呈现方向和所述弹幕呈现长度,确定所述当前弹幕的呈现结束点;从所述呈现起始点处开始沿着所述弹幕呈现方向滚动呈现所述当前弹幕;在所述呈现结束点处取消呈现所述当前弹幕已滚动至所述呈现结束点时的弹幕内容。
- 根据权利要求11所述的方法,其中,所述方法还包括:响应于所述用户头部的转动操作,更新所述至少一层环绕弹幕轨道内划定的多个所述弹幕生产区域。
- 根据权利要求6或11所述的方法,其中,所述虚拟空间内已定的弹幕呈现长度与所述虚拟空间内的用户横向视野范围正相关。
- 一种弹幕显示方法,其中,包括:在虚拟空间中生成至少一个环形轨道;获取弹幕的显示信息,所述弹幕的显示信息包括弹幕的内容、出生的轨道信息、在轨道上占据的空间信息和在轨道上的消失位置信息;根据所述弹幕的显示信息,在所述环形轨道上显示所述弹幕,所述弹幕在所述环形轨道上移动。
- 根据权利要求15所述的方法,其中,当所述弹幕为应用生成的新弹幕时,所述获取弹幕的显示信息,包括:根据所述新弹幕的内容获取所述新弹幕的长度;根据所述新弹幕的长度和所述应用中已生成弹幕的显示信息,确定所述新弹幕的出生轨道和出生位置;获取所述新弹幕的消失位置;根据所述新弹幕的出生轨道、出生位置、长度和消失位置,生成所述新弹幕的显示信息。
- 根据权利要求16所述的方法,其中,所述根据所述新弹幕的长度和所述应用中已生成弹幕的显示信息,确定所述新弹幕的出生轨道和出生位置,包括:根据所述应用中已生成弹幕的显示信息,确定各轨道中相邻的已生成弹幕之间的区间大小;根据所述新弹幕的长度和各轨道中相邻的已生成弹幕之间的区间大小,确定所述新弹幕可用的空闲区间,所述空闲区间大于或等于所述新弹幕的长度;从所述新弹幕可用的空闲区间中确定一个目标空闲区间,根据所述新弹幕的长度从所述目标空闲区间中确定一个位置作为所述新弹幕的出生位置,所述目标空间区间所在的轨道为所述新弹幕的出生轨道。
- 根据权利要求16所述的方法,其中,所述根据所述新弹幕的长度和所述应用中已生成弹幕的显示信息,确定所述新弹幕的出生轨道和出生位置,包括:获取所述新弹幕的出生区间;根据所述新弹幕的长度、所述新弹幕的出生区间以及所述应用中已生成弹幕的显示信息,确定所述新弹幕的出生轨道和出生位置。
- 根据权利要求18所述的方法,其中,所述根据所述新弹幕的长度、所述新弹幕的出生区间以及所述应用中已生成弹幕的显示信息,确定所述新弹幕的出生轨道和出生位置,包括:根据所述应用中已生成弹幕的显示信息,确定各轨道中相邻的已生成弹幕之间的区间大小;根据所述新弹幕的长度和各轨道中相邻的已生成弹幕之间的区间大小,确定所述新弹幕可用的空闲区间,所述空闲区间大于或等于所述新弹幕的长度;从所述新弹幕的可用的空闲区间中,确定与所述新弹幕的出生区间存在交集的第一空闲区间;从所述第一空闲区间内确定一个目标空闲区间;根据所述新弹幕的长度从所述目标空闲区间中确定一个位置作为所述新弹幕的出生位置,所述目标空间区间所在的轨道为所述新弹幕的出生轨道。
- 根据权利要求18所述的方法,其中,所述获取所述新弹幕的出生区间,包括:根据所述新弹幕的发送用户信息,确定所述新弹幕的出生区间。
- 根据权利要求20所述的方法,其中,所述轨道划分为主态区间和客态区间,所述主态区间为主视角用户发送的弹幕的出生区间,所述客态区间为非主视角用户发送的弹幕的出生区间;所述根据所述新弹幕的发送用户信息,确定所述新弹幕的出生区间,包括:当所述新弹幕的发送用户为主视角用户时,确定所述新弹幕的出生区间为所述主态区间;当所述新弹幕的发送用户为非主视角用户时,确定所述新弹幕的出生区间为所述客态区间。
- 根据权利要求21所述的方法,其中,所述主态区间包括多个子区间,各子区间的权重不同;当所述新弹幕的发送用户为主视角用户时,确定所述新弹幕的出生区间为所述主态区间,包括:当所述新弹幕的发送用户为主视角用户时,根据所述主态区间包括的多个子区间的权重,从所述主态区间包括的多个子区间中确定一个区间作为所述新弹幕的出生区间。
- 根据权利要求21所述的方法,其中,所述客态区间包括多个子区间,各子区间的权重不同;当所述新弹幕的发送用户为非主视角用户时,确定所述新弹幕的出生区间为所述客态区间,包括:当所述新弹幕的发送用户为非主视角用户时,根据所述客态区间包括的多个子区间的权重,从所述客态区间包括的多个子区间中确定一个区间作为所述新弹幕的出生区间。
- 根据权利要求16所述的方法,其中,所述根据所述弹幕的显示信息,在所述环形轨道上显示所述弹幕,包括:根据所述弹幕在轨道上占据的空间信息,确定所述弹幕的出生位置;根据所述弹幕出生的轨道信息,控制所述弹幕在所述轨道信息对应的轨道上的所述出生位置处出生;根据所述弹幕的消失位置信息,控制所述弹幕在所述消失位置信息对应的消失位置处消失。
- 根据权利要求24所述的方法,其中,所述弹幕在出生位置通过淡入方式出生,所述弹幕在消失位置通过淡出方式消失。
- 根据权利要求15-25任一项所述的方法,其中,所述环形轨道上的弹幕的移动速度相同。
- 根据权利要求26所述的方法,其中,所述环形轨道上的弹幕互不重叠。
- 根据权利要求15-25任一项所述的方法,其中,所述环形轨道上的主态弹幕和客态弹幕区别显示,所述主态弹幕为主视角用户发送的弹幕,所述客态弹幕为非主视角用户发送的弹幕。
- 根据权利要求15-25任一项所述的方法,其中,当所述虚拟空间中设置多个环 形轨道时,所述多个环形轨道为半径不同的同心轨道。
- 一种弹幕显示方法,其中,包括:获取虚拟空间的内容场景;根据所述内容场景,确定弹幕的目标显示方式;根据所述目标显示方式,在所述虚拟空间内显示所述弹幕。
- 根据权利要求30所述的方法,其中,所述根据所述内容场景,确定弹幕的目标显示方式,包括:根据所述内容场景的类型,确定弹幕的目标环绕方式;或者,根据所述内容场景的类型,确定弹幕的目标环绕方式和目标层次呈现方式。
- 根据权利要求31所述的方法,其中,所述内容场景的类型包括下述至少一项:远距离场景、近距离场景、半景场景和全景场景。
- 根据权利要求31所述的方法,其中,所述目标环绕方式为横屏滚动方式、弧度环绕方式、半景环绕方式和全景环绕方式中的任一项。
- 根据权利要求32所述的方法,其中,所述根据所述内容场景的类型,确定弹幕的目标环绕方式,包括:如果所述内容场景的类型为远距离场景,则确定所述弹幕的目标环绕方式为横屏滚动方式;如果所述内容场景的类型为近距离场景,则确定所述弹幕的目标环绕方式为弧度环绕方式;如果所述内容场景的类型为半景场景,则确定所述弹幕的目标环绕方式为半景环绕方式;如果所述内容场景的类型为全景场景,则确定所述弹幕的目标环绕方式为全景环绕方式。
- 根据权利要求30-34任一项所述的方法,其中,所述弹幕的参数至少包括:弹幕轨道数量。
- 根据权利要求35所述的方法,其中,当所述弹幕轨道数量为至少两个时,所述弹幕的层次呈现方式,通过如下方式确定:在所述虚拟空间内将所述弹幕轨道进行组合,确定所述弹幕的层次呈现方式;或者,在所述虚拟空间内确定目标平面,在所述目标平面上设置所述弹幕轨道,以确定所述弹幕的层次呈现方式。
- 根据权利要求30-36任一项所述的方法,其中,所述目标层次呈现方式为往复堆叠呈现方式、倒梯呈现方式、正梯呈现方式和2D片式呈现方式中的任一项。
- 根据权利要求37所述的方法,其中,所述根据所述内容场景的类型,确定弹幕的目标环绕方式和目标层次呈现方式,包括:如果所述内容场景的类型为远距离场景,则确定所述弹幕的目标环绕方式为横屏滚动方式,以及所述弹幕的目标层次呈现方式为往复堆叠呈现方式;如果所述内容场景的类型为近距离场景,则确定所述弹幕的目标环绕方式为弧度环绕方式,以及所述弹幕的目标层次呈现方式为倒梯呈现方式;如果所述内容场景的类型为半景场景,则确定所述弹幕的目标环绕方式为半景环绕方式,以及所述弹幕的目标层次呈现方式为正梯呈现方式;如果所述内容场景的类型为全景场景,则确定所述弹幕的目标环绕方式为全景环绕方式,以及所述弹幕的目标层次呈现方式为2D片式呈现方式。
- 根据权利要求30-38任一项所述的方法,其中,所述根据所述目标显示方式,在所述虚拟空间内显示所述弹幕,包括:根据所述目标显示方式,在所述虚拟空间内的弹幕呈现区上显示弹幕。
- 根据权利要求39所述的方法,其中,所述根据所述目标显示方式,在所述虚拟空间内的弹幕呈现区上显示弹幕,包括:根据目标环绕方式,在所述虚拟空间内的弹幕呈现区上显示弹幕;或者,根据所述目标环绕方式和目标层次呈现方式,在所述虚拟空间内的弹幕呈现区上显示弹幕。
- 根据权利要求40所述的方法,其中,所述根据所述目标环绕方式和目标层次呈现方式,在所述虚拟空间内的弹幕呈现区上显示弹幕,包括:当所述弹幕呈现区包括至少两个弹幕轨道时,根据所述目标环绕方式,对每个弹幕轨道进行环绕方式调整,以及根据所述目标层次呈现方式,对每个弹幕轨道进行层次呈现方式调整;在调整后的每个弹幕轨道上显示弹幕。
- 根据权利要求40所述的方法,其中,所述根据所述目标环绕方式和目标层次呈现方式,在所述虚拟空间内的弹幕呈现区上显示弹幕,包括:当所述弹幕呈现区包括至少两个弹幕轨道时,根据所述目标环绕方式,对每个弹幕轨道上的弹幕进行环绕方式调整,以及根据所述目标层次呈现方式,对每个弹幕轨道上的弹幕进行层次呈现方式调整;在每个弹幕轨道上显示调整后的弹幕。
- 一种弹幕呈现装置,其中,配置于XR设备,所述装置包括:弹幕轨道确定模块,用于确定虚拟空间内的至少一层环绕弹幕轨道;弹幕呈现模块,用于响应于所述虚拟空间内获取的任一当前弹幕,确定所述当前弹幕在所述至少一层环绕弹幕轨道内的呈现位置,以在所述呈现位置处呈现所述当前弹幕。
- 一种弹幕显示装置,其中,所述装置包括:生成模块,用于在虚拟空间中生成至少一个环形轨道;获取模块,用于获取弹幕的显示信息,所述弹幕的显示信息包括弹幕的内容、出生 的轨道信息、在轨道上占据的空间信息和在轨道上的消失位置信息;显示模块,用于根据所述弹幕的显示信息,在所述环形轨道上显示所述弹幕,所述弹幕在所述环形轨道上移动。
- 一种弹幕显示装置,其中,包括:场景获取模块,用于获取虚拟空间的内容场景;确定模块,用于根据所述内容场景,确定弹幕的目标显示方式;显示模块,用于根据所述目标显示方式,在所述虚拟空间内显示所述弹幕。
- 一种电子设备,其中,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1-14任一项所述的弹幕呈现方法或权利要求15-42任一项所述的弹幕显示方法。
- 一种计算机可读存储介质,其上存储有计算机程序,其中,所述计算机程序被处理器执行时实现权利要求1-14任一项所述的弹幕呈现方法或权利要求15-42任一项所述的弹幕显示方法。
- 一种包含计算机程序/指令的计算机程序产品,其中,当所述计算机程序产品在电子设备上运行时,使得所述电子设备执行权利要求1-14任一项所述的弹幕呈现方法或权利要求15-42任一项所述的弹幕显示方法。
Applications Claiming Priority (6)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202211338814.7A CN117998154A (zh) | 2022-10-28 | 2022-10-28 | 一种弹幕呈现方法、装置、设备和存储介质 |
| CN202211338814.7 | 2022-10-28 | ||
| CN202310134075.8 | 2023-02-07 | ||
| CN202310125056.9A CN118474466A (zh) | 2023-02-07 | 2023-02-07 | 弹幕显示方法、装置、设备、介质和程序 |
| CN202310134075.8A CN118474467A (zh) | 2023-02-07 | 2023-02-07 | 弹幕显示方法、装置、设备和存储介质 |
| CN202310125056.9 | 2023-02-07 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2024088375A1 true WO2024088375A1 (zh) | 2024-05-02 |
Family
ID=90830105
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2023/127049 Ceased WO2024088375A1 (zh) | 2022-10-28 | 2023-10-27 | 一种弹幕呈现方法、装置、设备和存储介质 |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2024088375A1 (zh) |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20070126932A1 (en) * | 2005-12-05 | 2007-06-07 | Kiran Bhat | Systems and methods for utilizing idle display area |
| CN114257849A (zh) * | 2020-09-22 | 2022-03-29 | 华为技术有限公司 | 弹幕播放方法、相关设备及存储介质 |
| CN114374882A (zh) * | 2021-12-23 | 2022-04-19 | 咪咕文化科技有限公司 | 弹幕信息的处理方法、装置、终端及计算机可读存储介质 |
| CN115022726A (zh) * | 2022-05-09 | 2022-09-06 | 北京爱奇艺科技有限公司 | 环绕信息生成和弹幕显示方法、装置、设备及存储介质 |
-
2023
- 2023-10-27 WO PCT/CN2023/127049 patent/WO2024088375A1/zh not_active Ceased
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20070126932A1 (en) * | 2005-12-05 | 2007-06-07 | Kiran Bhat | Systems and methods for utilizing idle display area |
| CN114257849A (zh) * | 2020-09-22 | 2022-03-29 | 华为技术有限公司 | 弹幕播放方法、相关设备及存储介质 |
| CN114374882A (zh) * | 2021-12-23 | 2022-04-19 | 咪咕文化科技有限公司 | 弹幕信息的处理方法、装置、终端及计算机可读存储介质 |
| CN115022726A (zh) * | 2022-05-09 | 2022-09-06 | 北京爱奇艺科技有限公司 | 环绕信息生成和弹幕显示方法、装置、设备及存储介质 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US12524956B2 (en) | Methods for time of day adjustments for environments and environment presentation during communication sessions | |
| US10078917B1 (en) | Augmented reality simulation | |
| US11082682B2 (en) | Image processing apparatus and storage medium for deforming or moving displayed objects | |
| CN110465097A (zh) | 游戏中的角色立绘显示方法及装置、电子设备、存储介质 | |
| JP7525524B2 (ja) | 仮想コンテンツのための仮想場所の選択 | |
| CN114442872A (zh) | 一种虚拟用户界面的布局、交互方法及三维显示设备 | |
| EP4319144A1 (en) | Information processing system, information processing method, and information processing program | |
| CN114419213B (zh) | 图像处理方法、装置、设备和存储介质 | |
| US10261749B1 (en) | Audio output for panoramic images | |
| CN108027694A (zh) | 程序、记录介质、内容提供装置以及控制方法 | |
| US20240221271A1 (en) | Information processing system, information processing method, and computer program | |
| US20240185546A1 (en) | Interactive reality computing experience using multi-layer projections to create an illusion of depth | |
| US12469233B2 (en) | Video processing method and apparatus, and device, and storage medium | |
| CN116596611A (zh) | 商品对象信息展示方法及电子设备 | |
| US20230252706A1 (en) | Information processing system, information processing method, and computer program | |
| JP6684306B2 (ja) | 端末装置、動画配信装置、プログラム | |
| WO2024088375A1 (zh) | 一种弹幕呈现方法、装置、设备和存储介质 | |
| EP4592806A1 (en) | Human-computer interaction method, display method, apparatus, and device | |
| US20230334790A1 (en) | Interactive reality computing experience using optical lenticular multi-perspective simulation | |
| US20230334792A1 (en) | Interactive reality computing experience using optical lenticular multi-perspective simulation | |
| CN117194816A (zh) | 三维空间的搜索内容显示方法、ar设备和计算机可读介质 | |
| CN111145088B (zh) | 适用于观演空间的投影风格渲染方法及渲染系统 | |
| CN117998154A (zh) | 一种弹幕呈现方法、装置、设备和存储介质 | |
| CN118474466A (zh) | 弹幕显示方法、装置、设备、介质和程序 | |
| JP2021117593A (ja) | コンテンツ配信システム、コンテンツ配信方法及びコンテンツ配信プログラム |
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: 23881950 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205 DATED 04/08/2025) |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 23881950 Country of ref document: EP Kind code of ref document: A1 |