Method, apparatus, device, medium and product for presenting a three-dimensional object in an interface

CN123011106APending Publication Date: 2026-10-30BEIJING ZITIAO NETWORK TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510572981.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-04-30
Publication Date
2026-10-30

AI Technical Summary

Benefits of technology

[0008]应当理解,本内容部分中所描述的内容并非旨在限定本公开的实施例的关键特征或重要特征,也不用于限制本公开的范围。本公开的其他特征将通过以下的描述而变得容易理解。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN123011106A_ABST
    Figure CN123011106A_ABST
Patent Text Reader

Abstract

According to embodiments of the present disclosure, methods, apparatuses, devices, media, and products for presenting a three-dimensional object in an interface are provided. The method includes: in response to receiving a presentation request for presenting a three-dimensional object in an interface, adding a three-dimensional rendering layer to the interface, the three-dimensional rendering layer corresponding to a three-dimensional space; in the three-dimensional space, generating a three-dimensional visual element corresponding to a two-dimensional visual element in the interface, a three-dimensional position of the three-dimensional visual element in the three-dimensional space corresponding to a two-dimensional position of the two-dimensional visual element in the interface; adding a three-dimensional object specified by the presentation request to the three-dimensional space; and projecting the three-dimensional visual element and the three-dimensional object to the three-dimensional rendering layer.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The exemplary embodiments disclosed herein generally relate to the field of computers, and particularly to methods, apparatuses, electronic devices, computer-readable storage media, and computer program products for presenting three-dimensional objects in an interface. Background Technology

[0002] With the development of computer technology, various live streams can provide people with information, education, entertainment, and other content. During a live stream, viewers can perform various interactive actions within the live stream room. Some interactive actions can trigger the presentation of specific visual elements and objects on the live stream interface. The aim is to enrich the ways in which visual elements and objects are presented on the live stream interface. Summary of the Invention

[0003] In a first aspect of this disclosure, a method for presenting a three-dimensional object is provided. The method includes: in response to receiving a presentation request to present a three-dimensional object in an interface, adding a three-dimensional rendering layer to the interface, the three-dimensional rendering layer corresponding to a three-dimensional space; generating, in the three-dimensional space, a three-dimensional visual element corresponding to a two-dimensional visual element in the interface, the three-dimensional position of the three-dimensional visual element in the three-dimensional space corresponding to the two-dimensional position of the two-dimensional visual element in the interface; adding a three-dimensional object specified by the presentation request to the three-dimensional space; and projecting the three-dimensional visual element and the three-dimensional object onto the three-dimensional rendering layer.

[0004] In a second aspect of this disclosure, an apparatus for rendering a three-dimensional object in an interface is provided. The apparatus includes: a receiving module configured to add a three-dimensional rendering layer to the interface in response to receiving a rendering request for rendering a three-dimensional object in the interface, the three-dimensional rendering layer corresponding to a three-dimensional space; a generating module configured to generate, in the three-dimensional space, a three-dimensional visual element corresponding to a two-dimensional visual element in the interface, the three-dimensional position of the three-dimensional visual element in the three-dimensional space corresponding to the two-dimensional position of the two-dimensional visual element in the interface; an adding module configured to add a three-dimensional object specified by the rendering request to the three-dimensional space; and a rendering module configured to project the three-dimensional visual element and the three-dimensional object onto the three-dimensional rendering layer.

[0005] In a third aspect of this disclosure, an electronic device is provided. The device includes at least one processing unit; and at least one memory coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit. When executed by the at least one processing unit, the instructions cause the electronic device to perform the method of the first aspect.

[0006] In a fourth aspect of this disclosure, a computer-readable storage medium is provided. The medium stores computer instructions that, when executed by a processor, implement the method of the first aspect.

[0007] In a fifth aspect of this disclosure, a computer program product is provided. The product includes a computer program, wherein when executed by a processor, the computer program implements the method according to a first aspect of this disclosure.

[0008] It should be understood that the content described in this content section is not intended to limit the key or essential features of the embodiments of this disclosure, nor is it intended to restrict the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description. Attached Figure Description

[0009] The above and other features, advantages, and aspects of the embodiments of this disclosure will become more apparent from the accompanying drawings and the following detailed description. In the drawings, the same or similar reference numerals denote the same or similar elements, wherein:

[0010] Figure 1 A schematic diagram of an example environment in which embodiments of the present disclosure can be implemented is shown;

[0011] Figure 2 An example of a live streaming interface for a live streaming application is shown;

[0012] Figure 3 Examples of interfaces according to some embodiments of this disclosure are shown;

[0013] Figure 4 Examples of rendering three-dimensional objects according to some embodiments of this disclosure are shown;

[0014] Figures 5A to 5C Example interfaces according to some embodiments of this disclosure are shown;

[0015] Figure 6 A flowchart is shown for a method of presenting a three-dimensional object in an interface according to some embodiments of the present disclosure;

[0016] Figure 7 A schematic structural block diagram of an apparatus for presenting a three-dimensional object in an interface, according to some embodiments of the present disclosure, is shown; and

[0017] Figure 8 A block diagram of an electronic device in which one or more embodiments of the present disclosure may be implemented is shown. Detailed Implementation

[0018] Embodiments of this disclosure will now be described in more detail with reference to the accompanying drawings. While some embodiments of this disclosure are shown in the drawings, it should be understood that this disclosure can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of this disclosure. It should be understood that the accompanying drawings and embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of protection of this disclosure.

[0019] In the description of embodiments of this disclosure, the term "comprising" and similar terms should be understood as open-ended inclusion, i.e., "including but not limited to". The term "based on" should be understood as "at least partially based on". The term "one embodiment" or "the embodiment" should be understood as "at least one embodiment". The term "some embodiments" should be understood as "at least some embodiments". Other explicit and implicit definitions may also be included below.

