Popup window generating method and apparatus, electronic device, and computer readable storage medium

The popup window generating method addresses Unreal Engine's limitations by enabling flexible display and positioning of popup windows with target models, facilitating enhanced interaction and information delivery in virtual environments.

GB2644851APending Publication Date: 2026-06-03BOE TECHNOLOGY GROUP CO LTD

Patent Information

Authority / Receiving Office
GB · GB
Patent Type
Applications
Current Assignee / Owner
BOE TECHNOLOGY GROUP CO LTD
Filing Date
2023-09-01
Publication Date
2026-06-03

AI Technical Summary

Technical Problem

Unreal Engine lacks a complete popup window system that can flexibly display content, change position, and adjust size, making it difficult to associate popup windows with target models in virtual environments.

Method used

A popup window generating method that includes acquiring a popup window instruction with target model and window body information, determining the target model from a virtual engine scene, generating a window body based on this information, and loading a display page to the window body, allowing for flexible content display associated with the target model.

Benefits of technology

Enables the generation of popup windows that can adapt to virtual engine scenes, allowing for the display of web pages and videos near target models without obstructing the scene layout, enhancing user interaction and information delivery.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

A popup window (112) generating method and apparatus (70), an electronic device (700, 800), and a computer readable storage medium. The generating method comprises: acquiring a popup window instructio
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The embodiments of the present disclosure relate to a popup window generating method and apparatus, an electronic device and a computer-readable storage medium. BACKGROUND

[0002] With development of science and technology and a growing demand for virtualization, virtual technologies have continuously advanced and improved. Virtual technologies simulate and create virtual environments, objects, or experiences through computer technologies. For example, virtual technologies such as Virtual Reality (VR), Augmented Reality (AR), virtual simulation, and virtual games have brought great fun and convenience to life.

[0003] Unreal Engine is widely used in game development, virtual reality, augmented reality, film and television production, and development of other interactive experiences. SUMMARY

[0004] At least one embodiment of the present disclosure provides a popup window generating method which comprises: acquiring a popup window instruction, in which the popup window instruction comprises target model information and window body information of a popup window; determining a target model from a scene created based on a virtual engine, according to the target model information; generating a window body according to the window body information; and loading a display page to the window body, and generating the popup window in the scene, wherein a content of the display page is associated with the target model.

[0005] For example, in the generating method provided by an embodiment of the present disclosure, a page control for displaying a page is embed into a control component of the virtual engine, and the page control is used to load the display page to the window body.

[0006] For example, in the generating method provided by an embodiment of the present disclosure, generating the window body according to the window body information comprises: determining a position of the window body according to position information of the target model in the scene; and generating the window body according to the window body information and the position of the window body.

[0007] For example, in the generating method provided by an embodiment of the present disclosure, the window body information comprises an offset of the window body relative to a first reference point of the target model and size information of the window body, determining the position of the window body according to the position information of the target model in the scene comprises: determining a position of the first reference point of the target model, and determining a target position of the window body based on the offset and the position of the first reference point; generating the window body according to the window body information and the position of the window body comprises: generating the window body according to the size information of the window body and the position of the window body.

[0008] For example, in the generating method provided by an embodiment of the present disclosure, the target model comprises a three-dimensional model, the target model is displayed on a display screen, and acquiring the first reference point of the target model comprises: generating a three-dimensional box for the three-dimensional model, wherein the three-dimensional box accommodates the three-dimensional model; mapping the three-dimensional box to a plane in which the display screen is located to obtain a two-dimensional box of the target model; and selecting a key point from a plurality of key points of the two-dimensional box as the first reference point.

[0009] For example, in the generating method provided by an embodiment of the present disclosure, mapping the three-dimensional box to the plane in which the display screen is located to obtain the two-dimensional box of the target model comprises: converting three-dimensional coordinates of a plurality of vertices of the three-dimensional box into a plurality of plane coordinates of the plane by using a mapping function in blueprint of the virtual engine, in which the plane in which the display screen is located comprises an x-direction and a y-direction; selecting a point corresponding to a minimum value in the x-direction and a minimum value in the y-direction from the plurality of plane coordinates as an upper-left vertex of the two-dimensional box; selecting a point corresponding to the minimum value in the x-direction and a maximum value in the y-direction from the plurality of plane coordinates as a lower-left vertex; selecting a point corresponding to a maximum value in the x-direction and the minimum value in the y-direction from the plurality of plane coordinates as an upper-right vertex; and selecting a point corresponding to the maximum value in the x-direction and the maximum value in the y-direction from the plurality of plane coordinates as a lower-right vertex.

[0010] For example, in the generating method provided by an embodiment of the present disclosure, the three-dimensional box is a box with smallest volume that can accommodate the three-dimensional model.

[0011] For example, in the generating method provided by an embodiment of the present disclosure, determining the target position of the window body based on the offset and the first reference point comprises: determining a position of a second reference point of the window body based on the first reference point and the offset; and determining the target position of the window body based on the second reference point.

[0012] For example, in the generating method provided by an embodiment of the present disclosure, the window body information further comprises window body area restriction information; generating the window body according to the size information of the window body and the position of the window body comprises: judging whether the window body exceeds a restricted area according to the size information of the window body and the position of the window body; and adjusting a size of the window body in response to the window body exceeding the restricted area, so as to restrict the window body within the restricted area.

[0013] For example, in the generating method provided by an embodiment of the present disclosure, the target model is displayed on the display screen, and the method further comprises: re-determining a target position of the window body of the target model in response to acquiring a triggering event for the display screen; and updating a position of the popup window on the screen in response to a change in the position of the window body.

[0014] For example, in the generating method provided by an embodiment of the present disclosure, the triggering event comprises a refresh of the display screen.

[0015] For example, in the generating method provided by an embodiment of the present disclosure, the triggering event comprises a movement of the target model, and redetermining the target position of the window body of the target model in response to acquiring the triggering event for the display screen comprises: moving the target position according to movement information of the movement in response to the target model moving in the plane in which the display screen is located.

[0016] For example, in the generating method provided by an embodiment of the present disclosure, re-determining the target position of the window body of the target model m response to acquiring the triggering event for the display screen further comprises: reestablishing a three-dimensional box for the target model in response to a rotation of the target model, and determining the target position according to the three-dimensional box for a rotated target model, or determining the target position according to a rotation angle in response to the rotation of the target model.

[0017] For example, in the generating method provided by an embodiment of the present disclosure, acquiring the popup window instruction comprises: receiving a popup window instruction from a control device in which the control device establishes a bidirectional connection with the display device, or generating the popup window instruction in response to receiving an input operation on the scene.

[0018] For example, the generating method provided by an embodiment of the present disclosure further comprises: generating a connection icon, in which the connection icon is used to indicate that the target model corresponds to the popup window.

[0019] At least one embodiment of the present disclosure provides a popup window generating apparatus which comprises: an acquisition unit, configured to acquire a popup window instruction, in which the popup window instruction comprises target model information and window body information of the popup window; a determination unit, configured to determine a target model from a scene created based on a virtual engine according to the target model information; a generation unit, configured to generate a window body according to the window body information; and a loading unit, configured to load a display page to the window body, and generate the popup window in the scene, in which a content of the display page is associated with the target model.

[0020] At least one embodiment of the present disclosure provides an electronic device which comprises a processor; and a memory comprising one or more computer program instruction; the one or more computer program instruction is stored in the memory and implements an instruction of the generating method provided by any embodiment of the present disclosure when executed by the processor.

[0021] At least one embodiment of the present disclosure provides a computer-readable storage medium storing a non-transitory computer-readable instruction, and the generation method provided by any embodiment of the present disclosure is implemented when the computer-readable instruction is executed by a processor. BRIEF DESCRIPTION OF DRAWINGS

[0022] To clearly illustrate the technical solutions of the embodiments of the present disclosure, the accompanying drawings of the embodiments will be briefly introduced below. Obviously, the drawings in the following description only relate to some embodiments of the present disclosure, and do not restrict the present disclosure.