[0020] In this document, unless explicitly stated otherwise, performing a step in response to A does not mean that the step is performed immediately after A, but may include one or more intermediate steps.

[0021] It is understood that the data involved in this technical solution (including but not limited to the data itself, the acquisition, use, storage or deletion of the data) shall comply with the requirements of relevant laws, regulations and related provisions.

[0022] It is understood that before using the technical solutions disclosed in the various embodiments of this disclosure, relevant users should be informed of the type, scope of use, and usage scenarios of the information involved in this disclosure through appropriate means in accordance with relevant laws and regulations, and authorization should be obtained from the relevant users. Among them, relevant users may include any type of rights holder, such as individuals, enterprises, and groups.

[0023] For example, in response to receiving an active request from a user, a prompt message is sent to the relevant user to clearly inform the user that the requested operation will require obtaining and using the user's information, thereby enabling the relevant user to choose whether to provide information to the software or hardware such as the electronic device, application, server, or storage medium that performs the operation of the technical solution disclosed herein based on the prompt message.

[0024] As an optional but non-restrictive implementation, in response to a user's active request, a prompt message can be sent to the user, such as a pop-up window, where the prompt message can be presented in text format. Furthermore, the pop-up window can also include a selection control allowing the user to choose "agree" or "disagree" to provide information to the electronic device.

[0025] It is understood that the above notification and user authorization process are merely illustrative and do not constitute a limitation on the implementation of this disclosure. Other methods that comply with relevant laws and regulations may also be applied to the implementation of this disclosure.

[0026] Figure 1 A schematic diagram of an example environment 100 in which embodiments of the present disclosure can be implemented is shown. In environment 100, one or more users 110-1, 110-2, 110-3, ..., 110-N can watch live streams (sometimes referred to as "live sessions") and participate in live interactive events through their respective associated terminal devices 120-1, 120-2, ..., 120-N. For ease of discussion, users 110-1, 110-2, ..., 110-N may be collectively referred to as user 110 or individually, and terminal devices 120-1, 120-2, ..., 120-N may be collectively referred to as terminal device 120 or individually.

[0027] In some embodiments, among all users 110, one or more users, such as user 110-1, can initiate a live stream through an associated terminal device 120-1. In some scenarios, the user 110-1 initiating the live stream may also be referred to as the host of the live stream session, the host user, the live streamer, or the live stream administrator. In some embodiments, all users 110 may also include at least one live stream participant, whose user identifier can be displayed on the live stream interface and can interact with the host during the live stream. The user identifier may include any appropriate information such as user avatar, user name, and user ID. In this document, at least one live stream participant (e.g., a guest) may also be referred to as at least one invited user. In some embodiments, all users 110 may also include viewer users watching the live stream, who can interact with the live stream by commenting, liking, and other similar actions.

[0028] In some embodiments, terminal device 120 may have applications capable of providing live streaming services installed, or may have access to websites capable of providing live streaming services. User 110 may operate terminal device 120 to access the corresponding application or website. Accordingly, terminal device 120 may present a corresponding live streaming interface, which may provide live streaming content, such as audio live streaming content or video live streaming content. The applications installed on terminal device 120 may be any suitable application, such as live streaming applications, shopping applications, content sharing applications (e.g., video applications primarily for video sharing, or other applications for sharing content such as audio, images, etc.). The interface provided by the application may at least include a live streaming interface.

[0029] In some embodiments, the terminal device 120 can also communicate with the server 130 via the network 132 to provide live streaming services. The server 130 can provide functions such as application or website management, configuration, and maintenance. In some embodiments, the server 130 can store data generated during the live streaming process, including live interaction data generated during live streaming interactions.

[0030] Terminal device 120 can be any type of mobile terminal, fixed terminal, or portable terminal, including mobile phones, desktop computers, laptop computers, notebook computers, netbook computers, tablet computers, media computers, multimedia tablets, personal communication system (PCS) devices, personal navigation devices, personal digital assistants (PDAs), audio / video players, digital cameras / camcorders, television receivers, radio receivers, e-book devices, gaming devices, or any combination thereof, including accessories and peripherals of these devices or any combination thereof. In some embodiments, terminal device 120 may also support any type of user-facing interface (such as "wearable" circuitry).

[0031] Server 130 can be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, content delivery networks, and big data and artificial intelligence platforms. Server 130 may include, for example, computing systems / servers such as mainframes, edge computing nodes, computing devices in a cloud environment, etc. Server 130 can provide background services for applications supporting live streaming in terminal device 120. It should be understood that the structure and function of the various elements in environment 100 are described for illustrative purposes only and do not imply any limitation on the scope of this disclosure.

[0032] As mentioned earlier, certain interactive behaviors can trigger the presentation of specific visual elements in the live streaming interface. Traditionally, terminal devices can only present visual elements in a two-dimensional format, and they typically present these elements in a fixed manner (e.g., using a fixed path). This can affect the visual experience for users watching and interacting with the live stream.

[0033] In view of this, according to embodiments of the present disclosure, an improved scheme for presenting three-dimensional objects in an interface is provided. According to this scheme, in response to receiving a presentation request for presenting a three-dimensional object in the interface, a three-dimensional rendering layer is added to the interface, the three-dimensional rendering layer corresponding to a three-dimensional space. In the three-dimensional space, three-dimensional visual elements corresponding to two-dimensional visual elements in the interface are generated, the three-dimensional position of the three-dimensional visual elements in the three-dimensional space corresponding to the two-dimensional position of the two-dimensional visual elements in the interface. A three-dimensional object specified by the presentation request is added to the three-dimensional space. The three-dimensional visual elements and the three-dimensional object are projected onto the three-dimensional rendering layer.