[0023] Fig. 1A shows a flowchart of a popup window generating method provided by at least one embodiment of the present disclosure;

[0024] Fig. IB shows an application scenario diagram of a popup window generating method provided by at least one embodiment of the present disclosure;

[0025] Fig. 2A shows a method flowchart of step S30 in Fig. 1A provided by at least one embodiment of the present disclosure;

[0026] Fig. 2B shows a schematic diagram of a three-dimensional box wrapping a three-dimensional model provided by at least one embodiment of the present disclosure;

[0027] Fig. 2C shows a schematic diagram of another three-dimensional box wrapping a three-dimensional model provided by at least one embodiment of the present disclosure;

[0028] Fig. 2D shows a schematic diagram of a two-dimensional box provided by at least one embodiment of the present disclosure;

[0029] Fig. 3 shows a schematic diagram of step S32 in Fig. 2A provided by at least one embodiment of the present disclosure;

[0030] Fig. 4 shows a schematic diagram of restricting a window body to a restricted area provided by at least one embodiment of the present disclosure;

[0031] Fig. 5 shows a flowchart of another popup window generating method provided by at least one embodiment of the present disclosure;

[0032] Fig. 6A shows a system architecture diagram of a popup window generating method provided by at least one embodiment of the present disclosure;

[0033] Fig. 6B shows an application scenario diagram of generating a popup window provided by at least one embodiment of the present disclosure;

[0034] Fig. 7 A is a schematic block diagram of a popup window generating apparatus provided by some embodiments of the present disclosure;

[0035] Fig. 7B is a schematic block diagram of an electronic device provided by some embodiments of the present disclosure;

[0036] Fig. 8 shows a schematic block diagram of another electronic device provided by at least one embodiment of the present disclosure; and

[0037] Fig. 9 is a schematic diagram of a storage medium provided by some embodiments of the present disclosure. DETAILED DESCRIPTION

[0038] To make objectives, technical solutions, and advantages of the embodiments of the present disclosure clearer, the technical solutions of the embodiments of the present disclosure will be clearly and completely described below in conjunction with the accompanying drawings of the embodiments of the present disclosure. Obviously, the described embodiments are part of the embodiments of the present disclosure, rather than all the embodiments. Based on the described embodiments of the present disclosure, all other embodiments obtained by those of ordinary skill in the art without creative work shall fall within the protection scope of the present disclosure.

[0039] Unless otherwise defined, the technical terms or scientific terms used in the present disclosure shall have the ordinary meanings understood by those with general skills in the field to which the present disclosure belongs. The words such as "first" and "second" used in the present disclosure do not indicate any order, quantity, or importance, but are only used to distinguish different components. Similarly, words such as "a", "an", or "the" do not indicate a quantity limit, but indicate the existence of at least one. Words such as "include" or "comprise" mean that the element or item appearing before the word covers the element or item listed after the word and their equivalents, but does not exclude other elements or items. Words such as "connect" or "linked" are not limited to physical or mechanical connections, but may comprise electrical connections, whether direct or indirect. Words such as "upper", "lower", "left", and "right" are only used to indicate relative positional relationships, and the relative positional relationship may also change accordingly when the absolute position of the described object changes.

[0040] A popup window refers to a small window that pops up during web browsing or application use, for example, used to display a notification message, a confirmation message, or other information. In a digital twin program developed using Unreal Engine (such as a digital city and park), there is often a need to pop up a window near a certain model and display content in it.

[0041] However, Unreal Engine lacks a complete popup window system. A popup window developed using Unreal Engine's built-in UI system has a single function, which can only display a content input when setting the popup window, but cannot carry a page developed by Web, and is difficult to flexibly display a content, change a position, and adjust a size.

[0042] At least one embodiment of the present disclosure provides a popup window generating method. The popup window generating method comprises: acquiring a popup window instruction, in which the popup window instruction comprises target model information and window body information of a popup window; determining a target model from a scene created based on a virtual engine, according to the target model information; generating a window body according to the window body information; and loading a display page to the window body, and generating the popup window in the scene, in which a content of the display page is associated with the target model. The popup window generating method can generate a popup window associated with a target model in a scene created by a virtual engine, and a content of the popup window can be a loaded Web page, so that the popup window can flexibly display a content.

[0043] Fig. 1A shows a flowchart of a popup window generating method provided by at least one embodiment of the present disclosure.

[0044] As shown in Fig. 1A, the generating method comprises steps S10 to S40.

[0045] Step S10: acquiring a popup window instruction, in which the popup window instruction comprises target model information and window body information of a popup window.

[0046] Step S20: determining a target model from a scene created based on a virtual engine, according to the target model information.

[0047] Step S30: generating a window body according to the window body information.

[0048] Step S40: loading a display page to the window body, and generating the popup window in the scene, in which the content of the display page is associated with the target model.

[0049] In some embodiments of the present disclosure, the method for generating the popup window instruction is applied to a display device, for example. The display device may be, for example, a display screen for displaying a virtual scene created by using Unreal Engine. In addition to the display screen, the display device may also comprise a processor, a memory, etc. A component such as the processor, the memory and so on may be integrated into the display screen or be independent of the display screen.

[0050] Fig. IB shows an application scenario diagram of a popup window generating method provided by at least one embodiment of the present disclosure. The generating method shown in Fig. 1A will be described below in conjunction with Fig. IB.

[0051] As shown in Fig. IB, the generating method is applied to a display screen 110, and the display screen 110 displays a three-dimensional scene created based on a virtual engine. For example, the three-dimensional scene is a digital city or park. The three-dimensional scene comprises, for example, a three-dimensional model such as a residential building model of a city, a street model of a city, and so on. It is often necessary to display specific data or information of the three-dimensional model near the three-dimensional model when viewing the digital city or park, for example, displaying a total number of residents, community services, resident age data, resident work information, building age, etc. of a building near a three-dimensional model of the building.

[0052] In some embodiments of the present disclosure, the model mentioned in the present disclosure may refer to a StaticMeshObject in Unreal Engine. For example, a StaticMeshObject, referred to as a model for short, can be obtained after importing an external file in a format such as FBX, .OBJ, etc. into Unreal Engine, which makes the three-dimensional model easy to be generated and applicable to various format files.

[0053] As shown in Fig. IB, in some embodiments of the present disclosure, for example, a popup window instruction can be provided to the display screen 110 by controlling a remote control device 120, so that the display screen 110 displays a popup window 112, and a display content displayed in the popup window 112 is associated with a three-dimensional model 111. Examples of a display content in the popup window 112, such as a total number of residents, an average age, a work field, and a building age, may be information included in a loaded web page, and the popup window 112 may also load a display content such as a video.

[0054] For the step S10, the popup window instruction comprises the target model information and the window body information of the popup window. For example, the target model information may be the name or number of a target model.

[0055] In some embodiments of the present disclosure, the popup window comprises a window body and a display content in the window body. The window body information of the popup window may comprise information such as the shape, the size, and the position of the window body. The display content in the window body can be obtained by loading a web page through Webview.

[0056] For example, a popup window instruction provided to the display screen 110 by the control device 120 comprises the name of the three-dimensional model 111 and information such as the shape, size, and position of the window body of the popup window 112.

[0057] For example, the popup window instruction may comprise the following information: a name of the target model, a reference point of the target model, a window body size, an offset of the window body from the reference point, a coordinate point of a popup window restriction area. For the reference point, the offset of the window body from the reference point, and the coordinate point of the popup window restriction area, please refer to the following description.

[0058] In some embodiments of the present disclosure, for example, the control device 120 establishes a bidirectional connection with the display screen 110, such as a websocket connection, so that the popup window instruction is provided to the display screen 110 through the control device 120. Step SI0 is to receive the popup window instruction from the control device 120.

[0059] For example, the control device 120 displays the name or number of each three-dimensional model in the three-dimensional scene shown m Fig. IB in a form of a list. A user performs a click operation on the name or number of a selected three-dimensional model, so that the control device 120 provides a popup window instruction to the display screen 110.