[0034] Therefore, a three-dimensional effect can be displayed on a two-dimensional screen, which can enrich the content of the live broadcast interface, enhance the visual effects of the live broadcast interface, and improve the visual experience for users watching and interacting with the live broadcast.

[0035] In this disclosure, "trigger" refers to one or more interactive actions performed by a user on a terminal device. Further, these interactive actions may be triggered within the same user interface / pop-up window or within different user interfaces / pop-up windows. This disclosure is not limited in this respect. In this disclosure, virtual resources, sometimes referred to as incentives, can be represented in the interface using three-dimensional objects, referring to resources or incentives that the broadcaster and at least one invited user can obtain during a live stream. Examples of virtual resources may include, but are not limited to: physical or virtual objects (e.g., gifts, etc.), coupons, points incentives, etc. Virtual resources in a live stream are typically configurable. This disclosure does not limit specific virtual resources. Terminal device 120 can acquire interactive resources of the corresponding type in response to a trigger of an acquisition control. In the context of this disclosure, the process of gifting virtual resources to the broadcaster and / or invited users can be presented with a three-dimensional visual effect.

[0036] The following description continues with reference to the accompanying drawings, illustrating some exemplary embodiments of this disclosure. The method for presenting three-dimensional objects in an interface according to this disclosure can be implemented on a terminal device 120. It should be noted that the operations performed by the terminal device 120 may specifically be performed by relevant applications installed on the terminal device 120. Some operations described with reference to the terminal device 120 may require the assistance of the server 130 to complete.

[0037] It should be understood that the interface shown in the accompanying drawings is merely an example, and various interface designs are possible in practice. The various graphic elements in the interface can have different arrangements and different visual representations, one or more elements can be omitted or replaced, and one or more other elements may also be present. The embodiments of this disclosure are not limited in this respect.

[0038] refer to Figure 2 , Figure 2An example interface 200 of a live streaming application is shown. Example interface 200 may include areas 210 and 220. Area 210 may include area 212 for presenting information about the live streamer (e.g., user 123). The live streamer's information may include, for example, the live streamer's avatar, name, number of likes, live stream title, etc. When the live stream includes the live streamer and at least one invited user, area 210 may present the user identifiers of the live streamer and at least one invited user (e.g., user A to user H shown in the figure), which may include, for example, the user's avatar and user name. Terminal device 120 may also display, associated with each user identifier, the points earned by the corresponding user in the live stream (e.g., "XXX" in the figure), which may be associated with the number of virtual resources earned, the number of likes, the interaction time, etc.

[0039] It is understood that multiple user identifiers can be presented in area 210 in any appropriate layout, such as a 3x3 grid or a circular layout. The layout can be the default or set by the live stream user. In some embodiments, the terminal device 120 can highlight the user with the highest current score or the user currently speaking in the microphone in area 210. As an example, refer to... Figure 2 If user H has the highest score, or if user H is currently speaking, terminal device 120 can highlight user H's avatar in area 210.

[0040] Area 220 may include an input box 220, through which the terminal device 120 can receive comments on the live stream and display the received comments in area 220. Area 220 may include a control 224, which, in response to a trigger on the control 224, allows the terminal device 120 to gift a certain number of virtual resources to a designated user in the live stream. The designated user can be any user among the target user and at least one invited user. Area 220 may include interactive information associated with the live stream, such as prompts for a specified type of user watching the live stream (e.g., VIP users joining the live stream), comments from viewers (e.g., comments from users 1 to 5 as shown in the figure), prompts for viewers gifting virtual resources to the streamer / invited user (e.g., viewer user A gifted XXX to user A), and likes from viewers (e.g., viewer user B liked the live stream XXX times).

[0041] Terminal device 120 may, for example, determine that it has received a request to display a 3D object in the interface in response to receiving a request to send a gift to a broadcaster user / invited user. Terminal device 120 may, for example, determine that it has received a request to send a gift to a user in response to receiving a selection of a user among the broadcaster user / invited user and receiving a trigger on control 224. It is understood that terminal device 120 may also receive a request to send a gift to a user in any other suitable manner.

[0042] Terminal device 120 can respond to a request to render a 3D object in the interface by adding a 3D rendering layer corresponding to the 3D space to the interface (i.e., the live broadcast interface). Figure 3 Example 300 of an interface according to some embodiments of the present disclosure is shown. Conventionally, the interface includes only a content layer 306 corresponding to two-dimensional controls, and the terminal device 120 can directly present various contents on the content layer 306. Alternatively, the content layer 306 can be directly regarded as the application's interface. In example 300, the terminal device 120 can add a three-dimensional rendering layer 304 to the live streaming interface. The content layer 306 can be overlaid on the three-dimensional rendering layer 304.

[0043] Terminal device 120 can generate three-dimensional visual elements in three-dimensional space that correspond to two-dimensional visual elements in the interface. The three-dimensional position of the three-dimensional visual element in three-dimensional space corresponds to the two-dimensional position of the two-dimensional visual element in the interface. The two-dimensional visual element can be a visual element of a predetermined type in the interface, which may include, for example, the avatar of the host user / invited user in the interface. Alternatively and / or additionally, the two-dimensional visual element may include other controls in the interface represented in two-dimensional format.

[0044] In some embodiments, the terminal device 120 may also update multiple three-dimensional visual elements in three-dimensional space, each corresponding to a plurality of two-dimensional visual elements, in response to a change in the number of invited users. For example, if there is one broadcaster and three invited users before the live stream, the terminal device 120 may generate four three-dimensional visual elements in three-dimensional space. If two more invited users are added after the live stream, the terminal device 120 may update the multiple three-dimensional visual elements, resulting in six three-dimensional visual elements.

[0045] In some embodiments, the terminal device 120 may also update multiple three-dimensional visual elements in three-dimensional space, each corresponding to a plurality of two-dimensional visual elements, in response to determining that multiple invited users have changed. For example, if the live stream previously included one broadcaster and three invited users (e.g., invited users A to C), the terminal device 120 may generate four three-dimensional visual elements in three-dimensional space corresponding to the broadcaster and the three invited users. If invited user A subsequently leaves the live stream and invited user D joins, the terminal device 120 may update the multiple three-dimensional visual elements, which include the four three-dimensional visual elements corresponding to the one broadcaster and the three invited users (e.g., invited users B to D).

[0046] Therefore, multiple 3D visual elements in the three-dimensional space can be updated in real time, reflecting the latest status of users involved in the live broadcast and improving the visual experience for viewers.

[0047] The terminal device 120 can also add three-dimensional objects specified by a rendering request into the three-dimensional space. The specified three-dimensional object can be a specific three-dimensional object determined by the terminal device 120 in real time from multiple three-dimensional objects based on the rendering request, a default three-dimensional object, or a historical three-dimensional object previously added by the terminal device 120, etc.

[0048] In some embodiments, terminal device 120 may, in response to receiving a presentation request, present multiple markers corresponding to multiple candidate 3D objects in the interface. Terminal device 120 may, in response to receiving a selection for any of the multiple markers, designate the candidate 3D object corresponding to that marker as a 3D object. For example, if each 3D object corresponds to a gift in a live stream, terminal device 120 may, in response to receiving a request to send a gift to the streamer / an invited user, determine that it has received a presentation request to present the 3D object in the interface.

[0049] The terminal device 120 can then present a gift selection interface, displaying multiple tags corresponding to multiple gifts on the selection interface. In response to receiving a selection of a tag, the terminal device 120 can identify the gift corresponding to the selected tag as the three-dimensional object specified in the presentation request. It is understood that since the gift is given to a specific user, the presentation request is associated with that user, and the three-dimensional object is also associated with that user.

[0050] Terminal device 120 can project 3D visual elements and 3D objects onto a 3D rendering layer to present the interface. Terminal device 120 can present visual elements and 3D objects in the interface in any appropriate manner. (Reference) Figure 4 , Figure 4 Example 400 of presenting a three-dimensional object according to some embodiments of the present disclosure is shown. Terminal device 120, for example, can... Figure 2 The user avatar in example interface 200 is projected onto a 3D rendering layer to obtain example 402 in example 400. Example 402 shows an example of a 3D rendering layer that includes multiple 3D user avatars.

[0051] In some embodiments, during the rendering of the interface, 3D visual elements and 3D objects can be projected onto a 3D rendering layer to render 2D visual elements and 3D objects in the interface. Alternatively and / or additionally, during the rendering of the interface, 3D visual elements and 3D objects can be projected onto a 3D rendering layer to render 3D visual elements and 3D objects in the interface. In this case, the 3D visual elements are projected onto the 3D rendering layer, and the 3D position of the 3D visual elements in 3D space corresponds to the 2D position of the 2D visual elements in the interface. Specifically, since 3D objects and 3D visual elements in 3D space are represented by 3D coordinates, there may be occlusion in the depth axis (e.g., z-axis) direction. If the 3D object is behind the 3D visual element, then the 2D visual element and 3D object are rendered in the interface. If the 3D object or part of the 3D object is in front of the 3D visual element, then the 3D visual element (partially occluded) and the 3D object are rendered in the interface.

[0052] In some embodiments, the terminal device 120 may also hide two-dimensional visual elements in the interface in response to receiving a rendering request. For example, the terminal device 120 may hide the user avatar in the interface. Example 404 shows an example of an interface with the user avatar hidden. As mentioned above, the interface can be overlaid on a three-dimensional rendering layer, that is, Example 404 will be overlaid on Example 402. Thus, by hiding the two-dimensional visual elements of the interface, the repeated rendering of two-dimensional and three-dimensional visual elements can be avoided, thus preventing page element clutter.

[0053] Regarding the specific method of presenting 3D objects, in some embodiments, the terminal device 120 can acquire the motion trajectory of the 3D object and move the 3D object in 3D space according to the motion trajectory. The motion trajectory of the 3D object can be preset by default, that is, the terminal device 120 can dynamically present the 3D object in the interface each time based on the 3D object with the corresponding default motion trajectory. Each 3D object can also have multiple candidate motion trajectories, and the terminal device 120 can determine (either sequentially or randomly) a motion trajectory from the multiple candidate motion trajectories each time, and dynamically present the 3D object in the interface according to the motion trajectory.

[0054] In some embodiments, the terminal device 120 can also generate the motion trajectory of a 3D object in real time. The motion trajectory can be any suitable trajectory such as a straight line, curve, or spiral. The motion trajectory can enhance the visual effect of the 3D object. In this case, the terminal device 120 can determine multiple trajectory points (i.e., points used to determine the motion trajectory), and these multiple trajectory points include at least the start and end points of the motion trajectory. The multiple trajectory points can also include other suitable points, such as inflection points, lowest points, and highest points of the motion trajectory. The terminal device 120 can generate the motion trajectory based on these multiple trajectory points.

[0055] As mentioned earlier, the interface may include multiple two-dimensional visual elements, each of which corresponds to a two-dimensional visual element in the interface. Therefore, the three-dimensional rendering layer may include multiple three-dimensional visual elements. For example, in response to receiving a selection request for a target two-dimensional visual element among the multiple two-dimensional visual elements in the interface, the terminal device 120 may determine the target three-dimensional position of the target three-dimensional visual element corresponding to the target two-dimensional visual element in three-dimensional space. For example, the terminal device 120 may determine the trajectory points of a motion trajectory based on the target three-dimensional position. For instance, the terminal device 120 may determine the endpoint of the motion trajectory based on the target three-dimensional position.