[0060] In some embodiments of the present disclosure, window body information of a popup window corresponding to the three-dimensional model may be preset. Those skilled in the art may set the window body information in the control device 120, or embed Webview in the virtual engine to set the window body information. That is, generated popup window instruction itself carries preset window body information.

[0061] The control device 120 may be any electronic device with a communication module. For example, the control device 120 may be a mobile phone, a tablet computer, a computer, or a web side. The control device 120 may establish a connection with Unreal Engine through a network or InterProcess Communication (IPC) to provide the popup window instruction. For example, a network communication protocol Websocket is used to realize a communication method between two computer processes on the network, and it can also be used as a communication method between two processes in the same machine.

[0062] For example, the display screen 110 comprises an Unreal Engine program, and the Unreal Engine program comprises a plurality of functional modules. The plurality of functional modules may be written in a language such as a blueprint program or a C++ program, for example. The Unreal Engine program receives the popup window instruction through the blueprint program or the C++ program, and the instruction comprises the name of the target model, width and height information of the popup window, the type of a reference point of the popup window position, an offset of the popup window position from the reference point, etc.

[0063] Unreal Engine (UE) is a three-dimensional creation tool that can produce a realistic visual effect and an immersive experience.

[0064] In other embodiments of the present disclosure, step SI 0 is to generate the popup window instruction in response to receiving an input operation on the scene. That is, the user may directly perform an input operation on the display screen 110, so that the display screen 110 generates a popup window instruction according to the input operation.

[0065] For example, the popup window instruction is generated in response to the user's input operation of clicking the three-dimensional model 111 on the three-dimensional scene. The popup window instruction comprises the name of the three-dimensional model 111 and information such as the shape, size, and position of the window body of the popup window 112.

[0066] In the above example, the three-dimensional model 111 is an example of the target model.

[0067] For the step S20, for example, the target model 111 is determined from the three-dimensional scene according to the name of the target model.

[0068] For the step S30, in some embodiments of the present disclosure, for example, the window body information comprises the size of the window body, and the window body can be directly generated at any position according to the size of the window body. Or the window body information comprises the size and the position of the window body, and then the window body is generated according to the window body information.

[0069] For example, the position of the window body is determined according to position information of the target model in the scene; and the window body is generated according to the window body information and the position of the window body.

[0070] For example, an electronic device executing the popup window generating method can adaptively generate the window body. For example, the window body information comprises size information of the window body, and the electronic device adaptively generates the window body according to layout information of the scene, the position information of the target model in the scene, and the size information of the window body, so that the popup window does not block the three-dimensional model in the scene and does not affect the uniformity of the layout of the scene.

[0071] For example, first, the layout information of the scene and the position information of the target model in the scene are acquired. Then, the position of the window body is determined according to the layout information and the position information of the target model in the scene. The size of the window body is adjusted according to the layout information and the size information, and the window body is generated according to the position of the window body and the size of the window body. This embodiment can automatically determine the position of the window body according to the layout of the scene and the position of the target model in the scene, so that the appearance of the popup window does not affect the uniformity and aesthetic of the scene.

[0072] In other embodiments of the present disclosure, in addition to the size information, the window body information further comprises an offset of the window body relative to a first reference point of the target model, so that the window body is generated according to the offset and the size information.

[0073] For example, determining the position of the window body according to the position information of the target model in the scene comprises: determining the position of the first reference point of the target model; determining the target position of the window body based on the offset and the position of the first reference point; generating the window body according to the window body information and the position of the window body comprises: generating the window body according to the size information of the window body and the position of the window body. A specific description for this embodiment is referred to Fig. 2 A below.

[0074] For step S40, the display page may be preset, and a preset display page may comprise a fixed display content.

[0075] In other embodiments of the present disclosure, the display page is a web page, a video, etc., and the display content may be loaded according to a web address.

[0076] For example, in a scenario where the display page comprises a video, the video may be acquired from a video website. For example, the target model is a building, and the display page in the popup window displayed near the target model is a documentary of the building acquired from a video website.

[0077] In some embodiments of the present disclosure, for example, if the user clicks a pause button in the popup window during a playback of the above video, the video is paused at a certain frame and a pause picture is displayed, at this time, the target model (i.e., the building) may be displayed in the pause picture, and the popup window information can be further displayed if the user clicks the target model in the pause picture. In this way, more information can be further displayed.

[0078] For example, the popup window information and the video are bound to form a text log of a component; of course, before realizing such display, special processing of a video source may be required in advance, and the text log (information to be displayed in the popup window) may be stored in the cloud, or may be delivered to local through video data when the video is played on a user's local player, and in this case, the player needs to perform local decoding.

[0079] For example, a page control (such as a web browser plug-in WebView) for displaying a page is embedded in a control component (such as a UMG Widget) in Unreal Engine, so that the display page is loaded to the window body by utilizing Webview. For example, a web browser plug-in is embedded in the Unreal Engine program, and the web browser plug-in is embedded in the Unreal Engine program in a form of a library file. In a case of networking, the browser plug-in can load any web page connection on the network. In this embodiment, the web page in the popup window is used for display.

[0080] The popup window generating method can be applied to various application scenarios, such as a game scenario or a map scenario.

[0081] For example, the popup window generating method is applied to a multiplayer online game to provide more efficient online communication. For example, two players pass through a supply station (i.e., the target model) in a game scene successively. The two different players can click the supply station at different times, so that a popup window of the supply station is generated in the game scene, which is convenient for the latter player to see popup window information left by the former player, facilitating player interaction.

[0082] For another example, the popup window generating method is applied to a map application, such as an application for displaying a three-dimensional map of a shopping mall, a three-dimensional map of a parking lot, etc. For example, a user may generate a popup window instruction through an operation such as mouse sliding or clicking, so as to generate popup windows of different target models (such as a restaurant and a parking space in a three-dimensional map scene), and related information is displayed for the user to further understand, such as text display, in the popup window. Of course, the present disclosure is not limited to displaying a text in the popup window, and an image or a video, etc. may also be displayed in the popup window. Applying the popup window generating method to the map application can conveniently and efficiently assist the user in making further decisions. For example, the display text in the popup window shows information such as whether the restaurant needs to wait for a table and the waiting time, to facilitate the user to choose a restaurant for dining. For another example, the display text in the popup window shows whether the parking space is occupied, to facilitate the user to drive directly to the unoccupied parking space instead of looking for an unoccupied parking space in a garage. In some embodiments of the present disclosure, the popup window carries a web page, and the web page can play a video. In this case, the player may be in a display device (i.e., a client), but the video content comes from a network (i.e., a cloud), or the video content may also come from a memory of the display device.

[0083] In some embodiments of the present disclosure, the entire Unreal Engine is placed in a cloud, and an entire picture (comprising a video content of a popup window therein) is streamed to a client in a streaming manner. In other embodiments of the present disclosure, the Unreal Engine may also be applied to a user side.

[0084] For example, the player is located at a user's local terminal, and Unreal Engine may be located in the cloud or deployed at the user's local terminal.

[0085] Fig. 2A shows a method flowchart of step S30 in Fig. 1A provided by at least one embodiment of the present disclosure.

[0086] As shown in Fig. 2A, step S30 comprises steps S31 to S33.

[0087] Step S31: determining the position of the first reference point of the target model.

[0088] Step S32: determining the target position of the window body based on the offset and the position of the first reference point.

[0089] Step S33: generating the window body according to the size information of the window body and the position of the window body.

[0090] In this example, the window body information comprises the offset of the window body relative to the first reference point of the target model and the size information of the window body.

[0091] It should be noted that "first" and "second" in "first reference point" and "second reference point" in the embodiments of the present disclosure do not indicate a sequence or other meanings, but only distinguish the reference points of the target model and the reference points of the window body. The reference point of the target model refers to, for example, a reference point of a rectangle obtained by mapping the target model to a two-dimensional plane or a display screen. The target model comprises a plurality of key points, such as four vertices and a center point of the rectangle. The reference point of the target model is one selected from the group consisting of four vertices and the center point of the rectangle.

[0092] For example, the reference point of the target model is indicated in the popup window instruction. For example, the popup window instruction further comprises the type of the reference point of the popup window position. The types of the reference point of the popup window position are classified into top-left vertex, bottom-left vertex, top-right vertex, bottom-right vertex, and center point. For example, according to the type of the reference point of the popup window position in the popup window instruction being the top-left vertex, the reference point of the target model is a top-left vertex of the rectangle obtained by mapping the target model to the two-dimensional plane or the display screen.

[0093] The offset of the window body relative to the first reference point of the target model may be, for example, the distance that a second reference point of the window body deviates from the first reference point. The second reference point of the window body may be default, for example, the top-left vertex of the window body is default as the second reference point.

[0094] The size information of the window body may be, for example, the distance between any two adjacent key points.

[0095] For the step S31, for example, a three-dimensional box for the three-dimensional model is generated, and the three-dimensional box accommodates the three-dimensional model; the three-dimensional box is mapped to a plane where the display screen is located to obtain a two-dimensional box of the target model; and one key point is selected from a plurality of key points of the two-dimensional box as the first reference point.

[0096] First, a three-dimensional box for the three-dimensional model is generated, and then the three-dimensional box is mapped into a two-dimensional box. Both the two-dimensional box and the window body are two-dimensional graphics, which facilitates determining the position of the second reference point according to the first reference point and the offset. This method is simple and easy to implement.

[0097] In some embodiments of the present disclosure, the shape of the two-dimensional box is consistent with the shape of the window body, which facilitates the correspondence between the first reference point of the two-dimensional box and the second reference point of the window body.

[0098] In some embodiments of the present disclosure, the three-dimensional box is a box with the smallest volume that accommodates the three-dimensional model, that is, the three-dimensional box wraps the three-dimensional model. Any regular or irregular three-dimensional model can be minimally surrounded by a cuboid formed by 6 planes (two in the X-axis direction, two in the Y-axis direction, and two in the Z-axis direction), and this smallest cuboid means wrapping. Minimally wrapping can determine the approximate range of the object and find the reference point of the window body.

[0099] Fig. 2B shows a schematic diagram of a three-dimensional box wrapping a three-dimensional model provided by at least one embodiment of the present disclosure; Fig. 2C shows a schematic diagram of another three-dimensional box wrapping a three-dimensional model provided by at least one embodiment of the present disclosure.

[0100] As shown in Fig. 2B, for example, a car model 301 is the three-dimensional model in the scene 110, and the smallest cuboid wrapping the car model 301 is created as a three-dimensional box 302 of the car model 301.

[0101] As shown in Fig. 2C, for example, a three-dimensional model 011 (a cube) is a certain model object in the Unreal Engine model. It should be noted that although a cube is used as an example of the three-dimensional model in Fig. 2C, this does not restrict the present disclosure. For example, the three-dimensional model may also be the irregular car model 301 in Fig. 2B, that is, in the embodiments of the present disclosure, the model object may be of any shape. 012 represents the three-dimensional box (dashed line) of the three-dimensional model 011.

[0102] In some embodiments of the present disclosure, for example, eight vertices (such as vertex 1 to vertex 8) of the three-dimensional box and the center coordinate point of the box can be obtained and further calculated by using the method GetActorArrayBounds in blueprint of Unreal Engine. Blueprint is a visual scripting language of Unreal Engine. Code is being written when blueprint is in use, blueprint adopts a more visual method and does not require to write code, but only needs to connect blueprint nodes with different functions to realize a desired function. Assume that the coordinates of the eight vertices (vertex 01 to vertex 08) of the three-dimensional box are respectively (XI, Yl, Zl), (X2, Y2, Z2), (X3, Y3, Z3), (X4, Y4, Z4), (X5, Y5, Z5), (X6, Y6, Z6), (X7, Y7, Z7) and (X8, Y8, Z8); the coordinate of the center point is (X0, Y0, Z0). The coordinate system of the three-dimensional box is custom in Unreal Engine.

[0103] For the step S32, for example, a plurality of key points of the three-dimensional box is mapped to the plane where the display screen is located respectively, and mapping points of the plurality of key points in the plane form the two-dimensional box.

[0104] In some embodiments of the present disclosure, a mapping function in the blueprint of the virtual engine is used to convert three-dimensional coordinates of a plurality of vertices of the three-dimensional box into a plurality of plane coordinates of the plane, and the plane where the display screen is located comprises an x-direction and a y-direction; a point corresponding to a minimum value in the x-direction and a minimum value in the y-direction is selected from the plurality of plane coordinates as a top-left vertex of the two-dimensional box; a point corresponding to the minimum value in the x-direction and a maximum value in the y-direction is selected from the plurality of plane coordinates as the bottom-left vertex; a point corresponding to a maximum value in the x-direction and the minimum value in the y-direction is selected from the plurality of plane coordinates as the top-right vertex; and a point corresponding to the maximum value in the x-direction and the maximum value in the y-direction is selected from the plurality of plane coordinates as the bottom-right vertex.

[0105] For example, the three-dimensional coordinates of the three-dimensional model are converted into corresponding display screen coordinates (i.e., plane coordinates in the plane where the display screen is located) by using ProjectWorldToScreen in the blueprint. Assume that two-dimensional coordinates of the display screen corresponding to the coordinates of the eight vertex of the three-dimensional box are respectively (xl, yl), (x2, y2), (x3, y3), (x4, y4), (x5, y5), (x6, y6), (x7, / 7) and (x8, j-8); the corresponding two-dimensional coordinate of the center point is (xO, y0). Further, plane coordinates of four vertices of the screen box can be calculated, and for example, the plane coordinates take the top-left vertex of the display screen as an origin. The specific calculation method is as follows:

[0106] MIN X = MIN(xl, x2, x3, x4, x5, x6, x7, x8); MIN(xl, x2, x3, x4, x5, x6, x7, x8) represents the minimum value among xl, x2, x3, x4, x5, x6, x7 and x8.

[0107] MINY = MIN(yl, y2, y3, y4,y5, y6, yl, y8); MIN(yl,y2, y3, y4, y5, y6, yl, yS) represents the minimum value among y 1, yl, y3, y4, y5, y6, yl and y8.

[0108] MAX X = MAX(xl, x2, x3, x4, x5, x6, xl, x8); MAX(xl, xl, x3, x4, x5, x6, xl, x8) represents the maximum value among xl, x2, x3, x4, x5, x6, x7 and x8.

[0109] MAXY = MAX(yl, yl, y3, y4, y3, y6, yl, y8); MAX(yl, yl, y3, y4, y5, y6, yl, y8) represents the maximum value among y 1, yl, y3, y4, y5, y6, yl andy8.

[0110] Then, the coordinate of a top-left vertex (TopLeft) of the two-dimensional box is (MIN X, MINY): the coordinate of a bottom-left vertex (BottomLeft) of the two-dimensional box is (MIN^X, M AX Y); the coordinate of a top-right vertex (TopRight) of the two-dimensional box is (MAX X, MINY); the coordinate of a bottom-right vertex (BottomRight) of the two-dimensional box is (MAX X, MAX Y); the coordinate of a center point of the two-dimensional box is ((MAX_X - MIN_X) / 2, (MAX_Y - MIN_Y) / 2).

[0111] The rectangle formed by four of the above five vertices (TopLeft, BottomLeft, TopRight, BottomRight) is the two-dimensional box. Any of the above five vertices can be used as the reference point of the two-dimensional box, that is, the position where the popup window appears may take one selected from the group consisting of the above vertices and the center point as a reference point.

[0112] Fig. 2D shows a schematic diagram of a two-dimensional box provided by at least one embodiment of the present disclosure.