[0056] Taking a two-dimensional visual element as a user avatar as an example, the three-dimensional rendering layer can include multiple three-dimensional user avatars. For example, in response to receiving a presentation request, the terminal device 120 can determine that it has received a selection request for the user avatar corresponding to the user receiving the presentation request (i.e., the user who received the gift). The terminal device 120 can identify this user avatar as the target user avatar and can determine the trajectory points of the motion trajectory based on the target three-dimensional user avatar in the three-dimensional rendering layer.

[0057] It is understood that the terminal device 120 may determine the trajectory points using any suitable method. It is also understood that in some embodiments, the terminal device 120 may determine the motion trajectory using other suitable methods. As an example only, the terminal device 120 may determine the motion trajectory based on a predetermined algorithm, formula, or by means of a trained machine learning model. For example, a Bézier curve may be generated based on a predetermined number of trajectory points, thereby generating a smooth motion trajectory.

[0058] In some embodiments, the terminal device 120 may also present a media item associated with the 3D object in response to determining that the 3D object has reached the end of its motion trajectory; in other words, the media item may be presented when the 3D object's motion ends. The media item may include any suitable type of content such as audio, video, images, icons, and text. (See reference) Figures 5A to 5C , Figures 5A to 5CExample interfaces 500A to 500C according to some embodiments of the present disclosure are shown. Example interfaces 500A to 500C can correspond to Figure 2 In the example interface 200, area 510 can correspond to area 210 and area 520 can correspond to area 220. Taking the 3D visual element corresponding to user B as the target 3D visual element (that is, the presentation request is associated with user B) as an example, the terminal device 120 can present a prompt message 522 in area 520. The prompt message can be used to indicate which user the presentation request is associated with, that is, to indicate which user is the user who received the gift.

[0059] Terminal device 120 can, for example, determine trajectory points based on the target 3D position of the 3D visual element corresponding to user B in 3D space. Terminal device 120 can, for example, determine a motion trajectory 512 based on the trajectory points. Terminal device 120 can move the 3D object 511 according to the motion trajectory 512. It should be noted that since the motion trajectory is a motion trajectory in 3D space, the size of the 3D object 511 in the example interface 500A will be affected by the motion trajectory. That is, from the user's perspective, the size of the 3D object 511 seen by the user will change during the movement. The closer the 3D object 511 is to the user, the larger its size will be.

[0060] Terminal device 120 can respond to the 3D object being moved to the end of its trajectory by presenting an example interface 500B. Terminal device 120 can present media items associated with the 3D object 511 in the example interface 500B. For example, the media item can indicate the presentation of element 513 at the location of the 3D visual element corresponding to user B. Thus, presenting the media item can indicate which user in the live stream the presentation request corresponds to, highlighting the gift-giving effect in the live stream. It should be understood that playing media items via animation consumes fewer computing resources compared to presenting complex visual effects with 3D objects. In this way, resource consumption can be reduced while ensuring visual quality.

[0061] In some embodiments, the terminal device 120 may also determine the motion trajectory 515 shown in the example interface 500C, which may indicate that the 3D object will move around the target 3D visual element (i.e., the 3D visual element corresponding to user B). Such a motion trajectory may also highlight the target 3D visual element, indicating which user in the live stream the presentation request corresponds to.

[0062] In some embodiments, the terminal device 120 may also delete the 3D rendering layer and render 2D visual elements in the interface in response to determining that the 3D object has been moved according to the motion trajectory (i.e., the 3D object has been moved to the endpoint or the media item associated with the 3D object has been presented). The terminal device 120 may directly delete the 3D rendering layer in response to determining that the 3D object has been moved according to the motion trajectory. This can release resources in a timely manner and reduce the resource consumption required to render the 3D rendering layer for a long time.

[0063] Terminal device 120 can also maintain the rendered 3D layer in response to determining that the 3D object has moved according to the motion trajectory, and delete the 3D rendering layer in response to the rendering duration reaching a threshold duration. In this case, if terminal device 120 receives multiple rendering requests within a certain time period, terminal device 120 does not need to repeatedly add the 3D rendering layer; it can add it only once, which can reduce the resource consumption required to add the 3D rendering layer. In the case of the 3D gift described above, a list of 3D gifts can be established, and the 3D rendering layer can be maintained when the list is not empty, and deleted when the list is empty for a certain duration.

[0064] In some embodiments, to enrich the content of the interface, the terminal device 120 may also acquire visual resources associated with the three-dimensional object and present the visual resources in a resource rendering layer in the interface that is different from the three-dimensional rendering layer. This visual resource may include at least one visual resource, and the resource rendering layer may be located above or below the three-dimensional rendering layer.

[0065] Continue to refer to Figure 3 The terminal device 120 can also add a bottom rendering layer 302 and a top rendering layer 308. The bottom rendering layer 302 is the resource rendering layer located below the 3D rendering layer 304, and the top rendering layer 308 is the resource rendering layer located above the 3D rendering layer 304. It can be understood that the visual resources presented in the bottom rendering layer 302 can be considered as the background of 3D visual elements and 3D objects, while the visual resources presented in the top rendering layer 308 can be considered as the foreground of 3D visual elements and 3D objects. For example, mountains can be presented in the background, and clouds in the foreground. Thus, different content can be displayed in multiple layers, improving the stereoscopic visual effect of the interface content and enhancing the visual experience for users watching live streams and interacting with live streams.