[0113] As shown in Fig. 2D, a two-dimensional box 2 is a boundary mapping of a three-dimensional box 1 on the display screen.

[0114] Five key points of the two-dimensional box 2 are respectively a top-left vertex 11, a bottom-left vertex 13, a top-right vertex 10, a bottom-right vertex 14, and a center point 12. The bottom-right vertex 14 is the reference point of the two-dimensional box.

[0115] In other embodiments of the present disclosure, step S31 may also directly determine the center point of the three-dimensional model and use the center point of the three-dimensional model as the reference point of the target model.

[0116] For the step S32, for example, the position of the second reference point of the window body is determined based on the first reference point and the offset, and the position of the window body is determined based on the second reference point. For example, m some embodiments of the present disclosure, the second reference point is a key point corresponding to the first reference point. For example, the second reference point is a bottom-right vertex of the window body if the first reference point is a bottom-right vertex of the rectangle. In other embodiments of the present disclosure, the second reference point may be independent of the first reference point, that is, the second reference point may not correspond to the first reference point. For example, the first reference point is the bottomright vertex of the rectangle, and the second reference point is a top-left vertex of the window body.

[0117] For example, the coordinate of the second reference point is determined according to the coordinate of the first reference point and the offset, and the estimated position of the window body is determined according to the second reference point. For example, if the second reference point is the top-left vertex of the window body, after determining the position of the top-left vertex of the window body, the area in a bottom-right direction of the top-left vertex is the estimated position of the window body.

[0118] For another example, positions of a plurality of key points of the window body are determined based on the second reference point and the size information.

[0119] Fig. 3 shows a schematic diagram of the step S32 in Fig. 2A provided by at least one embodiment of the present disclosure.

[0120] As shown in Fig. 3, for example, the first reference point is the bottom-right vertex 14 of the two-dimensional box 2, and the second reference point is the top-left vertex of the window body.

[0121] In this embodiment, for example, the offset refers to the displacement of the second reference point relative to the first reference point in the x-direction and y-direction respectively. That is, the displacement of the second reference point relative to the first reference point in the x-direction is DiffX; the displacement of the second reference point relative to the first reference point in the y-direction is DiffY. It should be noted that the displacement of the second reference point relative to the first reference point respectively in the x-direction and y-direction can be positive or negative. For example, in the example of Fig. 3, both the displacement DiffX and the displacement DiffY are positive; in some other embodiments, one or more of the displacement DiffX and the displacement DiffY may be negative.

[0122] For example, as shown in Fig. 3, according to a received popup window instruction, it is known that the first reference point is the bottom-right vertex 14. Assume that the coordinate of the bottom-right vertex 14 is (xO, y0), and according to the offset (DiffX, DiffY) of the popup window, the position where the top-left vertex of the window body should appear on the display screen can be calculated, that is, the position of the coordinate point A, the coordinate of the coordinate point A is (xO + DiffX, >0 + DiffY)). After determining the position of the second reference point, with the second reference point as the origin, a sum of the coordinate of the second reference point and the length of the window body is a position of the top-right vertex of the window body, and a sum of the coordinate of the second reference point and the width of the window body is a position of the bottom-left vertex of the window body, so as to obtain positions of four vertices of the window body. For example, the four vertices of the window body are the top-left vertex A, the top-right vertex B, the bottom-right vertex C, and the bottom-left vertex D.

[0123] In some embodiments of the present disclosure, for example, the offset can be default as 0. The popup window will appear at a position of a bottom-right vertex of the two-dimensional box if the bottom-right vertex of the two-dimensional box is used as the first reference point and a top-left vertex of the popup window is used as the second reference point, which can avoid blocking the target model; or the popup window will appear at the position of the top-left vertex of the two-dimensional box if the top-left vertex of the two-dimensional box is used as the first reference point and a bottom-right vertex of the popup window is used as the second reference point, which can avoid blocking the target model; the popup window will block the target model if the center point of the two-dimensional box is used as the reference point and any vertex of the popup window is used as the second reference point.

[0124] In other embodiments of the present disclosure, an appropriate offset needs to be set to prevent the popup window from blocking the target model if the center point of the two-dimensional box is used as the reference point.

[0125] Therefore, using a first vertex of the two-dimensional box as the first reference point and a second vertex in the popup window as the second reference point, where a position of the second vertex in the popup window is symmetrical to a position of the first vertex in the two-dimensional box, can avoid the popup window blocking the target model and simplify the calculation amount. For example, the first vertex is the bottom-right vertex, and the second vertex is the top-left vertex; or,the first vertex is the top-right vertex, and the second vertex is the bottom-left vertex, etc.

[0126] For the step S33, for example, the window body is generated according to the length of each side of the window body and the target position of the window body.

[0127] In some embodiments of the present disclosure, the window body information further comprises window body area restriction information, and the step S33 comprises: judging whether the window body exceeds a restricted area according to the size information of the window body and the position of the window body; and adjusting the size of the window body in response to the window body exceeding the restricted area, so as to restrict the window body within the restricted area.

[0128] This method can adjust the size of the window body in real time according to an actual situation, restrict the window body within the restricted area, and avoid the popup window exceeding the display screen or blocking other important models or data.

[0129] Fig. 4 shows a schematic diagram of restricting the window body to the restricted area provided by at least one embodiment of the present disclosure.