[0066] In summary, according to the embodiments of this disclosure, a three-dimensional effect can be displayed on a two-dimensional screen, which can enrich the interface content of the live broadcast interface, enhance the visual effects of the live broadcast interface, and improve the visual effects of users watching and interacting with the live broadcast.

[0067] Figure 6A flowchart of a method 600 for presenting a three-dimensional object in an interface according to some embodiments of the present disclosure is shown. Method 600 can be implemented at a terminal device 120. Reference is made below. Figure 1 Description method 600.

[0068] In box 610, in response to receiving a rendering request to present a three-dimensional object in the interface, the terminal device 120 adds a three-dimensional rendering layer to the interface, the three-dimensional rendering layer corresponding to the three-dimensional space.

[0069] In frame 620, terminal device 120 generates a three-dimensional visual element in three-dimensional space that corresponds to the two-dimensional visual element in the interface. The three-dimensional position of the three-dimensional visual element in three-dimensional space corresponds to the two-dimensional position of the two-dimensional visual element in the interface.

[0070] In box 630, terminal device 120 adds a 3D object specified by the rendering request into the 3D space.

[0071] In frame 640, terminal device 120 projects 3D visual elements and 3D objects onto the 3D rendering layer.

[0072] In some embodiments, presenting a three-dimensional object in an interface includes: acquiring the motion trajectory of the three-dimensional object; and moving the three-dimensional object in three-dimensional space according to the motion trajectory.

[0073] In some embodiments, the two-dimensional visual element includes a plurality of two-dimensional visual elements, and obtaining the motion trajectory includes: in response to receiving a selection request for a target two-dimensional visual element among the plurality of two-dimensional visual elements, determining the target three-dimensional position of the target three-dimensional visual element corresponding to the target two-dimensional visual element in three-dimensional space; and setting the endpoint of the motion trajectory based on the target three-dimensional position.

[0074] In some embodiments, method 600 further includes: in response to determining that a three-dimensional object has reached the end of a motion trajectory, presenting a media item associated with the three-dimensional object.

[0075] In some embodiments, method 600 further includes: in response to receiving a rendering request, hiding two-dimensional visual elements in the interface; and in response to determining that the three-dimensional object has been moved according to a motion trajectory, deleting the three-dimensional rendering layer and rendering the two-dimensional visual elements in the interface.

[0076] In some embodiments, the interface is a live streaming interface, multiple two-dimensional visual elements correspond to multiple invited users in the live streaming interface, and the presentation request is a request to send a gift to one of the multiple invited users.

[0077] In some embodiments, method 600 further includes: in response to determining that the number of multiple invited users has changed, updating multiple three-dimensional visual elements in three-dimensional space that respectively correspond to multiple two-dimensional visual elements.

[0078] In some embodiments, method 600 further includes: acquiring visual resources associated with a three-dimensional object; and presenting the visual resources in a resource rendering layer in the interface that is different from the three-dimensional rendering layer.

[0079] In some embodiments, the visual resources include at least one visual resource, and the resource rendering layer is located above or below the 3D rendering layer.

[0080] In some embodiments, method 600 further includes: in response to receiving a presentation request, presenting a plurality of markers corresponding to a plurality of candidate 3D objects; and in response to receiving a selection of a marker among the plurality of markers, treating the candidate 3D object corresponding to the marker as a 3D object.

[0081] In some embodiments, projecting three-dimensional visual elements and three-dimensional objects onto a three-dimensional rendering layer includes at least one of the following: projecting three-dimensional visual elements and three-dimensional objects onto a three-dimensional rendering layer to present two-dimensional visual elements and three-dimensional objects in the interface; or projecting three-dimensional visual elements and three-dimensional objects onto a three-dimensional rendering layer to present three-dimensional visual elements and three-dimensional objects in the interface.

[0082] Embodiments of this disclosure also provide corresponding apparatus for implementing the above methods or processes. Figure 7 A schematic structural block diagram of an apparatus 700 for presenting a three-dimensional object in an interface, according to some embodiments of the present disclosure, is shown. The apparatus 700 may be implemented in or included in a terminal device 120, for example. The various modules / components in the apparatus 700 may be implemented by hardware, software, firmware, or any combination thereof.

[0083] As shown in the figure, the device 700 includes a receiving module 710 configured to add a 3D rendering layer to the interface in response to receiving a rendering request for rendering a 3D object in the interface. The 3D rendering layer corresponds to a 3D space. The device 700 also includes a generating module 720 configured to generate 3D visual elements in the 3D space corresponding to 2D visual elements in the interface. The 3D position of the 3D visual elements in the 3D space corresponds to the 2D position of the 2D visual elements in the interface. The device 700 also includes an adding module 730 configured to add the 3D object specified by the rendering request to the 3D space. The device 700 also includes a rendering module 740 configured to project the 3D visual elements and the 3D object onto the 3D rendering layer.

[0084] In some embodiments, the presentation module 740 is further configured to: acquire the motion trajectory of a three-dimensional object; and move the three-dimensional object in three-dimensional space according to the motion trajectory.

[0085] In some embodiments, the two-dimensional visual elements include a plurality of two-dimensional visual elements, and the presentation module 740 is further configured to: in response to receiving a selection request for a target two-dimensional visual element among the plurality of two-dimensional visual elements, determine the target three-dimensional position of the target three-dimensional visual element corresponding to the target two-dimensional visual element in three-dimensional space; and set the endpoint of the motion trajectory based on the target three-dimensional position.

[0086] In some embodiments, the apparatus 700 further includes a media item presentation module configured to present a media item associated with the three-dimensional object in response to determining that the three-dimensional object has reached the end of its motion trajectory.

[0087] In some embodiments, the apparatus 700 further includes: a hiding module configured to hide two-dimensional visual elements in an interface in response to receiving a rendering request; and a deleting module configured to delete a three-dimensional rendering layer and render two-dimensional visual elements in an interface in response to determining that a three-dimensional object has been moved according to a motion trajectory.

[0088] In some embodiments, the interface is a live streaming interface, multiple two-dimensional visual elements correspond to multiple invited users in the live streaming interface, and the presentation request is a request to send a gift to one of the multiple invited users.

[0089] In some embodiments, the apparatus 700 further includes an update module configured to update a plurality of three-dimensional visual elements, each corresponding to a plurality of two-dimensional visual elements, in a three-dimensional space in response to determining that the number of a plurality of invited users has changed.

[0090] In some embodiments, the apparatus 700 further includes: a resource acquisition module configured to acquire visual resources associated with a three-dimensional object; and a resource rendering module configured to render the visual resources in a resource rendering layer in the interface that is different from the three-dimensional rendering layer.

[0091] In some embodiments, the visual resources include at least one visual resource, and the resource rendering layer is located above or below the 3D rendering layer.

[0092] In some embodiments, the apparatus 700 further includes: a marker rendering module configured to render a plurality of markers corresponding to a plurality of candidate 3D objects in response to receiving a rendering request; and an object determination module configured to, in response to receiving a selection of a marker among the plurality of markers, select the candidate 3D object corresponding to the marker as a 3D object.

[0093] In some embodiments, the rendering module 740 is further configured to: project three-dimensional visual elements and three-dimensional objects onto a three-dimensional rendering layer to render two-dimensional visual elements and three-dimensional objects in the interface; or project three-dimensional visual elements and three-dimensional objects onto a three-dimensional rendering layer to render three-dimensional visual elements and three-dimensional objects in the interface.

[0094] The units and / or modules included in device 700 can be implemented in various ways, including software, hardware, firmware, or any combination thereof. In some embodiments, one or more units and / or modules can be implemented using software and / or firmware, such as machine-executable instructions stored on a storage medium. In addition to or as an alternative to machine-executable instructions, some or all of the units and / or modules in device 700 can be implemented at least partially by one or more hardware logic components. By way of example and not limitation, exemplary types of hardware logic components that can be used include field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), complex programmable logic devices (CPLDs), and so on.

[0095] It should be understood that one or more steps in the above methods can be performed by suitable electronic devices or combinations of electronic devices. Such electronic devices or combinations of electronic devices may include, for example, […]. Figure 1 Terminal device 120 and / or server 130.

[0096] Figure 8 A block diagram of an electronic device 800 in which one or more embodiments of the present disclosure may be implemented is shown. It should be understood that... Figure 8 The electronic device 800 shown is merely exemplary and should not be construed as limiting the functionality and scope of the embodiments described herein. Figure 8 The illustrated electronic device 800 may include or be implemented as Figure 1 Terminal device 120, or Figure 7 Device 700.

[0097] like Figure 8 As shown, electronic device 800 is in the form of a general-purpose electronic device. Components of electronic device 800 may include, but are not limited to, one or more processors or processing units 810, memory 820, storage device 830, one or more communication units 840, one or more input devices 850, and one or more output devices 860. Processing unit 810 may be a physical or virtual processor and is capable of performing various processes according to programs stored in memory 820. In a multiprocessor system, multiple processing units execute computer-executable instructions in parallel to improve the parallel processing capability of electronic device 800.

[0098] Electronic device 800 typically includes multiple computer storage media. Such media can be any accessible media that is accessible to electronic device 800, including but not limited to volatile and non-volatile media, removable and non-removable media. Memory 820 can be volatile memory (e.g., registers, cache, random access memory (RAM)), non-volatile memory (e.g., read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory), or some combination thereof. Storage device 830 can be removable or non-removable media and can include machine-readable media, such as flash drives, disks, or any other media that can be used to store information and / or data and can be accessed within electronic device 800.

[0099] Electronic device 800 may further include additional removable / non-removable, volatile / non-volatile storage media. Although not explicitly stated... Figure 8 As shown, disk drives for reading from or writing to removable, non-volatile disks (e.g., "floppy disks") and optical disk drives for reading from or writing to removable, non-volatile optical disks can be provided. In these cases, each drive can be connected to a bus (not shown) via one or more data media interfaces. Memory 820 may include computer program product 825 having one or more program modules configured to perform various methods or actions of various embodiments of this disclosure.

[0100] The communication unit 840 enables communication with other electronic devices via a communication medium. Additionally, the functionality of the components of the electronic device 800 can be implemented using a single computing cluster or multiple computing machines capable of communicating via communication connections. Therefore, the electronic device 800 can operate in a networked environment using logical connections to one or more other servers, network personal computers (PCs), or another network node.

[0101] Input device 850 can be one or more input devices, such as a mouse, keyboard, trackball, etc. Output device 860 can be one or more output devices, such as a monitor, speaker, printer, etc. Electronic device 800 can also communicate with one or more external devices (not shown) via communication unit 840 as needed. These external devices include storage devices, display devices, etc., and can communicate with one or more devices that enable user interaction with electronic device 800, or with any device that enables electronic device 800 to communicate with one or more other electronic devices (e.g., network card, modem, etc.). Such communication can be performed via input / output (I / O) interface (not shown).

[0102] According to an exemplary implementation of this disclosure, a computer-readable storage medium is provided that stores computer-executable instructions thereon, wherein the computer-executable instructions are executed by a processor to implement the methods described above. According to an exemplary implementation of this disclosure, a computer program product is also provided, which is tangibly stored on a non-transitory computer-readable medium and includes computer-executable instructions, which are executed by a processor to implement the methods described above.