[0130] As shown in Fig. 4, the popup window can be restricted in a restricted area 401. Four coordinate points of the restricted area 401 are transmitted from the terminal to a model layer of Unreal Engine through the popup window instruction. Assume that the coordinates of these four coordinate points are respectively Pl (RegionXMin, RegionYMin), P2 (Region^ RegionY^Y P3 (Region^X^Max, Region^Y^Max), and P4 (RegionX^Y Region ^ that is, the minimum value of the restricted area 401 in the x-axis is Region X Min, the maximum value in the x-axis is RegionXMax, the minimum value in the y-axis is Region Y Min, and the maximum value in the y-axis is RegionYMax.

[0131] The coordinates of four vertices of the window body are compared with Region X^M RegionX^Y Region ^ and RegionY to detect whether the popup window exceeds the restricted area 401. The position of the window body is corrected if the window body exceeds the current area 401.

[0132] For example, if the position of the window body is a position A1B1C1D1, the x-coordinate of the vertex Al and the vertex DI (xO + DiffX) is less than RegionXMin, and the x-coordinate of the vertex Al and the vertex Cl is reassigned to Region ^ That is, the vertex Al is adjusted to a point Al', and a position of the vertex DI is adjusted accordingly.

[0133] The coordinate of a vertex Bl and a vertex Cl in the x-axis direction is assigned to RegionXMax if a sum of the x-coordinate (xO + DiffX) of the vertex Al and the vertex DI and the length of the window body in the x-direction (i.e., the width of the popup window) is greater than RegioriX^Y That is, the vertex Bl is adjusted to a point Bl', and a position of the vertex Cl is adjusted accordingly.

[0134] Similarly, for example,if the y-coordinate (yO + DiffY) of the vertex Al and the vertex Bl is less than RegionYMin, the y-coordinate of the vertex Al is assigned to Region Y Min, that is, yO + DiffY is revised to Region Y Min.

[0135] In the example of Fig. 4, the y-coordinate (yO + DiffY) of the vertex Al and the vertex Bl is greater than Region^Y^Min, so there is no need to adjust the y-coordinate of the vertex Al and the vertex Bl.

[0136] The y-coordinate of the vertex Cl and the vertex DI is assigned to Region Y Max if a sum of the y-coordinate (yO + DiffY) of the vertex DI and the length of the window body in the Y-direction (i.e., the height of the popup window) is greater than Region Y Max. For example, as shown in Fig. 4, the x-coordinate of the vertex DI is adjusted to RegKinX^X and the y-coordinate of the vertex DI is adjusted to RegionYMin, so that the vertex DI is finally adjusted to the position P4. Similarly, the vertex Cl is adjusted to the position P3.

[0137] As shown in Fig. 4, according to the window body area restriction information, the window body AIB1 Cl DI is finally adjusted to the window body A 1'Bl'P3P4.

[0138] As shown in Fig. 1A, in some embodiments of the present disclosure, the popup window generating method further comprises steps S50 and S60 in addition to the steps S10 to S40.

[0139] Step S50: re-determining the target position of the window body of the target model in response to acquiring a triggering event for the display screen.

[0140] Step S60: updating the position of the popup window on the screen in response to a change in the position of the window body.

[0141] This method can update the target position of the window body at any time. For example, the popup window used to display specific information of the target model also moves with the target model when the position of the target model changes, intuitively and flexibly displaying a relevant content of the target model and improving user experience.

[0142] For the step S50: the triggering event of the display screen comprises, for example, a refresh of the display screen. For example, each time the display screen is refreshed, steps S31 and S32 in Fig. 2A are utilized to re-determine the target position of the window body of the target model.

[0143] In some embodiments of the present disclosure, the triggering event comprises a movement of the target model. For example, the movement of the target model comprises a horizontal movement and a rotation. For example, the target position of the window body of the target model is re-determined when it is detected that the user performs a sliding operation on the display screen to move the target model. For another example, the target position of the window body of the target model is re-determined when it is detected that a viewing angle of the target model changes. For example, the three-dimensional scene displayed on the display screen is a digital twin of a city in reality, and the city comprises a park and a camera for collecting images of the park. Vision for collecting the park changes when a position of the camera changes, and accordingly, the three-dimensional model of the virtual park in the digital twin also shows views from different directions. At this time, it is necessary to re-determine the target position of the window body of the target model.

[0144] For example, the step S50 comprises: moving the target position according to movement information of the movement in response to the target model moving in the plane where the display screen is located.

[0145] The movement information comprises, for example, the direction and the speed of the movement.

[0146] For example, in a two-dimensional map scene or in a three-dimensional game scene, the target position is changed according to the direction and the speed of the target model if the target model only moves in the picture (i.e., a two-dimensional movement). For example, the target position moves 5mm along the x-axis direction following the target model if the target model moves 5mm along the x-axis direction of the picture, in this way, there is no need to re-establish the three-dimensional box, and a displacement of the target model is directly changed according to a displacement of the target model, which reduces consumed bandwidth resources and can acquire uniform and reasonable rich data (information provided by the window body).

[0147] For example, the step S50 further comprises: re-establishing the three-dimensional box for the target model in response to a rotation of the target model, and determining the target position according to the three-dimensional box for a rotated target model.

[0148] The three-dimensional box for the target model may change if the target model rotates. The three-dimensional box can be re-established according to the method described above, and the target position can be determined according to a re-established three-dimensional box.

[0149] In other embodiments of the present disclosure, the target position is determined according to a rotation angle in response to the rotation of the target model.

[0150] For example, a correspondence table between the rotation angle and the target position adjustment strategy may be established in advance, so that the target position adjustment strategy at the rotation angle can be determined by looking up the correspondence table. This eliminates the need to re-establish the three-dimensional box and reduces the consumed bandwidth resources.

[0151] In some embodiments of the present disclosure, the generating method shown in Fig. 1A further comprises: generating a connection icon, in which the connection icon is used to indicate that the target model corresponds to the popup window.

[0152] For example, the connection icon can be a shape or a color different from those of the target model and the popup window, such as a dashed line. For example, the connection icon is a connecting line with an arrow, the arrow points from the target model to the popup window, and the connecting line is a dashed line. The connection icon can connect the model and the popup window, enabling the user to clearly know which model in the scene the popup window is directed at, and improving user experience.

[0153] In some embodiments of the present disclosure, the popup window may be framed by a line frame, and then the target model and the line frame are connected by an arrow. Color of the line frame may be automatically selected through an intelligent algorithm. For example, the color of the line frame may be light if the target model is dark.

[0154] For the step S60: the position of the popup window is updated to the target position if the position of the window body changes. For example, the display content is loaded to the window body according to the method described above.

[0155] Fig. 5 shows a flowchart of another popup window generating method provided by at least one embodiment of the present disclosure.

[0156] As shown in Fig. 5, the method comprises steps S501 to S511. The method is applied to a display system, and the display system comprises a terminal device (for example, as the control device described above) and a display device. The display device comprises a scene created based on Unreal Engine. Step S501 is executed by the terminal device, and steps S502 to S511 are executed by the display device.

[0157] Step S501: providing a popup window instruction to the display device by a terminal.

[0158] Step S502: receiving the popup window instruction by the display device.

[0159] For example, a data packet of the popup window instruction is in JSON format. For example, the data packet is in JSON format, for example:

[0160] {

[0161] "targetName": "floor 1",

[0162] "positionType":' 'LeftTop",

[0163] "windowWidth" :0.5,

[0164] "windowHeight" ':0.2,

[0165] "xDiff" :0.1,

[0166] "yDiff':0.2

[0167] } •

[0168] The meaning of each tag in the JSON format is as shown in the following table. Field Meaning Whether mandatory targetName The name of target model Mandatory positionType The type of Reference point Not mandatory, default value is center point windowWidth The width of a window body as a percentage of screen width Mandatory windowHeight The height of a window body as a percentage of screen height Mandatory xDiff Offset percentage from a reference point in a horizontal direction Not mandatory, default is 0 yDiff Offset percentage from a reference point in a vertical direction Not mandatory, default is 0

[0169] Step S503: searching for a target model in the scene. For example, search for the target model according to the name of the target model in the popup window instruction.

[0170] Step S504: sending a prompt message that the target model is not found for example if the target model is not found.

[0171] Step S505: confirming that the target model is found.

[0172] Step S506: constructing a three-dimensional box for the target model.

[0173] Step S507: calculating a mapping coordinate of each vertex of the three-dimensional box on a two-dimensional display screen.

[0174] Step S508: calculating the mapping coordinates to obtain a two-dimensional box.

[0175] Step S509: determining a reference point of the two-dimensional box, and determining a position of a window body reference point.

[0176] Step S510: loading a display content and displaying a popup window.

[0177] Step S511: re-executing the step S509 to calculate the position of the window body reference point and re-executing the step S510, when the target model moves or a vision of viewing the target model changes (for example, a lens collecting the target model moves).

[0178] In some embodiments of the present disclosure, the two-dimensional box already determined in steps S506 to S508 can be directly utilized when the target model moves or the vision of viewing the target model changes, and there is no need to recalculate the two-dimensional box, but directly execute the step S509, which can save computing resources and responses in a fast speed.

[0179] In other embodiments of the present disclosure, the steps S506 to S510 are re-executed when the target model moves or the vision of viewing the target model changes, which can acquire an accurate position of the reference point and a more accurate calculation result.

[0180] Fig. 6A shows a system architecture diagram of a popup window generating method provided by at Iseast one embodiment of the present disclosure.

[0181] As shown in Fig. 6A, the system architecture comprises a tablet computer terminal 601 as a control terminal and an Unreal Engine program terminal 602.

[0182] In some embodiments of the present disclosure, the tablet computer terminal 601 and the Unreal Engine program terminal 602 are connected through a protocol such as http, tcp, udp, websocket or the like, so that the tablet computer terminal 601 sends a popup window instruction to the Unreal Engine program terminal 602. The Unreal Engine program terminal 602 comprises an instruction receiving module 612 for receiving the popup window instruction. For example, a user clicks a display list of the tablet computer terminal 601 to select a target model as a model P, and then the tablet computer terminal 601 provides a popup window instruction to the Unreal Engine program terminal 602 through a protocol such as http, tcp, udp, or websocket, where the name of the target model in the popup window instruction is model P. The instruction receiving module 612 of the Unreal Engine program terminal 602 receives the popup window instruction, and the Unreal Engine program terminal 602 calls Webview to generate a popup window associated with the model P.

[0183] In other embodiments of the present disclosure, the user can also directly click the model P in a three-dimensional scene displayed on the Unreal Engine program terminal 602. For example, the Unreal Engine program terminal 602 provides the popup window instruction to the instruction receiving module 612 or directly calls the instruction receiving module 612 when the user clicks the model P, so that the instruction receiving module 612 analyzes information of the popup window instruction, and then utilizes Webview to generate the popup window associated with model P.

[0184] Fig. 6B shows an application scenario diagram of generating a popup window provided by at least one embodiment of the present disclosure.

[0185] As shown in Fig. 6B, the application scenario of generating the popup window is a smart operation platform scenario. The smart operation platform deploys Unreal Engine, so that a three-dimensional model is displayed. That is, the smart operation platform is similar to the Unreal Engine program terminal in Fig. 6A. The smart operation platform can be connected to a terminal (for example, the tablet computer terminal in Fig. 6A), so as to display according to a user's operation on the terminal, that is, the terminal serves as a control terminal of the smart operation platform scenario. A user's terminal serves as the control terminal of the smart operation platform scenario, which facilitates the remote control of the smart operation platform and reduces burden on the smart operation platform.

[0186] For example, basic information of a community in the smart operation platform, comprises such as building basic information, rental and occupancy real-time monitoring data, and industry distribution.

[0187] For example, the user selects "South tower" on the terminal (i.e., the control terminal), and then a three-dimensional model 603 of "South tower" is displayed on the smart operation platform. In response to the user further selecting "South tower 3rd floor", a popup window 604 is displayed around the three-dimensional model 603 The popup window 604 presents environmental monitoring information of the South tower 3rd floor, such as temperature, humidity, carbon monoxide concentration, and carbon dioxide concentration.

[0188] It should be noted that although the popup window in Fig. 6B is shown as an example to display values, the embodiments of the present application are not limited thereto. The popup window can display functions that Webview can implement, such as videos, images and the like.

[0189] Fig. 7A is a schematic block diagram of a popup window generating apparatus provided by some embodiments of the present disclosure.

[0190] As shown in Fig. 7A, the generating apparatus 70 comprises an acquisition unit 701, a determination unit 702, a generation unit 703, and a loading unit 704.

[0191] The acquisition unit 701 is configured to acquire a popup window instruction. The popup window instruction comprises target model information and window body information of a popup window. The acquisition unit 701 executes the step S10 in Fig. 1A, for example.

[0192] The determination unit 702 is configured to determine a target model from a scene created based on a virtual engine according to the target model information. The determination unit 702 executes the step S20 in Fig. 1 A, for example. 27

[0193] The generation unit 703 is configured to generate a window body according to the window body information and the target model. The generation unit 703 executes the step S30 in Fig. 1 A, for example.

[0194] The loading unit 704 is configured to load a display page to the window body and generate the popup window in the scene, and a content of the display page is associated with the target model. The loading unit 704 executes the step S40 in Fig. 1 A, for example.

[0195] The generating apparatus 700 can generate a popup window associated with the target model in a scene created by the virtual engine, and a content of the popup window may be a loaded Web page, so that the popup window can flexibly display a content.

[0196] In some embodiments of the present disclosure, the generating apparatus 70 also executes updating the position of the popup window to a target position if the position of the window body changes.

[0197] In some embodiments of the present disclosure, the generating apparatus 70 also executes generating a connection icon, and the connection icon is used to indicate that the target model corresponds to the popup window.

[0198] For example, the connection icon may be a shape or a color different from those of the target model and the popup window, such as a dashed line. For example, the connection icon is a connecting line with an arrow, the arrow points from the target model to the popup window, and the connecting line is a dashed line. The connection icon can connect the model and the popup window, enabling a user to clearly know which model in the scene the popup window is directed at, and improving user experience.

[0199] For example, the acquisition unit 701, the determination unit 702, the generation unit 703, and the loading unit 704 may be hardware, software, firmware, or any feasible combination thereof. For example, the acquisition unit 701, the determination unit 702, the generation unit 703, and the loading unit 704 may be dedicated or general circuits, chips, or devices, or a combination of a processor and a memory. The embodiments of the present disclosure do not limit the specific implementation forms of the above units.

[0200] It should be noted that, in the embodiments of the present disclosure, each unit of the popup window generating apparatus 70 corresponds to each step of the afore-mentioned popup window generating method. For specific functions of the popup window generating apparatus 70, reference can be made to the relevant description of the popup window generating method, which will not be repeated here. The components and structure of the popup window generating apparatus 70 shown in Fig. 7A are only exemplary and not restrictive, and the popup window generating apparatus 70 may also comprise other components and structures as required.

[0201] At least one embodiment of the present disclosure also provides an electronic device which comprises a processor and a memory. The memory comprises at least one computer program module. The at least one computer program module is stored in the memory and configured to be executed by the processor. The at least one computer program module comprises an instruction for implementing the above information processing method. The electronic device can generate a popup window associated with a target model in a scene created by a virtual engine, and a content of the popup window may be a loaded Web page, so that the popup window can flexibly display a content.

[0202] Fig. 7B is a schematic block diagram of an electronic device provided by some embodiments of the present disclosure. As shown in Fig. 7B, the electronic device 700 comprises a processor 710 and a memory 720. The memory 720 is used to store a non-transitory computer-readable instruction (for example, one or more computer program modules). The processor 710 is used to run the non-transitory computer-readable instruction. One or more steps in the image processing method described above can be executed when the non-transitory computer-readable instruction is run by the processor 710. The memory 720 and the processor 710 can be interconnected through a bus system and / or other forms of connection mechanisms (not shown).

[0203] For example, the processor 710 may be a central processing unit (CPU), a graphics processing unit (GPU), or other forms of processing units with data processing capabilities and / or program execution capabilities. For example, the central processing unit (CPU) may be of X86 or ARM architecture, etc. The processor 710 may be a general processor or a dedicated processor, and may control other components in the electronic device 700 to execute a desired function.

[0204] For example, the memory 720 may comprise any combination of one or more computer program products. The computer program product may comprise various forms of computer-readable storage media, such as a volatile memory and / or a non-volatile memory. The volatile memory may comprise, for example, a random access memory (RAM) and / or a cache memory (cache), etc. A non-volatile memory may comprise, for example, a read-only memory (ROM), a hard disk, an erasable programmable read-only memory (EPROM), a 29 portable compact disk read-only memory (CD-ROM), a USB memory, a flash memory, etc. One or more computer program modules may be stored in the computer-readable storage medium, and the processor 710 may run the one or more computer program modules to implement various functions of the electronic device 700. Various application programs and various data used and / or generated by the application programs may also be stored in the computer-readable storage medium.

[0205] It should be noted that, in the embodiments of the present disclosure, the specific function and technical effect of the electronic device 700 can refer to the description of the generating method above, which will not be repeated here.

[0206] Fig. 8 shows a schematic block diagram of another electronic device provided by at least one embodiment of the present disclosure. An electronic device 800 is suitable for implementing the generating method provided by the embodiments of the present disclosure, for example. The electronic device 800 may be a terminal device or the like. It should be noted that the electronic device 800 shown in Fig. 8 is only an example, and it will not limit the functions and scope of use of the embodiments of the present disclosure.

[0207] As shown in Fig. 8, the electronic device 800 may comprise a processing apparatus (for example, a central processing unit, a graphics processor, etc.) 810, which can execute various appropriate actions and processes according to a program stored in a read-only memory (ROM) 820 or a program loaded to a random access memory (RAM) 830 from a storage apparatus 880. In the RAM 830, various programs and data required for an operation of the electronic device 800 are also stored in. The processing apparatus 810, the ROM 820, and the RAM 830 are connected to each other through a bus 840. An input / output (I / O) interface 850 is also connected to the bus 840.

[0208] Generally, the following apparatuses can be connected to the I / O interface 850: an input apparatus 860 comprising, for example, a touch screen, a touch pad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; an output apparatus 870 comprising, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; a storage apparatus 880 comprising, for example, a magnetic tape, a hard disk, etc.; and a communication apparatus 890. The communication apparatus 890 can allow the electronic device 800 to perform wireless or wired communication with other electronic devices to exchange data. Although Fig. 8 shows the electronic device 800 with various apparatuses, it should be understood that it is not required to implement or have all the shown apparatuses. The electronic device 800 can alternatively implement or have more or fewer apparatuses.

[0209] For example, according to the embodiments of the present disclosure, the above generating method can be implemented as a computer software program. For example, the embodiments of the present disclosure comprise a computer program product, which comprises a computer program carried on a non-transitory computer-readable medium, and the computer program comprises program code for executing the above generating method. In such an embodiment, the computer program can be downloaded and installed from the network through the communication apparatus 890, or installed from the storage apparatus 880, or installed from the ROM 820. The function defined in the generating method provided by the embodiments of the present disclosure can be implemented when the computer program is executed by the processing apparatus 810.

[0210] The electronic device can generate a popup window associated with a target model in a scene created by a virtual engine, and a content of the popup window can be a loaded Web page, so that the popup window can flexibly display a content.

[0211] At least one embodiment of the present disclosure also provides a computer-readable storage medium, which is used to store a non-transitory computer-readable instruction. The above generating method can be implemented when the non-transitory computer-readable instruction is executed by a computer. By utilizing the computer-readable storage medium, a popup window associated with a target model can be generated in a scene created by a virtual engine, and a content of the popup window can be a loaded Web page, so that the popup window can flexibly display a content.

[0212] Fig. 9 is a schematic diagram of a storage medium provided by some embodiments of the present disclosure. As shown in Fig. 9, the storage medium 900 is used to store a non-transitory computer-readable instruction 910. For example, one or more steps in the generating method described above can be executed when the non-transitory computer-readable instruction 910 is executed by a computer.

[0213] For example, the storage medium 900 can be applied to the electronic device 700 described above. For example, the storage medium 900 can be the memory 720 in the electronic device 700 shown in Fig. 7B. For example, the relevant description of the storage medium 900 can refer to the corresponding description of the memory 720 in the electronic device 700 shown in Fig. 7B, which will not be repeated here.

[0214] The following points need to be explained:

[0215] (1) The accompanying drawings of the embodiments of the present disclosure only relate to the structures related to the embodiments of the present disclosure, and other structures can refer to the general design.

[0216] (2) In the case of no conflict, the embodiments of the present disclosure and the features in the embodiments can be combined with each other to obtain new embodiments.

[0217] The above is only the specific implementation of the present disclosure, but the protection scope of the present disclosure is not limited thereto. The protection scope of the present disclosure shall be subject to the protection scope of the claims.

Claims

1. A popup window generating method, comprising:acquiring a popup window instruction, wherein the popup window instruction comprises target model information and window body information of a popup window;determining a target model from a scene created based on a virtual engine, according to the target model information;generating a window body according to the window body information; andloading a display page to the window body, and generating the popup window in the scene, wherein a content of the display page is associated with the target model.

2. The method according to claim 1, wherein loading the display page to the window body comprises:embedding a page control for displaying a page into a control component of the virtual engine, and using the page control to load the display page to the window body.

3. The method according to claim 1 or 2, wherein generating the window body according to the window body information comprises:determining a position of the window body according to position information of the target model in the scene; andgenerating the window body according to the window body information and the position of the window body.

4. The method according to claim 3, wherein the window body information comprises an offset of the window body relative to a first reference point of the target model and size information of the window body,determining the position of the window body according to the position information of the target model in the scene comprises:determining a position of the first reference point of the target model; anddetermining a target position of the window body based on the offset and the position of the first reference point;generating the window body according to the window body information and the position of the window body comprises:generating the window body according to the size information of the window body and the position of the window body.

5. The method according to claim 4, wherein the target model comprises a three-dimensional model, the target model is displayed on a display screen, and acquiring the first reference point of the target model comprises:generating a three-dimensional box for the three-dimensional model, wherein the three-dimensional box accommodates the three-dimensional model;mapping the three-dimensional box to a plane in which the display screen is located to obtain a two-dimensional box of the target model; andselecting a key point from a plurality of key points of the two-dimensional box as the first reference point.

6. The method according to claim 5, where mapping the three-dimensional box to the plane in which the display screen is located to obtain the two-dimensional box of the target model comprises:converting three-dimensional coordinates of a plurality of vertices of the three-dimensional box into a plurality of plane coordinates of the plane by using a mapping function in a blueprint of the virtual engine, wherein the plane in which the display screen is located comprises an x-direction and a y-direction;selecting a point corresponding to a minimum value in the x-direction and a minimum value in the y-direction from the plurality of plane coordinates as an upper-left vertex of the two-dimensional box;selecting a point corresponding to the minimum value in the x-direction and a maximum value in the y-direction from the plurality of plane coordinates as a lower-left vertex;selecting a point corresponding to a maximum value in the x-direction and the minimum value in the y-direction from the plurality of plane coordinates as an upper-right vertex; andselecting a point corresponding to the maximum value in the x-direction and the maximum value in the y-direction from the plurality of plane coordinates as a lower-right vertex.

7. The method according to claim 5 or 6, wherein the three-dimensional box is a box with smallest volume that can accommodate the three-dimensional model.

8. The method according to any one of claims 4 to 7, wherein determining the target position of the window body based on the offset and the first reference point comprises:determining a position of a second reference point of the window body based on the first reference point and the offset; anddetermining the target position of the window body based on the second reference point.

9. The method according to claim 8, wherein the window body information further comprises window body area restriction information;generating the window body according to the size information of the window body and the position of the window body comprises:judging whether the window body exceeds a restricted area according to the size information of the window body and the position of the window body; andadjusting a size of the window body in response to the window body exceeding the restricted area, so as to restrict the window body within the restricted area.

10. The method according to any one of claims 1 to 9, wherein the target model is displayed on the display screen, and the method further comprises:re-determinmg a target position of the window body of the target model in response to acquiring a triggering event for the display screen; andupdating a position of the popup window on the screen in response to a change in a position of the window body.

11. The method according to claim 10, wherein the triggering event comprises a refresh of the display screen.

12. The method according to claim 10 or 11, wherein the triggering event comprises a movement of the target model,re-determimng the target position of the window body of the target model in response to acquiring the triggering event for the display screen comprises:moving the target position according to movement information of the movement in response to the target model moving in the plane in which the display screen is located.

13. The method according to claim 12, wherein re-determining the target position of the window body of the target model in response to acquiring the triggering event for the display screen further comprises:re-establishing a three-dimensional box for the target model in response to a rotation of the target model, and determining the target position according to the three-dimensional box for a rotated target model; ordetermining the target position according to a rotation angle in response to the rotation of the target model.

14. The method according to any one of claims 1 to 13, applied to a display device, wherein acquiring the popup window instruction comprises:receiving a popup window instruction from a control device, wherein the control device establishes a bidirectional connection with the display device; orgenerating the popup window instruction in response to receiving an input operation on the scene.

15. The method according to any one of claims 1 to 14, further comprising:generating a connection icon, wherein the connection icon is used to indicate that the target model corresponds to the popup window.

16. A popup window generating apparatus, comprising:an acquisition unit, configured to acquire a popup window instruction, wherein the popup window instruction comprises target model information and window body information of a popup window;a determination unit, configured to determine a target model from a scene created based on a virtual engine according to the target model information;a generation unit, configured to generate a window body according to the window body information; anda loading unit, configured to load a display page to the window body, and generate the popup window in the scene, wherein a content of the display page is associated with the target model.

17. An electronic device, comprising:a processor; anda memory, comprising one or more computer program instruction;wherein the one or more computer program instruction is stored in the memory and implements an instruction of the generating method according to any one of claims 1 to 15 when executed by the processor.

18. A computer-readable storage medium, storing a non-transitory computer-readable instruction, wherein the computer-readable instruction implements the generating method according to any one of claims 1 to 15 when executed by a processor.