[0103] Various aspects of this disclosure are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatuses, devices, and computer program products implemented according to this disclosure. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer-readable program instructions.

[0104] These computer-readable program instructions can be provided to a processing unit of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that, when executed by the processing unit of the computer or other programmable data processing apparatus, they create means for implementing the functions / actions specified in one or more blocks of the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium that causes a computer, programmable data processing apparatus, and / or other device to operate in a particular manner. Thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing aspects of the functions / actions specified in one or more blocks of the flowchart and / or block diagram.

[0105] Computer-readable program instructions can be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions that execute on the computer, other programmable data processing apparatus, or other device to perform the functions / actions specified in one or more boxes of a flowchart and / or block diagram.

[0106] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of an instruction, which contains one or more executable instructions for implementing the specified logical function. In some, as newer, implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, may be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions.

[0107] Various implementations of this disclosure have been described above. These descriptions are exemplary and not exhaustive, nor are they limited to the disclosed implementations. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described implementations. The terminology used herein is chosen to best explain the principles, practical applications, or improvements to technology in the market, or to enable others skilled in the art to understand the various implementations disclosed herein.

Claims

1. A method for presenting a three-dimensional object in an interface, comprising: In response to receiving a rendering request for a three-dimensional object to be rendered in the interface, a three-dimensional rendering layer is added to the interface, the three-dimensional rendering layer corresponding to a three-dimensional space; In the three-dimensional space, a three-dimensional visual element is generated that corresponds to the two-dimensional visual element in the interface, and the three-dimensional position of the three-dimensional visual element in the three-dimensional space corresponds to the two-dimensional position of the two-dimensional visual element in the interface. Add the three-dimensional object specified by the rendering request to the three-dimensional space; as well as The three-dimensional visual elements and the three-dimensional objects are projected onto the three-dimensional rendering layer.

2. The method according to claim 1, wherein presenting the three-dimensional object in the interface comprises: Obtain the motion trajectory of the three-dimensional object; as well as The three-dimensional object is moved in the three-dimensional space according to the stated trajectory.

3. The method according to claim 2, wherein the two-dimensional visual element includes a plurality of two-dimensional visual elements, and acquiring the motion trajectory includes: In response to receiving a selection request for a target two-dimensional visual element among the plurality of two-dimensional visual elements, the target three-dimensional visual element corresponding to the target two-dimensional visual element is determined in the three-dimensional space; as well as Based on the target's three-dimensional position, the endpoint of the motion trajectory is set.

4. The method of claim 3, further comprising: In response to determining that the 3D object has reached the endpoint of the motion trajectory, a media item associated with the 3D object is presented.

5. The method of claim 2, further comprising: In response to receiving the presentation request, the two-dimensional visual element is hidden in the interface; as well as In response to determining that the 3D object has been moved according to the motion trajectory, the 3D rendering layer is deleted and the 2D visual element is presented in the interface.

6. The method according to claim 3, wherein the interface is a live streaming interface, the plurality of two-dimensional visual elements respectively correspond to a plurality of invited users in the live streaming interface, and the presentation request is a request to send a gift to an invited user among the plurality of invited users.

7. The method of claim 6, further comprising: In response to the determination that the number of the plurality of invited users has changed, the plurality of three-dimensional visual elements corresponding to the plurality of two-dimensional visual elements are updated in the three-dimensional space.

8. The method of claim 1, further comprising: Obtain the visual resources associated with the three-dimensional object; as well as The visual resources are presented in a resource rendering layer that is different from the 3D rendering layer in the interface.

9. The method of claim 8, wherein the visual resource comprises at least one visual resource, and the resource rendering layer is located above or below the three-dimensional rendering layer.

10. The method of claim 1, further comprising: In response to receiving the presentation request, multiple markers corresponding to multiple candidate 3D objects are presented; as well as In response to receiving a selection of a marker from the plurality of markers, a candidate 3D object corresponding to the marker is selected as the 3D object.

11. The method of claim 1, wherein projecting the three-dimensional visual elements and the three-dimensional object onto the three-dimensional rendering layer comprises at least one of the following: The three-dimensional visual elements and the three-dimensional objects are projected onto the three-dimensional rendering layer to present the two-dimensional visual elements and the three-dimensional objects in the interface; or The three-dimensional visual elements and the three-dimensional objects are projected onto the three-dimensional rendering layer to present the three-dimensional visual elements and the three-dimensional objects in the interface.

12. An apparatus for presenting a three-dimensional object in an interface, comprising: The receiving module is configured to add a 3D rendering layer to the interface in response to receiving a rendering request for a 3D object to be rendered in the interface, the 3D rendering layer corresponding to a 3D space. The generation module is configured to generate, in the three-dimensional space, a three-dimensional visual element corresponding to a two-dimensional visual element in the interface, wherein the three-dimensional position of the three-dimensional visual element in the three-dimensional space corresponds to the two-dimensional position of the two-dimensional visual element in the interface. The module is configured to add a 3D object specified by the rendering request into the 3D space. as well as The rendering module is configured to project the 3D visual elements and the 3D objects onto the 3D rendering layer.

13. An electronic device, comprising: At least one processor; as well as At least one memory coupled to the at least one processor and storing instructions for execution by the at least one processor, the instructions causing the electronic device to perform the method according to any one of claims 1 to 11 when executed by the at least one processor.

14. A computer-readable storage medium having stored thereon computer-executable instructions that can be executed by a processor to implement the method according to any one of claims 1 to 11.

15. A computer program product comprising computer-executable instructions, wherein the computer-executable instructions, when executed by a processor, implement the method according to any one of claims 1 to 11.